Google Drive MCP服务

Google Drive MCP Server是一个无状态服务器,集成了Google Drive功能与模型上下文协议(MCP),提供文件管理、内容检索和权限处理等操作的标准接口。

  • by rishipradeep-think41
  • JavaScript
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 rishipradeep-think41/google-drive-mcp

使用说明

Google Drive MCP服务器

Google Drive MCP Server是一个无状态服务器,它将Google Drive功能与模型上下文协议(MCP)集成在一起。它提供了一套与Google Drive交互的工具和资源,通过标准化的界面实现了文件管理、内容检索和权限处理等操作。

🚀 特性

  • 根目录: 使用以下命令列出顶级位置,如“我的驱动器”和“与我共享” drive_roots.
  • 文件夹浏览: 列出任何文件夹的内容 drive_folder_children.
  • 文件元数据: 使用以下命令检索文件的详细元数据 drive_file_metadata.
  • 文件导出: 使用以下命令检索原始文件内容 drive_file_content (注意:没有内置格式转换)。
  • 文件上传: 使用创建或更新包含内容的文件 drive_upload.
  • 文本附加: 使用将纯文本附加到现有文本文件 drive_append_text.
  • 文件删除和回收站: 将文件移动到垃圾箱或使用永久删除 drive_delete 和 drive_file_empty_trash.
  • 权限管理: 通过添加、更新、删除或列出文件/文件夹的权限 drive_share, drive_permission_update, drive_permission_delete等等。
  • 评论和回复: 使用以下工具添加评论、回复评论、列出/删除评论或回复 drive_comment, drive_file_list_comments以及相关工具。
  • 变更跟踪: 使用跟踪用户驱动器中的更改 drive_changes.
  • 文件搜索: 使用按名称或其他条件搜索文件 drive_search.

🛠️ 安装

  1. 克隆存储库:

    git clone [https://github.com/rishipradeep-think41/google-drive-mcp.git](https://github.com/rishipradeep-think41/google-drive-mcp.git)
    cd google-drive-mcp
    
  2. 安装依赖关系:

    npm install
    
  3. 配置环境变量: 创建一个 .env 在根目录中创建文件,并添加以下内容:

    CLIENT_ID=your_google_client_id
    CLIENT_SECRET=your_google_client_secret
    REFRESH_TOKEN=your_google_refresh_token
    PORT=8081
    

    确保您拥有有效的Google OAuth2客户端,并使用适当的Drive API作用域刷新令牌。

  4. 启动服务器:

    node index.js
    

    服务器将于启动 http://localhost:8081.

📚 API概述

资源

  • drive_roots:列出“我的驱动器”和“与我共享”中的文件。

工具类别

基本导航和信息

工具名称 描述
drive_roots 列出根目录(我的驱动器,与我共享)
drive_changes 列出驱动器中的更改
drive_file_metadata 获取文件的元数据
drive_folder_children 列出文件夹的内容
drive_search 在Google云端硬盘中搜索文件
drive_storage_quota 获取用户的存储配额信息
drive_storage_breakdown 按文件类型获取存储使用情况明细

文件内容操作

工具名称 描述
drive_file_content 检索Google Drive文件的内容
drive_create 创建文件或文件夹
drive_upload 上传或更新文件内容
drive_append_text 将纯文本附加到驱动器中的现有文本文件

文件管理

工具名称 描述
drive_copy 将文件或文件夹复制到新位置
drive_move 将文件或文件夹移动到其他父文件夹
drive_rename 重命名文件或文件夹
drive_delete 回收或删除文件
drive_restore 从回收站还原文件
drive_file_empty_trash 永久删除所有被丢弃的文件
drive_star 标记或取消标记文件或文件夹
drive_file_lock 锁定或解锁文件以防止更改
drive_shortcut_create 创建文件或文件夹的快捷方式

文件版本管理

工具名称 描述
drive_versions_list 列出文件的所有版本
drive_versions_delete 删除文件的特定版本

权限和共享

工具名称 描述
drive_share 管理文件权限
drive_permissions_list 列出文件或文件夹的所有权限
drive_permission_update 更新用户对文件或文件夹的权限
drive_permission_delete 从文件或文件夹中删除用户的访问权限
drive_permission_add_domain 与域中的每个人共享文件或文件夹
drive_permission_add_anyone 允许任何具有链接的人访问文件或文件夹

评论与协作

工具名称 描述
drive_comment 向文件添加注释
drive_file_list_comments 列出文件上的所有评论
drive_file_delete_comment 从文件中删除注释
drive_file_reply_to_comment 回复对文件的评论
drive_file_list_replies 列出对评论的所有回复
drive_file_delete_reply 删除对评论的回复

共享驱动器(团队驱动器)

工具名称 描述
drive_shared_drives_list 列出所有可访问的共享驱动器
drive_shared_drive_get 获取特定共享驱动器的元数据
drive_shared_drive_create 创建新的共享驱动器
drive_shared_drive_delete 删除共享驱动器
drive_shared_drive_update 更新共享驱动器的元数据
drive_shared_drive_files 列出共享驱动器中的文件

批量操作

工具名称 描述
drive_batch_get_metadata 在单个请求中获取多个文件的元数据
drive_batch_update_permissions 一次更新多个文件的权限
drive_batch_delete 一次删除多个文件或文件夹
drive_batch_copy 将多个文件复制到目标文件夹
drive_batch_move 将多个文件移动到目标文件夹

🔐 认证

服务器使用OAuth2与Google Drive进行身份验证。确保 CLIENT_ID, CLIENT_SECRET,以及 REFRESH_TOKEN 正确设置在 .env 文件。这些凭据应具有访问和修改Google Drive中文件的必要范围。

🧪 测试

您可以使用MCPInspector等工具测试端点。确保服务器正在以下位置运行 http://localhost:${port}.

🤝 贡献

欢迎投稿!请分叉存储库,并提交任何增强或错误修复的拉取请求。

📄 许可证

该项目根据 MIT许可证.

📧 联系

如有任何问题或反馈,请在 GitHub存储库.