Google Drive
by Google Drive
Google's own remote MCP server for Drive. Search files, read documents, inspect sharing, and upload new files from an AI assistant. 8 tools, 6 read-only, none annotated destructive, and nothing that overwrites an existing file.
Verified connector
Listed by Anthropic as a partner connector in its Connectors Directory.
Connection checked by Agentman on .
Anthropic states this reflects the level of review a connector received, not a security audit.
Connect Google Drive via MCP
https://drivemcp.googleapis.com/mcp/v1Works in any MCP-compatible client. In Agentman Studio it is one click — no config file to edit.
Google Drive Tools & Capabilities (8)
Call this tool to copy an existing File in Google Drive. The tool allows specifying a new title and a parent folder for the copy. If the title is not specified, the copy title will be 'Copy of {original title}'If the parent folder is not specified, the copy will be created in the same folder as the original file, unless the requesting user does not have write access to that folder, in which case the copy will be created in the user's root folder.Returns the newly created File object upon successful copying.
Call this tool to create or upload a File to Google Drive. If uploading content, prefer "text_content" for text content. For non-UTF8 contents, use the "base64_content" field and base64 encode the data to set on that field. Returns a single File object upon successful creation. The following Google first-party mime types can be created without providing content: - `application/vnd.google-apps.document` - `application/vnd.google-apps.spreadsheet` - `application/vnd.google-apps.presentation` Folders can be created by setting the mime type to `application/vnd.google-apps.folder`. When uploading content, the `content_mime_type` field is required and should match the type of the content being uploaded. By default, supported content will be converted to Google first-party mime types. To disable conversions for first-party mime types, set `disable_conversion_to_google_type` to true.
Call this tool to download the content of a Drive file as a base64 encoded string. If the file is a Google Drive first-party mime type, the `exportMimeType` field is required and will determine the format of the downloaded file. If the file is not found, try using other tools like `search_files` to find the file the user is requesting. If the user wants a natural language representation of their Drive content, use the `read_file_content` tool (`read_file_content` should be smaller and easier to parse).
Call this tool to find general metadata about a user's Drive file. If the file is not found, try using other tools like `search_files` to find the file the user is requesting.
Call this tool to list the permissions of a Drive File.
Call this tool to find recent files for a user specified a sort order. Default sort order is `recency`. Supported sort orders are: - `recency`: The most recent timestamp from the file's date-time fields. - `lastModified`: The last time the file was modified by anyone. - `lastModifiedByMe`: The last time the file was modified by the user. The default page size is 10. Utilize `next_page_token` to paginate through the results.
Call this tool to fetch a natural language representation of a known Drive file, and if specified, its comments. REQUIREMENTS & WORKFLOW: - `fileId` is required. You MUST pass an exact Drive file ID returned by a previous discovery tool (`search_files` or `list_recent_files`) or provided explicitly in the user prompt. - NEVER guess, invent, or hallucinate a `fileId` string from a file title or name. - If given a file title, name, or topic without an explicit `fileId`, you MUST FIRST call `search_files` to find the file and retrieve its `fileId` before invoking this tool. The file content may be incomplete for very large files. The text representation will change over time, so don't make assumptions about the particular format of the text returned by this tool. If supported and specified, comment tags will be included in the content. Supported Mime Types: - `application/vnd.google-apps.document` (supports comments) - `application/vnd.google-apps.presentation` (supports comments) - `application/vnd.google-apps.spreadsheet` (supports comments) - `application/pdf` - `application/msword` - `application/vnd.openxmlformats-officedocument.wordprocessingml.document` - `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet` - `application/vnd.openxmlformats-officedocument.presentationml.presentation` - `application/vnd.oasis.opendocument.spreadsheet` - `application/vnd.oasis.opendocument.presentation` - `application/x-vnd.oasis.opendocument.text` - `image/png` - `image/jpeg` - `image/jpg` If the file is not found, try using other tools like `search_files` to find the file the user is requesting using keywords.
Search for Drive files using a structured query (syntax: `query_term operator values`). Only terms in this list are supported. Combine clauses with `and`, `or`, `not`, and parentheses. String values must be single-quoted; escape embedded quotes as `\'`. Do NOT include document type terms (e.g., 'presentation', 'slides', 'deck', 'document', 'doc', 'spreadsheet', 'sheet', 'pdf', 'folder') inside `title contains '...'` or `fullText contains '...'` clauses. Separate title keywords from file type terms. Instead map them to `mimeType` clauses in the query (e.g., 'slides' -> `mimeType = 'application/vnd.google-apps.presentation'`). Query terms & operators: - `title` (ops: contains, =, !=) — file title - `fullText` (ops: contains) — title or body text - `mimeType` (ops: contains, =, !=) — MIME type - `modifiedTime`, `viewedByMeTime`, `createdTime` (ops: `<=`, `<`, `=`, `!=`, `>`, `>=`). Use RFC 3339 UTC, e.g., `2012-06-04T12:00:00-08:00`. Date types not comparable. - `parentId` (ops: `=`, `!=`). Use `'root'` for the user's "My Drive". - `owner` (ops: `=`, `!=`). Use `'me'` for the requesting user. - `sharedWithMe` (ops: `=`, `!=`). Values: `true` or `false`. Other operators: `and`, `or`, `not`. Examples: - `title contains 'hello' and title contains 'goodbye'` - `modifiedTime > '2024-01-01T00:00:00Z' and (mimeType contains 'image/' or mimeType contains 'video/')` - `parentId = '1234567'` - `fullText contains 'hello'` - `owner = 'test@example.org'` - `sharedWithMe = true` - `owner = 'me'` (for files owned by the user) Use `next_page_token` to paginate. An empty response means no more results.
Read from the server on 2026-08-18, including each tool's own safety annotations.
Limits
- The risk here is exfiltration, not destruction. Nothing on this server deletes, overwrites, renames, moves or unshares. What it does do is read full document text, comment threads, content snippets and the email addresses of everyone a file is shared with. Scope your review of this connector to where that data goes, not to what might break.
get_file_permissionsreturns third-party personal data. Google's reference page states the response carries each grantee'semailAddressanddisplayName. A read-only annotation says the call changes nothing; it does not say the output is harmless in a log, a prompt or a summary.- Content snippets are on by default.
search_files,list_recent_filesandget_file_metadataall return a generatedcontentSnippetunless you setexcludeContentSnippets: true. An agent that never sets it sees fragments of file contents on every listing call, which is the permissive end of a parameter that is really an access control. drive.readonlyis a restricted, whole-Drive scope. Google's own classification, and its own description is "View and download all your Drive files". There is no per-folder or per-shared-drive narrowing anywhere in the flow. You grant read of everything or you do not connect.- The server advertises the full
drivescope; the docs never ask for it. The RFC 9728 descriptor at/.well-known/oauth-protected-resource/mcp/v1listsdrive,drive.readonlyanddrive.file, while both Google setup pages name only the latter two. Grant the documented pair — no tool on this surface modifies an existing file, so nothing needs the full scope. - Both writing tools are
idempotentHint: false. A retry after a client-side timeout creates a second file. Nothing is overwritten, so nothing is lost, but an agent framework's default retry-on-timeout will leave duplicates and no tool on this server can clean them up. read_file_contentmay silently return partial content, in an unstable format. Its own schema says content may be incomplete for very large files, with no documented threshold and no truncation flag in the response, so an assistant cannot tell a whole document from most of one. The same schema states the text representation will change over time. Do not build parsing on it.- A file created in a shared folder inherits that folder's sharing.
create_filetakes aparentIdand nothing on the server reports or changes a folder's permissions before writing into it. Adding a file is not the same as adding it privately. - Three directory-listed tools are not callable.
share_file,trash_fileandupdate_fileappear in Anthropic's listing and are corroborated as real names by the server's own per-tool descriptor, yet none is returned bytools/listand none has a Google reference page. If a shared or trashed file matters to your workflow, this connector does not do it today. - Prompt injection is Google's own stated risk, not ours. Google's Workspace MCP security page states that MCP clients have access to powerful tools and APIs enabling them to "read, modify, and delete data in your Google Account", warns about indirect prompt injection from untrusted data, and requires you to screen prompts and responses using its Model Armor service or a documented equivalent. On a connector whose input is document text written by other people, that warning is load-bearing — even though this particular tool surface cannot itself delete anything.
- This is a Developer Preview. Every Google page cited here carries the Google Workspace Developer Preview Program banner. Preview features can change or be withdrawn.
- We never read a Drive. Our verification was an anonymous
tools/list, which returns tool definitions and no file content. We additionally called one zero-argument read-only tool with no credential to confirm the gate; it returned HTTP 401 with a missing-credential message and no data. No authenticated call was made, no file was read or created, and no permission was inspected.
Frequently asked questions
Is any Google Drive MCP tool annotated destructive?
No. A live tools/list on 2026-08-18 returned 8 tools and every one carries destructiveHint false. Six are read-only and idempotent; two write, and both only add. That is the opposite of Google's Gmail MCP server, where 8 of 21 tools are annotated destructive, and it follows from what the two writing tools do.
Can the Google Drive MCP server overwrite or delete my files?
No tool on the live server can. The complete union of inputs across all 8 tools contains no fileId on either writing tool, so create_file and copy_file cannot target an existing file. There is no delete, no trash, no rename and no move. The worst outcome is clutter: duplicate files you did not intend.
What is the difference between read_file_content and download_file_content?
read_file_content returns a natural language text rendering of a document and can inline its comment threads. download_file_content returns the raw bytes as a base64 string, and needs an exportMimeType for Google native formats. Google's own schema tells the model to prefer read_file_content because the result is smaller and easier to parse.
Does get_file_permissions expose other people's email addresses?
Yes. Google's reference page for the tool states the response lists each permission's role, type, emailAddress and displayName. So one read-only call about a shared file returns the addresses and names of the colleagues, contractors or external parties who can open it. Treat its output as third-party personal data, not file metadata.
Which OAuth scopes does the Google Drive MCP server need?
Google's setup pages name two: drive.readonly and drive.file. Google classifies drive.readonly as a restricted scope meaning view and download all your Drive files, with no per-folder narrowing. The server's own RFC 9728 descriptor additionally advertises the full drive scope, which Google's setup instructions never ask you to add.
Why does Anthropic's directory list 11 Google Drive tools when 8 are live?
The three extras are share_file, trash_file and update_file. They are not fabrications: the server's per-tool OAuth descriptor answers HTTP 200 for all three while a made-up name returns 404, so the server knows them. They are simply not exposed by tools/list at this endpoint, and Google documents no reference page for any of them.
Why do only the two writing tools carry openWorldHint true?
Because create_file and copy_file are the only tools whose result is not determined by your Drive alone. Both can trigger Google's server-side conversion into Docs, Sheets or Slides format, and copy_file relocates to your root folder when you lack write access to the original parent. The six reads query fixed state and are annotated false.
Sources
- Configure the Google Drive MCP server (retrieved 2026-08-18, HTTP 200, zero redirects). Source for the two OAuth scopes, the Google Cloud project and API-enablement prerequisites, the OAuth client type and redirect URIs, the Claude plan requirement, the eight documented tool names, the test prompt, the OAuth-log troubleshooting step, and the Developer Preview banner · retrieved 2026-08-18
- MCP Reference:
drivemcp.googleapis.com(retrieved 2026-08-18, HTTP 200; page last updated 2026-07-16). Source for the single-toolset structure and the eight-tool reference list, matching the live handshake name-for-name · retrieved 2026-08-18 - Google's per-tool MCP reference pages under
https://developers.google.com/workspace/drive/api/reference/mcp/tools_list/(retrieved 2026-08-18). All eight documented tools returned HTTP 200 and each publishes that tool's annotations and authorisation scopes, every one matching the live handshake. Source for theget_file_permissionsresponse fields (role,type,emailAddress,displayName) and theread_file_contentMIME list.share_file,trash_fileandupdate_fileeach returned HTTP 404 at the same path pattern · retrieved 2026-08-18 - Configure the Google Workspace MCP servers (retrieved 2026-08-18, HTTP 200; page last updated 2026-08-12). Independently confirms the same two Drive scopes, the
drivemcp.googleapis.com/mcp/v1endpoint alongside seven sibling Workspace MCP servers, and the Claude plan requirement · retrieved 2026-08-18 - Configure security for Google Workspace MCP servers (retrieved 2026-08-18, HTTP 200; page last updated 2026-08-11). Source for the prompt-injection warning, the statement that MCP clients can read, modify and delete data in a Google Account, and the Model Armor requirement · retrieved 2026-08-18
- Choose Google Drive API scopes (retrieved 2026-08-18, HTTP 200). Source for Google's own descriptions and sensitivity classifications:
driveanddrive.readonlyrestricted,drive.fileanddrive.appdatanon-sensitive · retrieved 2026-08-18 - Live
tools/listhandshake againsthttps://drivemcp.googleapis.com/mcp/v1— 8 tools with descriptions, JSON Schemas and safety annotations (2026-08-18, HTTP 200, noWWW-Authenticateheader). Source for every tool name, annotation state, parameter and default quoted above. · retrieved 2026-08-18 - Live
initializeagainst the same endpoint (2026-08-18, HTTP 200) — protocol2025-06-18,serverInfoStatelessServerversionESF. As on Gmail, those name Google's shared API-serving frontend rather than the product, so they are not evidence about which service answered · retrieved 2026-08-18 - Live unauthenticated
tools/callof the zero-argument read-only toollist_recent_files(2026-08-18) — HTTP 401,WWW-Authenticate: Bearernaming a per-toolresource_metadataURL, and a JSON-RPCresultcarryingisError: truewith "Request is missing required authentication credential. Expected OAuth 2 access token" and no data. This is what setsauthVerified: the server demonstrated the gate rather than a document asserting it · retrieved 2026-08-18 - RFC 9728 descriptor —
https://drivemcp.googleapis.com/.well-known/oauth-protected-resource/mcp/v1(HTTP 200 on 2026-08-18), authorization serverhttps://accounts.google.com/, bearer methodheader, scopesdrive,drive.readonly,drive.file. The root and/mcp/-prefixed forms both returned HTTP 404, and.well-known/mcp/server-card.jsonreturned HTTP 404 · retrieved 2026-08-18 - Per-tool descriptor enumeration under
https://drivemcp.googleapis.com/.well-known/oauth-protected-resource/(2026-08-18). All eight live names plusshare_file,trash_fileandupdate_filereturned HTTP 200 with per-tool scopes;delete_fileand a deliberately invented control name each returned HTTP 404. These are unauthenticated GETs that call nothing · retrieved 2026-08-18 - Anthropic Connectors Directory entry (from the 2026-08-16 directory snapshot; partner tier, productivity and data categories,
https://drivemcp.googleapis.com/mcp/v1endpoint, streamable-http transport,auth_requiredposture, Google as author, and 11 tool names against 8 live) · retrieved 2026-08-16 https://developers.google.com/robots.txt(retrieved 2026-08-18, HTTP 200) —User-agent: *with a singleDisallow: /youtube/partner/, and noContent-Signalline of any kind. Every documentation path cited above is permitted.https://developers.google.com/llms.txtreturns HTTP 404 · retrieved 2026-08-18- Google Privacy Policy (HTTP 200 on 2026-08-18). Retrieved, but it is Google's general account-wide policy with no MCP-specific or connector-specific section, so nothing is cited from it · retrieved 2026-08-18
Use in Agentman
Connect once and your agents call these tools on their own — on a schedule, in a workflow, with nobody at the keyboard.
Open in Agentman StudioServer Info
- Category
- Productivity
- Developer
- Google Drive
- Tools
- 8
- Domain
- drivemcp.googleapis.com
Using Claude Desktop or another MCP client? Setup docs — the connection URL above works anywhere.