List files from Google Drive with optional shared drive access. IMPORTANT: This tool paginates. Results may be incomplete. Always check pagination.hasMore in the response — if true, you MUST call again with pageToken set to pagination.nextPageToken to get all results. Do not report results as complete without checking pagination.hasMore.
Search for files in Google Drive using query syntax. IMPORTANT: This tool paginates. Results may be incomplete. Always check pagination.hasMore in the response — if true, you MUST call again with pageToken set to pagination.nextPageToken to get all results. Do not report results as complete without checking pagination.hasMore.
Find files and folders by name and get their IDs. This tool automatically fetches ALL matching results across multiple pages — no manual pagination needed. Results are complete unless truncatedAtMax is true.
PREFERRED: Use folderName instead of folderId - no find_by_name lookup needed! List files in a Google Drive folder by name (exact match) or ID. This tool automatically fetches ALL files in the folder across multiple pages — no manual pagination needed. Results are complete unless truncatedAtMax is true.
Download a file from Google Drive and store it as an artifact. Returns a link to the stored file, metadata, and a text preview for supported types (PDF, DOCX, XLSX, PPTX). NOT for Google Docs/Sheets/Slides — those require their respective MCP servers (Google Docs MCP, Google Sheets MCP). If those connectors are not installed, recommend the user install them from the Pinkfish connections page.
Create a new Google Drive file (Docs, Sheets, Slides, etc.) from an existing template. Optionally apply text replacements for Google Docs files (e.g., {{NAME}} -> “John Doe”).
List files from Google Drive with optional shared drive access. IMPORTANT: This tool paginates. Results may be incomplete. Always check pagination.hasMore in the response — if true, you MUST call again with pageToken set to pagination.nextPageToken to get all results. Do not report results as complete without checking pagination.hasMore.Parameters:
Parameter
Type
Required
Default
Description
pageSize
string
No
25
Number of files to retrieve per page (maximum 1000)
pageToken
string
No
—
Token from a previous response to fetch the next page of results
isShared
boolean
No
false
Whether to include files from shared drives and folders
Show inputSchema
{ "type": "object", "properties": { "PCID": { "type": "string", "description": "Pink Connect ID for Google Drive Connection" }, "pageSize": { "oneOf": [ { "type": "number" }, { "type": "effects" } ], "default": 25, "description": "Number of files to retrieve per page (maximum 1000)" }, "pageToken": { "type": "string", "description": "Token from a previous response to fetch the next page of results" }, "isShared": { "type": "boolean", "default": false, "description": "Whether to include files from shared drives and folders" } }, "required": [ "PCID" ]}
Search for files in Google Drive using query syntax. IMPORTANT: This tool paginates. Results may be incomplete. Always check pagination.hasMore in the response — if true, you MUST call again with pageToken set to pagination.nextPageToken to get all results. Do not report results as complete without checking pagination.hasMore.Parameters:
Parameter
Type
Required
Default
Description
query
string
Yes
—
Query string to search for files. Can be a filename (e.g., “document.docx”) or structured query (e.g., “mimeType=application/vnd.google-apps.document”). All string values (e.g. file, folder IDs, mimeType, etc.) must be enclosed in single quotes (never double quotes) when used in the query string (e.g. ‘fileid’ or ‘folderid’).
pageToken
string
No
—
Token from a previous response to fetch the next page of results
Show inputSchema
{ "type": "object", "properties": { "PCID": { "type": "string", "description": "Pink Connect ID" }, "query": { "type": "string", "description": "Query string to search for files. Can be a filename (e.g., \"document.docx\") or structured query (e.g., \"mimeType=application/vnd.google-apps.document\").\n All string values (e.g. file, folder IDs, mimeType, etc.) must be enclosed in single quotes (never double quotes) when used in the query string (e.g. 'fileid' or 'folderid')." }, "pageToken": { "type": "string", "description": "Token from a previous response to fetch the next page of results" } }, "required": [ "PCID", "query" ]}
Find files and folders by name and get their IDs. This tool automatically fetches ALL matching results across multiple pages — no manual pagination needed. Results are complete unless truncatedAtMax is true.Parameters:
Parameter
Type
Required
Default
Description
name
string
Yes
—
Name to search for
exactMatch
boolean
No
false
If true, only returns items with exact name match. If false (default), returns partial matches.
maxResults
number
No
500
Maximum number of results to return (default 500). Increase if you need more.
mimeType
string
No
"any"
Filter by type: “folder” for folders only, “document” for Google Docs, “spreadsheet” for Google Sheets, “presentation” for Slides, “any” for all (default)
Show inputSchema
{ "type": "object", "properties": { "PCID": { "type": "string", "description": "Pink Connect ID" }, "name": { "type": "string", "description": "Name to search for" }, "exactMatch": { "type": "boolean", "default": false, "description": "If true, only returns items with exact name match. If false (default), returns partial matches." }, "maxResults": { "type": "number", "default": 500, "description": "Maximum number of results to return (default 500). Increase if you need more." }, "mimeType": { "type": "string", "enum": [ "folder", "document", "spreadsheet", "presentation", "any" ], "default": "any", "description": "Filter by type: \"folder\" for folders only, \"document\" for Google Docs, \"spreadsheet\" for Google Sheets, \"presentation\" for Slides, \"any\" for all (default)" } }, "required": [ "PCID", "name" ]}
PREFERRED: Use folderName instead of folderId - no find_by_name lookup needed! List files in a Google Drive folder by name (exact match) or ID. This tool automatically fetches ALL files in the folder across multiple pages — no manual pagination needed. Results are complete unless truncatedAtMax is true.Parameters:
Parameter
Type
Required
Default
Description
folderId
string
No
—
Google Drive folder ID to list files from. Use this if you already have the ID.
folderName
string
No
—
Folder name to find and list files from (exact match, uses first result). Simpler than folderId - no need to call find_by_name first.
maxResults
number
No
500
Maximum number of files to return (default 500). Increase if you need more.
Show inputSchema
{ "type": "object", "properties": { "PCID": { "type": "string", "description": "Pink Connect ID for Google Drive Connection" }, "folderId": { "type": "string", "description": "Google Drive folder ID to list files from. Use this if you already have the ID." }, "folderName": { "type": "string", "description": "Folder name to find and list files from (exact match, uses first result). Simpler than folderId - no need to call find_by_name first." }, "maxResults": { "type": "number", "default": 500, "description": "Maximum number of files to return (default 500). Increase if you need more." } }, "required": [ "PCID" ]}
Download a file from Google Drive and store it as an artifact. Returns a link to the stored file, metadata, and a text preview for supported types (PDF, DOCX, XLSX, PPTX). NOT for Google Docs/Sheets/Slides — those require their respective MCP servers (Google Docs MCP, Google Sheets MCP). If those connectors are not installed, recommend the user install them from the Pinkfish connections page.Parameters:
Parameter
Type
Required
Default
Description
fileId
string
Yes
—
Google Drive file ID to download
stream
boolean
No
true
RECOMMENDED: true (default). Returns downloadUrl + auth headers for streaming. Set to false only for small files (<2MB) requiring immediate base64 content.
filename
string
No
—
Custom filename for the downloaded file
extractText
boolean
No
true
Automatically extracts text from supported formats (PDF, DOCX, PPTX, XLSX) and includes it in the response. Text files do not need extraction. Set to false to skip extraction.
Show inputSchema
{ "type": "object", "properties": { "PCID": { "type": "string", "description": "Pink Connect ID" }, "fileId": { "type": "string", "description": "Google Drive file ID to download" }, "stream": { "type": "boolean", "default": true, "description": "RECOMMENDED: true (default). Returns downloadUrl + auth headers for streaming. Set to false only for small files (<2MB) requiring immediate base64 content." }, "filename": { "type": "string", "description": "Custom filename for the downloaded file" }, "extractText": { "type": "boolean", "default": true, "description": "Automatically extracts text from supported formats (PDF, DOCX, PPTX, XLSX) and includes it in the response. Text files do not need extraction. Set to false to skip extraction." } }, "required": [ "PCID", "fileId" ]}
Name for the copied file (if not specified, uses original name with “Copy of” prefix)
parentId
string
No
—
ID of the folder where the copy should be placed
Show inputSchema
{ "type": "object", "properties": { "PCID": { "type": "string", "description": "Pink Connect ID" }, "fileId": { "type": "string", "description": "ID of the file to copy" }, "name": { "type": "string", "description": "Name for the copied file (if not specified, uses original name with \"Copy of\" prefix)" }, "parentId": { "type": "string", "description": "ID of the folder where the copy should be placed" } }, "required": [ "PCID", "fileId" ]}
Create a new Google Drive file (Docs, Sheets, Slides, etc.) from an existing template. Optionally apply text replacements for Google Docs files (e.g., {{NAME}} -> “John Doe”).Parameters:
Parameter
Type
Required
Default
Description
templateId
string
Yes
—
File ID of the template to copy
newTitle
string
Yes
—
Title for the new file
replacements
object
No
—
Key-value pairs for text replacements (Google Docs only). Example: {“{{NAME}}”: “John Doe”, “{{DATE}}”: “2024-01-15”}
parentFolderId
string
No
—
Folder ID to create the file in (default: Drive root)
Show inputSchema
{ "type": "object", "properties": { "PCID": { "type": "string", "description": "Pink Connect ID" }, "templateId": { "type": "string", "description": "File ID of the template to copy" }, "newTitle": { "type": "string", "description": "Title for the new file" }, "replacements": { "type": "object", "additionalProperties": true, "description": "Key-value pairs for text replacements (Google Docs only). Example: {\"{{NAME}}\": \"John Doe\", \"{{DATE}}\": \"2024-01-15\"}" }, "parentFolderId": { "type": "string", "description": "Folder ID to create the file in (default: Drive root)" } }, "required": [ "PCID", "templateId", "newTitle" ]}
{ "type": "object", "properties": { "PCID": { "type": "string", "description": "Pink Connect ID" }, "fileId": { "type": "string", "description": "ID of the file to update" }, "name": { "type": "string", "description": "New name for the file" }, "description": { "type": "string", "description": "New description for the file" }, "starred": { "type": "boolean", "description": "Whether to star or unstar the file" } }, "required": [ "PCID", "fileId" ]}
Poll Google Drive for new or removed items. Can monitor entire Drive or a specific file/folder URL.Parameters:
Parameter
Type
Required
Default
Description
eventTypes
string[]
No
["new_item","item_removed"]
Event types to monitor. “new_item” for new files/folders added, “item_removed” for files/folders deleted or trashed. Defaults to both if not specified.