使用说明
Google Drive命令行界面和MCP服务器
通过两个共享的界面读取对Google云端硬盘、文档和表格的访问权限
一个实现:a gdrive 命令行界面 (主表面,为外壳而建
管道和人工智能代理)和 MCP服务器 (stdio)。两者都通过以下方式进行身份验证
OAuth2和调用成为传输无关 core/ 层。
需要 Node.js>=24.
该项目包括最初由Anthropic,PBC开发的代码,根据MIT许可证从 此回购,以及来自的额外工作 isaacphi/mcp gdrive.
命令行界面
构建(npm run build),然后调用 node dist/bin/gdrive.js <command>.对于a
赤裸的 gdrive 命令,符号链接 dist/bin/gdrive.js 进入您的任何目录
路径。每个命令都接受一个驱动器文件ID或谷歌URL。
gdrive search <query> [--type docs|sheets] [--page-size N] [--page-token TOKEN]
gdrive meta <fileId|url>
gdrive docs read <fileId|url> [--section "Heading"] [--json] [--no-images]
gdrive docs headings <fileId|url> [--min N] [--max N]
gdrive docs comments <fileId|url> [--include-resolved]
gdrive docs create --name "Title" [--from FILE] (or pipe markdown on stdin)
gdrive docs update <fileId|url> [--from FILE] (or pipe markdown on stdin)
gdrive sheets read <fileId|url> [--range A1:B10] [--csv|--tsv|--json]
gdrive files read <fileId|url>
docs create/update 通过Drive的原生转换器导入Markdown。更新
是 全身更换:文本和结构(标题、列表、表格、,
链接)转换,但确实如此 不 保留嵌入图像或锚定
评论。本地图像参考()在进口前被剥离
(他们使Drive的进口商失败);保留并嵌入公共图像URL。
内容被写入 标准输出 所以你可以用管道或重定向它;结构化的
输出可通过以下方式获得 --json,以及辅助注释(例如嵌入的图像
清单)转到stderr。交互式终端拒绝二进制内容--
重定向它(gdrive files read <id> > out.pdf).使用以下命令运行任何命令
--help 为了它的旗帜。
示例:
gdrive docs read <id> > prd.md # whole doc as Markdown
gdrive docs read <id> --section "2. Context" # just one section
gdrive sheets read <id> --range "'Sheet2'!A1:C9" --tsv
gdrive search "quarterly" --type docs
MCP组件
工具
-
gdrive_search
- 描述:在Google Drive中搜索文件。
- 输入:
query(string):搜索查询。pageToken(字符串,可选):下一页结果的标记。pageSize(数字,可选):每页结果数(最多100个)。
- 输出:默认情况下返回带文件元数据的结构化JSON。集
MCP_GDRIVE_OUTPUT_FORMAT=text返回纯文本列表。
-
gdrive_read_file
- 描述:从Google云端硬盘读取文件内容的便利工具(保留传统行为)。
- 输入:
fileId(string):要读取的文件的ID。url(字符串,可选):带标题锚点的Google Docs/Drive URL(用于节提取)。sectionHeading(字符串,可选):提取章节的标题文本。
- 输出:默认情况下返回带文件元数据和内容的结构化JSON,或返回带
MCP_GDRIVE_OUTPUT_FORMAT=text.
-
gdrive_parse_link
- 描述:解析Google Docs URL并提取标识符。
- 输入:
url(string):要解析的Google文档URL。
- 输出:退货
fileId,可选headingId,以及docType.
-
gdrive_get-metadata
- 描述:获取Google文档的文件元数据和可选标题。
- 输入:
fileId(string):要检查的文件的ID。includeHeadings(布尔值,可选):当文件是谷歌文档时,包括标题。
- 输出:返回文件元数据,可选
docType,以及可选标题列表。
-
gdrive_list_标题
- 描述:列出Google文档的标题。
- 输入:
fileId(string):要检查的Google文档的ID。minLevel(数字,可选):要包括的最低标题级别(例如。,2对于H2+)。maxLevel(数字,可选):要包括的最大航向级别(例如。,3高达H3)。
- 输出:返回标题列表(带级别)和文件元数据。
-
gdrive_read_content
- 描述:按模式显式读取内容(
full或section). - 输入:
fileId(string):要读取的文件的ID。mode(字符串,可选):full(默认)或section.sectionHeading(字符串,可选):当mode="section".
- 输出:返回文件元数据和内容,或在请求时返回特定部分。
- 描述:按模式显式读取内容(
-
gdrive_下载
- 描述:将内容下载到本地文件,返回本地分页的字节偏移量。
- 输入:
fileId(string):要读取的文件的ID。mode(字符串,可选):full(默认)或section.sectionHeading(字符串,可选):当mode="section".destinationPath(字符串,可选):下载的输出路径或目录。chunkSizeBytes(number,可选):偏移量的块大小(以字节为单位)。
- 输出:返回本地分页的文件元数据、下载路径和字节偏移量。
下载目录
默认下载目录可以通过以下方式配置 GDRIVE_DOWNLOAD_DIR。如果未设置,下载将转到:
~/.mcp-gdrive/downloads
输出格式
工具输出格式通过环境变量全局配置:
MCP_GDRIVE_OUTPUT_FORMAT=json # default
MCP_GDRIVE_OUTPUT_FORMAT=text
代理工作流(文档链接)
- 解析 链接与
gdrive_parse_link得到fileId和headingId. - 列表标题 和
gdrive_list_headings(使用gdrive_get_metadata用于文件元数据)。 - 阅读 和
gdrive_read_content使用mode="section"按标题(避免大文档的完整阅读)。
提示
服务器公开提示模板,以指导代理完成常见的工作流程:
outline_doc(参数:url,可选minLevel,maxLevel)read_section_by_heading(参数:url,sectionHeading)
表格
MCP服务器通过通用读取工具将电子表格读取为CSV。对于
range和tab-aware读取(Sheets值API),使用CLI
gdrive sheets read写入操作(创建/更新文档或表格)包括
这两种表面都没有实现。
资源
服务器当前未公开任何 gdrive:/// 资源。访问驱动器
通过工具获取内容。
设置
三步,约3分钟。你从不编辑 .env --从以下位置读取凭据
你从谷歌下载的文件。
1.安装
git clone https://github.com/abanka27/mcp-google-drive.git
cd mcp-google-drive
npm install # builds automatically (requires Node >= 24)
2.获取谷歌凭据(一次性,约2分钟)
每个人都需要自己的OAuth客户端——凭据不能共享。点击 通过这些确切的页面:
- 创建或选择项目: https://console.cloud.google.com/projectcreate
- 启用三个API --点击 启用 在每个:
- 开车https://console.cloud.google.com/apis/library/drive.googleapis.com
- 文件--https://console.cloud.google.com/apis/library/docs.googleapis.com
- 床单--https://console.cloud.google.com/apis/library/sheets.googleapis.com
- OAuth同意屏幕: https://console.cloud.google.com/apis/credentials/consent 挑选 内部的 如果你的账户提供它 外部 应用程序中 “测试”登录每7天过期一次——将自己添加为测试用户,或 发表)
- 创建凭据→ OAuth 客户端ID,应用程序类型 桌面应用程序: https://console.cloud.google.com/apis/credentials/oauthclient
- 下载JSON。 你只需要一个文件。
3.运行安装程序
npm run setup
这将查找您刚刚下载的文件(在当前目录或
~/Downloads),存储它,打开浏览器登录一次,并链接
gdrive 在你的路径上。如果找不到文件,请显式传递路径:
node dist/bin/gdrive.js setup ~/Downloads/client_secret_XXXX.json
完成--试试看:
gdrive search "" --page-size 3
凭据和保存的令牌实时存在 ~/.config/mcp-gdrive
($XDG_CONFIG_HOME/mcp-gdrive),或设置 GDRIVE_CREDS_DIR 以覆盖。这
浏览器提示仅在首次运行时出现;之后,令牌刷新
默默地。
与AI代理一起使用(Claude Code技能)
此回购提供了一项技能 .claude/skills/gdrive/ 它教导代理人
命令以及何时伸手去拿。当您运行Claude时,它会自动加载
此仓库内的代码。要从任何目录使用它,请将其复制到您的用户中
技能:
cp -r .claude/skills/gdrive ~/.claude/skills/gdrive
然后让你的代理人阅读、搜索或更新谷歌文档/表格,它会
驾驶 gdrive 为你。
许可证
此MCP服务器根据MIT许可证获得许可。这意味着您可以根据MIT许可证的条款和条件自由使用、修改和分发软件。有关更多详细信息,请参阅项目存储库中的LICENSE文件。