使用说明
谷歌幻灯片MCP服务器
一个生产就绪的MCP(模型上下文协议)服务器,提供对Google Slides API的语义友好访问。既可作为本地使用的Python包,也可作为远程访问的Cloudflare Workers部署。
特性
- API完全访问:通过直接传递到所有47个Google Slides API请求类型
batch_update - 语义定位:人性化的工具,抽象出EMU数学并转换计算
- 模板工作流:复制模板,用文本或图像替换占位符
- OAuth支持:多用户场景下的每用户身份验证
- 两种部署选项:
- Python(FastMCP):克劳德桌面/代码的本地stdio传输
- Cloudflare员工:Claude Mobile和web客户端的远程SSE传输
快速开始
选项1:Cloudflare Workers(远程)
将Claude Desktop或Claude Mobile连接到托管服务器:
URL: https://google-slides-mcp.foray-consulting.workers.dev/sse
无需本地安装-只需添加为自定义连接器并使用您的Google帐户进行身份验证。托管服务器可供任何谷歌用户公开访问。
注: 在首次身份验证时,您将看到谷歌的“此应用程序未验证”警告。点击 高级 → 转到谷歌幻灯片MCP(不安全) 继续。对于尚未完成谷歌验证过程的应用程序来说,这是正常的。
选项2:Python(本地)
cd packages/python
pip install -e ".[dev]"
# Acquire OAuth tokens
python scripts/get_token.py
# Run the server
google-slides-mcp --transport stdio
仓库结构
google-slides-mcp/
├── packages/
│ ├── python/ # Python FastMCP implementation
│ │ ├── src/google_slides_mcp/
│ │ │ ├── tools/ # All 36 MCP tools
│ │ │ └── prompts/ # Workflow and discovery prompts
│ │ ├── scripts/
│ │ ├── tests/
│ │ └── pyproject.toml
│ │
│ └── cloudflare/ # Cloudflare Workers implementation
│ ├── src/
│ │ ├── index.ts # OAuthProvider entry point
│ │ ├── mcp-agent.ts # McpAgent Durable Object
│ │ ├── api/ # Google API REST clients + TokenManager
│ │ ├── auth/ # Google OAuth handler
│ │ ├── tools/ # All 36 MCP tools
│ │ ├── prompts/ # Workflow and discovery prompts
│ │ └── utils/ # EMU, color, transform utilities
│ ├── wrangler.toml
│ └── package.json
│
├── docs/
│ ├── development_history.md
│ └── google-oauth-setup.md
└── README.md
可用工具(共36个)
低级工具
batch_update-根据Google Slides API执行原始批更新请求get_presentation-检索演示文稿元数据、幻灯片和元素get_page-获取特定幻灯片的详细信息
模板工具
copy_template-复制Google幻灯片模板以创建新演示文稿replace_placeholders-替换整个演示文稿中的占位符文本replace_placeholder_with_image-用图像替换占位符形状search_presentations-在Google云端硬盘中搜索演示文稿
创建工具
create_slide-使用预定义或自定义布局创建新幻灯片add_text_box-向幻灯片添加样式文本框add_image-从URL添加图像add_shape-添加形状(矩形、椭圆形等)
内容工具
update_slide_content-按占位符类型更新幻灯片文本update_presentation_content-跨多张幻灯片批量更新文本apply_text_style-在幻灯片中应用一致的样式update_table_content-使用可选的标题样式批量更新表单元格文本replace_text_on_slide-幻灯片范围的查找和替换(比演示文稿范围的替换更安全)
定位工具
position_element-使用英寸和对齐来定位和调整元素的大小distribute_elements-将元素均匀地分布在幻灯片上align_elements-将多个元素彼此对齐或与幻灯片对齐
实用工具
list_slides-列出所有带有ID和标题的幻灯片list_layouts-列出带有占位符类型的可用幻灯片布局get_element_info-以人类可读的格式获取元素详细信息inspect_slide-带有溢出/空警告的全面幻灯片审核inspect_slides-在单个API调用中批量检查多个幻灯片export_thumbnail-生成幻灯片缩略图
清理工具
clear_slide-从幻灯片中删除所有元素
分析工具
analyze_presentation-深潜风格指南提取
可视化工具
add_table-在幻灯片上创建样式化数据表add_bar_chart-使用形状创建条形图add_stat_callout-创建KPI/指标显示卡
装饰工具
set_slide_background-将幻灯片背景设置为颜色或图像add_line-在幻灯片上添加直线
复合工具
get_presentation_style-从演示文稿中提取主题颜色和字体create_table_slide-在一次通话中创建完整的主题表格幻灯片create_chart_slide-在一次通话中创建完整的主题条形图幻灯片create_dashboard_slide-在一次通话中创建完整的KPI仪表板幻灯片
MCP提示(共7条)
服务器包括语义路由提示,指导LLM实现最佳工具使用:
工作流提示
create_presentation_from_template-完成基于模板的甲板创建工作流程update_existing_presentation-修改现有演示文稿的指南build_presentation_from_scratch-创建没有模板的演示文稿analyze_and_replicate_style-提取并应用样式指南
发现提示
get_started-工具景观和抽象级别介绍tool_reference-按类别列出的详细工具参考troubleshooting-常见问题和解决方案
Python包
安装
cd packages/python
pip install -e ".[dev]"
配置
- 在以下位置创建Google OAuth 2.0凭据 Google 云控制台
- 启用Google Slides API和Google Drive API
- 复制
.env.example到.env并填写您的凭据
有关详细的设置说明,请参阅 docs/google-oauth-setup.md.
Claude桌面配置
{
"mcpServers": {
"google-slides": {
"command": "google-slides-mcp",
"args": ["--transport", "stdio"]
}
}
}
Cloudflare工人包
部署
cd packages/cloudflare
npm install
# Create KV namespace
npx wrangler kv namespace create "OAUTH_KV"
# Set secrets
npx wrangler secret put GOOGLE_CLIENT_ID
npx wrangler secret put GOOGLE_CLIENT_SECRET
npx wrangler secret put COOKIE_ENCRYPTION_KEY
# Deploy
npm run deploy
建筑
- OAuthProvider:使用PKCE处理MCP OAuth 2.1流
- McpAgent(耐用对象):维护会话状态和WebSocket连接
- 谷歌OAuth处理程序:使用Google进行上游身份验证
- 直接REST:用途
fetch()而不是googleapi npm包
本地开发
npm run dev # Start local server on port 8788
npm run typecheck # Run TypeScript checks
发展
python
cd packages/python
pytest # Run tests
ruff check . # Linting
mypy src/ # Type checking
云耀
cd packages/cloudflare
npm run typecheck # TypeScript checks
npm run dev # Local development
npm run deploy # Deploy to Cloudflare
发展历程
关于这个项目是如何构思和构建的详细时间表——从最初的构思到实际实施——请参阅 docs/development_history.md.
许可证
MIT许可证-请参阅 许可证 了解详情。