Skip to main content
Glama
pedrohzwang

Google Drive MCP Server

by pedrohzwang

Google Drive MCP Server

This is a simple MCP server that integrates with Google Drive.

Prerequisites

  1. Node.js: Version 18 or higher is recommended (the current environment is using 16, so you might need to upgrade for full compatibility).

  2. Google Cloud Project:

    • Go to the Google Cloud Console.

    • Create a project.

    • Enable the Google Drive API.

    • Create a Service Account and download the JSON key file.

  3. Authentication:

    • Set the environment variable GOOGLE_APPLICATION_CREDENTIALS to the path of your JSON key file.

    • Alternatively, share the folder/files you want to access with the service account's email address.

Related MCP server: Google Drive MCP Server

Configuration for Claude Desktop

Add the following to your Claude Desktop configuration file:

Windows: %APPDATA%\Claude\claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "google-drive": {
      "command": "node",
      "args": [
        "c:/git/projects/drive-mcp-connect/build/index.js"
      ],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "C:/path/to/your/service-account-key.json"
      }
    }
  }
}

Tools Provided

  • list_files: List files in your Google Drive.

  • get_file_info: Get metadata for a specific file by its ID.

Available Tools

2 tools
get_file_infoB

Get detailed information about a specific file by ID

ParametersJSON Schema
NameRequiredDescriptionDefault
fileIdYesThe ID of the file

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves information, implying a read-only operation, but doesn't cover critical aspects like permissions required, rate limits, response format, or whether it's idempotent. This leaves significant gaps for an agent to understand how to use it safely and effectively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with zero waste—it states the action, resource, and key input concisely. It's front-loaded with the core purpose, making it easy for an agent to parse quickly without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'detailed information' includes, error scenarios, or behavioral traits like idempotency. For a tool with no structured support, the description should provide more context to guide the agent effectively, but it falls short.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the parameter 'fileId' fully documented in the schema. The description adds no additional meaning beyond implying it's used to fetch details, which the schema already covers. This meets the baseline score of 3, as the schema handles the parameter documentation adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get detailed information') and resource ('about a specific file by ID'), making the purpose immediately understandable. It distinguishes from the sibling 'list_files' by focusing on single-file details rather than listing multiple files. However, it doesn't specify what 'detailed information' includes, keeping it from a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when you need file details for a known file ID, contrasting with 'list_files' for browsing. However, it lacks explicit guidance on when to use this tool versus alternatives, prerequisites like authentication, or error handling for invalid IDs. The context is clear but not comprehensive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_filesC

List files from Google Drive

ParametersJSON Schema
NameRequiredDescriptionDefault
pageSizeNoNumber of files to return (max 100)
qNoGoogle Drive search query (e.g., "name contains 'Meeting'")

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While 'List files' implies a read-only operation, it doesn't specify whether this requires authentication, what happens with large result sets (pagination behavior), rate limits, or what the output format looks like. The description is too minimal for a tool that likely returns structured data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just 5 words, with zero wasted language. It's front-loaded with the core functionality and uses straightforward terminology. Every word earns its place in conveying the essential purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what kind of file information is returned, how results are structured, whether authentication is required, or how to handle pagination. The agent would struggle to use this tool effectively without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, providing good documentation for both parameters. The description adds no additional parameter information beyond what's already in the schema, so it meets the baseline for high schema coverage but doesn't enhance understanding of parameter usage or relationships.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List') and resource ('files from Google Drive'), making the tool's purpose immediately understandable. However, it doesn't differentiate from the sibling tool 'get_file_info', which appears to retrieve details about a specific file rather than listing multiple files.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like the sibling 'get_file_info'. There's no mention of prerequisites, typical use cases, or limitations that would help an agent decide between listing files and getting individual file information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv1.0.0
    • First observedget_file_info
    • First observedlist_files

TDQS

B3.1/5.0
Disambiguation5/5

The two tools have clearly distinct purposes: get_file_info retrieves detailed metadata for a specific file by ID, while list_files enumerates files from Google Drive. There is no overlap in functionality, making it easy for an agent to choose the correct tool based on whether it needs information about a single file or a list of files.

Naming Consistency5/5

Both tools follow a consistent verb_noun naming pattern (get_file_info and list_files), using snake_case and clear, descriptive verbs. This consistency makes the tool set predictable and easy to understand at a glance.

Tool Count2/5

With only two tools, this server feels severely under-scoped for a Google Drive integration. Basic operations like uploading, updating, deleting, or searching files are missing, which limits the server's utility and suggests an incomplete implementation for the domain.

Completeness1/5

The tool set is severely incomplete for a Google Drive server. It lacks essential CRUD operations (e.g., upload_file, update_file, delete_file), search capabilities, folder management, and sharing functions. Agents will face dead ends when trying to perform common Drive tasks beyond listing and getting file info.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • The Google Compute Engine MCP server is a fully-managed Model Context Protocol server that provides tools to manage Google Compute Engine resources through AI agents. It enables capabilities including instance management (creating, starting, stopping, resetting, listing), disk management, handling instance templates and group managers, viewing machine and accelerator types, managing images, and accessing reservation and commitment information. The server operates as a zero-deployment, enterprise-grade endpoint at https://compute.googleapis.com/mcp with built-in IAM-based security.

  • An MCP server that provides read access to your cloud storage providers, bank accounts and more.

  • The Google GKE MCP server is a managed Model Context Protocol server that provides AI applications with tools to manage Google Kubernetes Engine (GKE) clusters and Kubernetes resources. It exposes a structured, discoverable interface that allows AI agents to interact with GKE and Kubernetes APIs, enabling them to inspect cluster configurations, retrieve Kubernetes resource YAMLs, monitor operations like cluster upgrades, diagnose issues, and optimize costs—all without needing to parse text output or use complex kubectl commands.

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pedrohzwang/drive-mcp-connect'

If you have feedback or need assistance with the MCP directory API, please join our Discord server