使用说明
MCP谷歌表格服务器
用于Google表格集成的模型上下文协议(MCP)服务器,专为 克劳迪娅 数据输入代理系统。
概述
此服务器将Google表格操作作为MCP工具公开,实现收据处理和报销工作流的自动数据输入。
特性
读取操作
tool_get_sheet_data-从特定范围获取数据tool_get_sheet_formulas-从单元格中检索公式tool_list_sheets-列出电子表格中的所有工作表选项卡tool_get_spreadsheet_info-获取电子表格元数据tool_get_multiple_sheet_data-从多个范围批量提取
写入操作
tool_update_cells-更新特定单元格范围tool_batch_update_cells-高效地更新多个范围tool_append_rows-添加新行(非常适合收据条目)tool_add_rows/tool_add_columns-插入空行/空列tool_clear_range-在保持格式的同时清除值
表单管理
tool_create_sheet-创建新的图纸选项卡tool_rename_sheet-重命名现有图纸tool_copy_sheet-在电子表格之间复制表格tool_delete_sheet-删除工作表选项卡tool_batch_update-高级批处理操作
设置
1.先决条件
- Python 3.11+
- 紫外线 包管理器
- 启用Sheets API的Google Cloud项目
- 具有表格访问权限的服务帐户
2.安装
cd mcp-gsheets
uv sync
3.配置
创建一个 .env 模板中的文件:
cp .env.template .env
配置您的环境:
SERVICE_ACCOUNT_PATH=service_account.json
SHEET_ID=your-spreadsheet-id
FASTMCP_PORT=8002
FASTMCP_HOST=0.0.0.0
LOG_LEVEL=INFO
4.服务帐户设置
- 在Google Cloud Console中创建服务帐户
- 下载JSON凭据文件
- 将其放置为
service_account.json在项目根中 - 将您的目标电子表格与服务帐户电子邮件共享
运行服务器
stdio传输(默认)
uv run python main.py
SSE/HTTP传输
uv run python main.py --transport sse
项目结构
mcp-gsheets/
├── app/
│ ├── __init__.py # Package entry point
│ ├── server.py # FastMCP server with tool definitions
│ ├── infra/
│ │ ├── __init__.py
│ │ └── gsheet_client.py # Google Sheets API client
│ ├── tools/
│ │ ├── __init__.py
│ │ ├── read_ops.py # Read operations
│ │ ├── write_ops.py # Write operations
│ │ └── sheet_ops.py # Sheet management
│ └── utils/
│ ├── __init__.py
│ └── logger.py # Logging configuration
├── main.py # Entry point script
├── pyproject.toml
├── .env.template
└── README.md
使用示例
当与Klaudia编排器一起使用时,代理可以:
- 提取收据数据 (通过mcp ocr)
- 附加到电子表格 使用
tool_append_rows:
# Example: Adding receipt entry
data = [
["2025-01-13", "Starbucks", "Coffee", "45000", "Food & Beverage"]
]
tool_append_rows(
spreadsheet_id="your-sheet-id",
sheet="Receipts",
data=data
)
与Klaudia整合
此服务器在端口上运行 8002 并且被设计为与以下设备一起工作:
- mcp ocr (端口8001)-收据图像/PDF处理
- Klaudia编曲 (端口8000)-主FastAPI后端
许可证
Klaudia AI数据输入代理项目的一部分。
