Token导航 LogoToken导航TokenDH.com
Google Personal MCP logo
AI代理stdio官方级别未说明来源级核验

Google Personal MCP

MCP Server

一个基于Google Sheets的MCP服务器,用于存储和检索提示与想法,支持跨多个表格管理文本内容及其元数据。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude知识管理Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

jjurach

提供方

jjurach

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv venv

详细介绍

Google表格MCP服务器

本子项目实现了一个托管代码项目(MCP)服务器,该服务器与Google表格交互以存储和检索提示和想法。它允许MCP客户端在指定的Google电子表格中跨各种工作表(选项卡)管理文本内容,包括时间戳和作者等元数据。

安装说明

  1. 导航到项目目录:
   cd google-personal-mcp
  1. 创建并激活虚拟环境(如果您还没有):
   python3 -m venv venv
   source venv/bin/activate
  1. 安装依赖项:
   pip install -r requirements.txt
   pip install -e ../external/fastmcp

Google Sheets API身份验证

为了允许MCP服务器与您的Google Sheets交互,您需要设置Google Sheets API访问并获取 credentials.json.

  1. 启用Google表格和驱动器API:

- 去 谷歌云控制台. - 创建新项目或选择现有项目。 - 导航到“APIs&Services”>“已启用的APIs&Service”。 - 搜索“Google Sheets API”并启用它。 - 搜索“Google Drive API”并启用它。

  1. 创建OAuth 2.0客户端ID:

- 在Google Cloud控制台中,转到“API和服务”>“凭据”。 - 单击“创建证书”>“OAuth客户端ID”。 - 选择“桌面应用程序”作为应用程序类型。 - 为其命名(例如,“GoogleSheetsMCP”)。 - 单击“创建”。

  1. 下载OAuth 2.0凭据:

- 创建客户端ID后,将出现一个对话框,其中包含您的客户端ID和客户端密码。 - 点击“下载JSON”以保存凭据文件。 - 将下载的文件重命名为 credentials.json 并将其放置在您的配置文件目录中(见下文)。

凭证存储(基于配置文件)

服务器存储按配置文件组织的OAuth凭据和授权令牌。这允许您管理多个Google帐户或身份验证范围。

目录结构

~/.config/google-personal-mcp/
├── config.json              # Resource aliases and configuration
└── profiles/
    ├── default/
    │   ├── credentials.json  # OAuth 2.0 client secrets
    │   └── token.json        # Authorization token (auto-generated)
    └── work/                 # Alternative profile example
        ├── credentials.json
        └── token.json

设置个人资料

对于默认配置文件:

# Create the profile directory
mkdir -p ~/.config/google-personal-mcp/profiles/default

# Copy your downloaded credentials
mv ~/Downloads/credentials.json ~/.config/google-personal-mcp/profiles/default/

对于替代配置文件:

# Create alternate profile directory
mkdir -p ~/.config/google-personal-mcp/profiles/work

# Add credentials for that profile
mv ~/Downloads/work_credentials.json ~/.config/google-personal-mcp/profiles/work/credentials.json

运作原理

  • credentials.json:包含您的OAuth 2.0客户端ID和密钥(从Google Cloud Console下载)。此文件适用于该配置文件的所有用途。
  • token.json:首次身份验证后自动创建。包含您的授权令牌。为每个配置文件和范围集单独生成。

身份验证需要这两个文件。当您首次使用配置文件运行服务器时,它将:

  1. 寻找 credentials.json 在配置文件目录中
  2. 如果 token.json 不存在或无效,请打开浏览器进行身份验证
  3. 将授权令牌保存到 token.json

安全说明: 两者 credentials.jsontoken.json 是敏感文件。它们被添加到 .gitignore 以防止意外犯罪。

资源配置

服务器使用 config.json 文件来管理您的Google表格和驱动器文件夹的别名。这允许您通过友好的名称而不是长ID引用资源。

配置文件位置

服务器正在查找 config.json 在:

~/.config/google-personal-mcp/config.json

配置文件结构

创建 config.json 为您的资源添加别名的文件:

{
  "sheets": {
    "prompts": {
      "id": "YOUR_SPREADSHEET_ID",
      "profile": "default",
      "description": "Main prompts storage"
    }
  },
  "drive_folders": {
    "documents": {
      "id": "YOUR_FOLDER_ID",
      "profile": "default",
      "description": "Personal documents"
    }
  }
}

字段参考

  • :电子表格别名词典
  • 驱动器文件夹:驱动器文件夹别名词典
  • ID:谷歌资源ID(电子表格ID或文件夹ID)
  • 个人资料:要使用的身份验证配置文件(默认值: "default")
  • 描述:可选的人类可读描述

查找您的资源ID

电子表格ID:

  • 在Google表格中打开电子表格
  • 请查看URL: https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit
  • 复制ID /d//edit

文件夹ID:

  • 在Google云端硬盘中打开您的文件夹
  • 请查看URL: https://drive.google.com/drive/folders/FOLDER_ID
  • 复制ID后 /folders/

示例设置

# Create the config directory
mkdir -p ~/.config/google-personal-mcp

# Copy the example file
cp config.json.example ~/.config/google-personal-mcp/config.json

# Edit with your spreadsheet and folder IDs
nano ~/.config/google-personal-mcp/config.json

详细日志

启用详细日志记录以查看有关凭据文件搜索、身份验证和API操作的详细信息:

export GOOGLE_PERSONAL_MCP_VERBOSE=1

启用详细模式后,服务器将显示:

  • 使用了哪个凭据/令牌文件位置
  • 身份验证流程步骤
  • API操作详细信息
  • 故障排除的调试信息

要禁用详细日志记录,请执行以下操作:

export GOOGLE_PERSONAL_MCP_VERBOSE=0
# or simply unset the variable
unset GOOGLE_PERSONAL_MCP_VERBOSE

驱动工具和诊断

该项目包括一个实用程序脚本 scripts/drive-tool.py 以帮助诊断身份验证问题并列出Google Drive中的文件。此工具独立于主MCP服务器,但共享相同的身份验证配置文件(default 默认情况下)。

用途:

python3 scripts/drive-tool.py

特征:

  • 列出所有文件: 它要求 drive.readonly 范围看 *全部* 驱动器中的文件,而不仅仅是此应用程序创建的文件(与使用受限文件的主服务器不同 drive.file 范围)。
  • 自动修复: 如果您当前缓存的令牌(token.json)如果缺少必要的权限,该工具将自动检测到这一点并触发重新身份验证流程。系统将提示您访问一个URL以授权更广泛的范围。
  • 诊断: 有助于验证您的 credentials.json 正在工作,并且该应用程序可以成功地与Google Drive API对话。如果此工具有效,但服务器不起作用,则问题可能出在服务器配置或特定文件限制上。

运行MCP服务器

fastmcp 服务器可以直接运行。

  1. 确保您的虚拟环境处于活动状态:
   source venv/bin/activate
  1. 运行服务器:
   python main.py

服务器将在前台运行。您可以按停止它 Ctrl+C.

服务器通常可通过以下方式访问 fastmcp 客户端,然后可以调用公开的工具。

正在配置.ggemini/settings.json

要将此MCP服务器与Gemini一起使用,请将以下配置添加到您的 .gemini/settings.json 文件:

{
  "mcpServers": {
    "google-sheets": {
      "command": "google-personal-mcp",
      "args": [],
      "env": {}
    }
  }
}

启用详细日志记录后:

{
  "mcpServers": {
    "google-sheets": {
      "command": "google-personal-mcp",
      "args": [],
      "env": {
        "GOOGLE_PERSONAL_MCP_VERBOSE": "1"
      }
    }
  }
}

笔记:

  • 确保该软件包已安装 pip install -e . 以便 google-personal-mcp 命令在PATH中可用
  • cwd 参数现在是可选的-服务器将自动在标准位置搜索凭据
  • 如果要指定自定义凭据位置,请使用 GOOGLE_PERSONAL_CREDENTIALS 环境变量 env 部分

可用工具

以下工具由 fastmcp 服务器:

  • list_sheets(spreadsheet_id: str = DEFAULT_SPREADSHEET_ID) -> list[str]:列出给定电子表格中的所有工作表(选项卡)。
  • create_sheet(new_sheet_name: str, spreadsheet_id: str = DEFAULT_SPREADSHEET_ID) -> dict:在给定的电子表格中创建新工作表(选项卡)。
  • get_sheet_status(spreadsheet_id: str = DEFAULT_SPREADSHEET_ID, range_name: str = "README!A1") -> dict:获取工作表的状态(从指定范围读取数据)。
  • insert_prompt(sheet_name: str, prompt_name: str, content: str, author: str = "Google Sheets MCP", spreadsheet_id: str = DEFAULT_SPREADSHEET_ID) -> dict:在工作表中插入提示。
  • get_prompts(sheet_name: str, spreadsheet_id: str = DEFAULT_SPREADSHEET_ID) -> dict:从工作表中获取所有提示。
  • initialize_readme_sheet(spreadsheet_id: str = DEFAULT_SPREADSHEET_ID) -> dict:用一些默认内容初始化“README”表。

这些工具旨在通过编程方式调用 fastmcp 客户。例如,使用 fastmcp Python中的客户端库,您可以调用 client.tools.list_sheets().

命令行界面

google-personal CLI提供了用于管理Google Drive文件、表格和配置的工具。

驱动命令

列出所有文件(诊断)

列出当前凭据可访问的所有文件:

google-personal drive list-all-files [--profile 
]

选项:

  • --profile:身份验证配置文件(默认:“默认”)

列出文件夹中的文件

列出特定驱动器文件夹中的文件:

google-personal drive list-files [--folder ] [--profile 
]

选项:

  • --folder:文件夹别名(如果只配置了一个文件夹,则可选)
  • --profile:身份验证配置文件(默认:“默认”)

例子:

google-personal drive list-files --folder documents

下载文件

按名称从驱动器下载文件:

google-personal drive get-file --remote-file  [--local-file 
] [--folder ] [--profile 
]

选项:

  • --remote-file:驱动器中文件的名称(必填)
  • --local-file:要保存的本地路径(可选,默认为远程文件的基名)
  • --folder:文件夹别名(如果只配置了一个文件夹,则可选)
  • --profile:身份验证配置文件(默认:“默认”)

示例:

# Download with auto-detected filename
google-personal drive get-file --remote-file 'Recording 3.acc'

# Download with custom local name
google-personal drive get-file --remote-file 'Report.pdf' --local-file 'Q4-Report.pdf' --folder documents

安全: 如果本地文件已存在,则命令失败,以防止意外覆盖。

上传文件

将文件上传到驱动器:

google-personal drive put-file --local-file 
 [--remote-file ] [--folder ] [--profile 
]

选项:

  • --local-file:要上传的本地文件(必需)
  • --remote-file:驱动器中文件的名称(可选,默认为本地文件的基本名称)
  • --folder:文件夹别名(如果只配置了一个文件夹,则可选)
  • --profile:身份验证配置文件(默认:“默认”)

示例:

# Upload with same name
google-personal drive put-file --local-file report.pdf

# Upload with custom name
google-personal drive put-file --local-file ./docs/report.pdf --remote-file 'Q4-Report.pdf' --folder documents

删除文件

按名称从驱动器中删除文件:

google-personal drive remove-file --remote-file  [--folder ] [--profile 
]

选项:

  • --remote-file:要删除的文件的名称(必需)
  • --folder:文件夹别名(如果只配置了一个文件夹,则可选)
  • --profile:身份验证配置文件(默认:“默认”)

例子:

google-personal drive remove-file --remote-file 'old-backup.zip' --folder documents

配置命令

列出已配置的工作表

google-personal config list-sheets [--profile 
]

列出已配置的文件夹

google-personal config list-folders [--profile 
]

图纸命令

有关MCP工具,请参阅上面的“可用工具”部分。CLI还提供对工作表操作的直接访问:

google-personal sheets list-tabs --sheet-alias  [--profile 
]
google-personal sheets get-status --sheet-alias  [--range-name ] [--profile 
]
google-personal sheets get-prompts --sheet-alias  --sheet-tab-name  [--profile 
]
google-personal sheets insert-prompt --sheet-alias  --sheet-tab-name  --prompt-name  --content  [--author ] [--profile 
]

MCP服务器验证

简单验证测试

为了快速验证您的MCP服务器是否正常工作,请使用以下简单的测试提示:

简单测试提示:

Use the Google Sheets MCP tool to list all prompts from the 'Gemini Prompts' sheet. Just show me the raw data exactly as returned by the tool.

为什么这适用于验证:

  • 这一提示迫使AI使用 get_prompts 工具
  • 您可以通过检查AI是否从您的工作表中返回实际提示数据来轻松验证
  • 无需复杂的摘要,只需原始工具输出
  • 清除成功指示符:如果您从工作表中看到实际的提示名称/内容,则MCP连接正在工作

快速验证步骤:

  1. 使用以下命令将测试提示添加到“Gemini Prompts”表中 insert_prompt 工具(例如,名称:“测试提示”,内容:“这是一个测试”)
  2. 将上面的简单测试提示发送给Gemini/Claude
  3. 验证AI是否显示了您的实际测试提示数据(而不是通用响应)
  4. 成功=MCP服务器已连接并正常工作

高级测试提示

要进行全面测试,请使用此提示,该提示要求AI总结工作表内容:

高级测试提示:

Use the Google Sheets MCP tool to get all prompts from the 'Gemini Prompts' sheet and provide a comprehensive summary of their content, including key themes and any notable patterns you observe.

预期行为:

  • AI应该成功调用 get_prompts “Gemini Prompts”表上的工具
  • 如果工作表存在并包含提示,AI将接收提示数据并生成摘要
  • 如果表格为空或不存在,人工智能应明确报告
  • 如果AI可以访问工具并检索数据(或报告适当的错误),则MCP服务器连接正在工作

先决条件:

  • 确保“Gemini Prompts”表存在于您的电子表格中(如果需要,使用 create_sheet 工具)
  • 使用以下命令在工作表中添加一些测试提示 insert_prompt 用于有意义验证的工具
  • 确认您的MCP客户端(Gemini/Claude)已配置为使用此服务器

验证步骤:

  1. 将上面的测试提示发送给您的AI助手
  2. 检查它是否尝试使用Google表格MCP工具(您可能会在界面中看到工具调用指示器)
  3. 验证人工智能是否基于实际工作表数据而不是通用响应提供摘要
  4. 如果AI无法访问工具,请检查您的MCP服务器配置和身份验证

总结测试提示

为了便于验证MCP服务器是否使用摘要功能正常工作:

测试提示:

Please use the Google Sheets MCP tool to retrieve all prompts from the 'Gemini Prompts' sheet and provide a detailed summary of their content, including the total number of prompts, key themes, and any patterns you notice in the prompt names or content.

为什么这适用于验证:

  • 迫使AI调用 get_prompts “Gemini Prompts”表上的工具
  • 需要实际的数据处理(计数、汇总、模式识别)
  • 易于验证:如果您从实际工作表数据中看到具体细节,则MCP连接正常工作
  • 明确的故障指示器:如果AI给出的是通用响应而不是您的实际数据,则服务器未连接

快速验证步骤:

  1. 确保“Gemini Prompts”表存在,并且至少包含2-3个测试提示
  2. 将上述测试提示发送给Gemini/Claude
  3. 检查AI响应是否包括:

- 工作表中的实际提示名称/内容(非通用示例) - 特定的提示计数(例如,“总共有5个提示”) - 来自实际数据的真实主题/模式

  1. 成功=MCP服务器已连接并正常运行

先决条件:

  • 电子表格中存在“Gemini Prompts”表
  • 工作表包含一些测试提示(使用 insert_prompt 如果需要,可以使用工具添加它们)
  • MCP客户端已正确配置为使用此服务器

连接到MCP客户端

此MCP服务器可以连接到支持MCP协议的任何MCP兼容客户端。服务器公开了用于程序化Google表格访问的工具,允许客户端管理电子表格内容、存储提示和跨多个表格检索数据。

文档

对于AI代理

对于开发者

例子

指南

目录标签

目录标签

PythonClaude知识管理GoogleSheets集成本地部署内容管理元数据存储MCP协议自动化工具

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP