使用说明
MCP谷歌云端硬盘服务器
该项目是与Google Drive集成的模型上下文协议(MCP)的服务器, 您可以使用它将Microsoft Word文件上传到Google云端硬盘,从而便于文件管理和共享。 使用模型上下文协议客户端连接到此服务器,例如在Claude Desktop中。
组件
工具
- upload_microsoft_world_文件:
- 将Microsoft Word格式的文件内容上载到指定文件夹中的Google Drive。
- 输入参数:
folderName:上传文件的文件夹名称。如果为空,则文件将上传到根目录。(可选)fileName:要上传的文件的名称。fileContent:要上传的文件的内容。
- 退货:
url:以谷歌文档视图格式上传的文件的URL。
你能做什么
设置后,您可以向Claude Desktop询问以下问题:
- “圣保罗的10个著名旅游景点是什么,请将结果保存在我的谷歌驱动器中”
入门指南
先决条件
- 克劳德桌面版 (点击此处下载)
- MCP检查员 (从这里快速开始)
- Java 24+ (点击此处下载)
- 梅文 (包括通过
./mvnw) - 生成API凭据
- 创建新的Google Cloud项目
- 启用Google Drive API
- 启用云资源管理器API
- 在Cloud Shell内部为本地开发环境设置ADC
- 在Google Cloud控制台中打开Cloud Shell。
- 运行以下命令:
gcloud auth application-default login --scopes=https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/drive - 这将打开一个浏览器窗口,以验证您的Google帐户并授予必要的权限。
- 成功验证后,凭据将存储在您的Cloud Shell环境中,允许应用程序访问Google Cloud资源。
- 查找创建的凭据文件,它应该类似于:
Credentials saved to file: [/tmp/tmp.6Rvsdsdfesx/application_default_credentials.json] - 将凭据文件的内容复制到名为的新文件中
application_default_credentials.json在本地计算机的主目录中。(例如。~/application_default_credentials.json)
🎯 选择您的设置方法
|方法|构建应用程序的要求|构建时间|运行应用程序的需要|启动时间|最适合| |-------------------------------------------------|------------|---------------------------------------|---------------------------------------|--------------|-------------| | 📦 原生二进制 |Maven和Java 24+| 5分钟|无!| 0.48秒| 大多数用户 | | ☕ Java构建 |Maven和Java 24+| 10秒| Java 24+|4.6秒|开发人员|
构建应用程序
克隆存储库:
git clone <this-repo>
cd mcp-google-drive-server
📦 原生二进制(无Java)
对于希望从源代码构建的开发人员
为STDIO模式构建本机映像:
./mvnw clean package -Pnative,mcp-stdio
或
构建SSE模式的本机映像:
./mvnw clean package -Pnative
☕ Java构建(传统)
对于希望从源代码构建的开发人员
构建jar文件:
./mvnw clean package
运行应用程序
使用Claude Desktop进行测试(使用 工作室 模式):
claude_desktop_config.json文件通常位于以下主目录中:~/.config/claude
此文件必须配置以下内容才能启用MCP Google Drive服务器。
📦 在Native Binary(非Java)中配置和运行应用程序
{
"mcpServers": {
"mcp-google-drive-server": {
"command": "/FULL/PATH/TO/target/mcp-google-drive-server",
"args": [],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/FULL/PATH/TO/application_default_credentials.json"
}
}
}
}
⚠️ 使用生成的本机二进制文件和application_default_credentials文件的完整路径。
或
☕ 在Java Build中配置和运行应用程序(传统)
{
"mcpServers": {
"mcp-google-drive-server": {
"command": "/FULL/PATH/TO/java/24/bin/java",
"args": [
"-jar",
"-Dspring.ai.mcp.server.stdio=true",
"/FULL/PATH/TO/target/mcp-google-drive-server-0.0.1-SNAPSHOT.jar"
],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/FULL/PATH/TO/application_default_credentials.json"
}
}
}
}
⚠️ 使用java 24安装、生成的jar和application_default_credentials文件的完整路径。
测试它是否有效
- 重新启动克劳德桌面
- 在新对话中查找搜索和工具图标,然后单击它
- 寻找
mcp-google-drive-server在可用mcp服务器列表中 - 尝试: “圣保罗的10个著名旅游景点是什么,请将结果保存在我的谷歌驱动器中”
✅ 成功:你应该看到克劳德使用 upload_microsoft_world_file 工具!
故障排除
在Claude Desktop中“找不到工具”
- 检查JAR路径或本机二进制路径是否正确和绝对
- 验证是否设置了环境变量
- 完全重新启动克劳德桌面
- 检查Claude Desktop的日志/控制台是否有错误
使用MCP检查员进行测试(使用 上海证券交易所 模式)
要在SSE模式下测试服务器,您可以使用 MCP检查员 工具。
📦 在Native Binary(非Java)中运行应用程序
CLIENT_ID="clientid" CLIENT_SECRET="{noop}clientsecret" GOOGLE_APPLICATION_CREDENTIALS="/FULL/PATH/TO/application_default_credentials.json" /FULL/PATH/TO/target/mcp-google-drive-server
⚠️ 使用生成的Native Binary和application_default_credentials文件的完整路径。
☕ 在Java Build中运行应用程序(传统)
CLIENT_ID="clientid" CLIENT_SECRET="{noop}clientsecret" GOOGLE_APPLICATION_CREDENTIALS="/FULL/PATH/TO/application_default_credentials.json" /FULL/PATH/TO/java/24/bin/java -jar /FULL/PATH/TO/target/mcp-google-drive-server-0.0.1-SNAPSHOT.jar
⚠️ 使用java 24安装、生成的jar和application_default_credentials文件的完整路径。
获取访问令牌
服务器使用OAuth2进行安全保护。要连接到它,您需要一个访问令牌。您可以通过向令牌端点发送请求来获得一个:
curl -k -X POST -u clientid:clientsecret http://localhost:8080/oauth2/token -d 'grant_type=client_credentials'
这将返回一个包含访问令牌的JSON响应:
{
"access_token": "...",
"scope": "mcp.read mcp.write",
"token_type": "Bearer",
"expires_in": 299
}
并复制粘贴访问令牌或使用JQ:
curl -k -X POST -u clientid:clientsecret http://localhost:8080/oauth2/token -d 'grant_type=client_credentials' | jq -r ".access_token"
存储该令牌
启动MCP检查器
npx @modelcontextprotocol/inspector@0.6.0
在MCP检查器中,粘贴您的令牌。点击连接,瞧!
如果你点击“工具”选项卡,然后点击“列出工具”,你应该会看到 upload_microsoft_world_file 工具可用。
您可以通过单击工具并填写参数,然后单击“运行工具”来测试它。
请注意,令牌仅在5分钟内有效
日志记录
启用调试日志
设置环境变量: LOGGING_LEVEL_ROOT=DEBUG
检查日志
您可以在 /usr/lib/claude-desktop/target claude桌面的目录。日志文件名为 mcp-google-drive-server.log.
参考文件
如需进一步参考,请考虑以下部分:
在Spring中,MCP服务器的OAuth2支持意味着添加:
- Spring Security (安全基础设施)
- Spring授权服务器 (发行代币)
- Spring安全:OAuth2资源服务器 ( 使用令牌进行身份验证)
Maven父级覆盖
由于Maven的设计,元素从父POM继承到项目POM。
虽然大部分继承都很好,但它也继承了不需要的元素,如 <license> 和 <developers> 来自父母。
为了防止这种情况,项目POM包含这些元素的空覆盖。
如果您手动切换到其他父级并实际想要继承,则需要删除这些覆盖。
