Poke MCP 示例
完整的、可直接用于生产的示例,展示了构建MCP(模型上下文协议)集成时所有认证模式的实现方式 戳(或“戳刺”)。
🚀 开始入门
# Clone this repository
git clone https://github.com/InteractionCo/poke-mcp-examples.git
cd poke-mcp-examples
# Pick an example and follow its README
cd iss-tracker # or weather-api, whoop-integration, bookmark-manager每个示例都是独立的,包含其自身的依赖项和文档。
📚 示例
| 示例 | 认证 | 设置时间 | 您将构建的内容 |
|---|---|---|---|
| 国际空间站追踪器 | 无 | 5分钟 | 实时国际空间站位置 - 完美首次集成 |
| 天气API API密钥 | 10分钟 | 带Bearer令牌认证的天气数据 | |
| WHOOP 集成 OAuth代理 | 20分钟 | 来自现有OAuth API的健康数据 | |
| 书签管理器 | 远程OAuth + DCR | 15分钟 | 使用WorkOS的完整多用户服务 |
| 模板 | - | 5分钟 | 基本服务器结构和模式 |
🎯 选择你的道路
新来MCP的吗? 从……开始 国际空间站追踪器 - 无需认证,5分钟即可部署。
学习基础知识吗? 检查一下 模板 对于基本的服务器模式和结构。
为生产构建(或:准备生产环境)? 跳转到 书签管理器 用于完整的OAuth + 动态客户端注册。
🏗️ 仓库结构
poke-mcp-examples/
├── iss-tracker/ # No auth example
├── weather-api/ # API key auth example
├── whoop-integration/ # OAuth proxy example
├── bookmark-manager/ # Full OAuth + DCR example
└── mcp-server-template/ # Reference implementation每个目录包含:
src/server.py- 服务器实现requirements.txt- Python 依赖项.env.example- 环境变量(如需)README.md- 详细文档
📖 这些例子所教授的内容
无认证:ISS追踪器
- 为公共API构建工具
- 使用HTTPS在Render上部署
- 未授权连接到Poke
- 对公共端点进行速率限制
API密钥:天气API
- 在每次请求时验证承载令牌
- 返回正确的401错误
- 按API密钥限制速率
- 安全处理凭据
OAuth 代理:与 WHOOP 的集成
- 包装现有的OAuth提供者
- 将令牌转发给上游API
- 处理刷新令牌
- 按用户数据访问
远程OAuth + DCR:书签管理器
- 从零开始构建新服务
- 完全符合MCP规范
- 使用JWKS进行JWT验证
- 用户数据隔离
🚢 部署
所有示例均可部署到Render上:
- 在GitHub上对此仓库进行分支复制
- 在Render上创建一个新的Web服务
- 连接您的已分叉仓库
- 设置 工作目录 到具体示例(例如。,
iss-tracker) - 配置构建和启动命令(请参阅每个示例的README文件)
- 部署
Poke 需要 HTTPS。Render 会自动提供此功能。
🔒 认证模式
| 您的场景 | 使用此模式 | 示例 |
|---|---|---|
| (内容未提供) | (内容未提供) | (内容未提供) |
| 公共数据,无用户上下文 | 无需认证 | ISS追踪器 |
| 简易API,带密钥 | API密钥 | 天气API |
| 包装现有的OAuth服务 | OAuth代理 | WHOOP |
| 构建新的用户服务 | 远程OAuth + DCR | 书签 |
🛠️ 要求
- 所有示例均使用:
- Python 3.12+
- 用于环境管理的Conda
- FastMCP框架
手动渲染部署(无render.yaml文件)
🤝 贡献
- 这些示例是教育资源。欢迎贡献:
- 错误修复
- 文档改进
- 新的认证模式
更好的做法
📄 许可证
麻省理工学院(MIT)——将这些示例作为您自己集成的起点。
______________________________________________________________________
FastMCP框架
