🚀 Poke - MCP
Poke - MCP 是一个基于模型上下文协议(MCP)的服务器,借助标准化接口提供精灵宝可梦的相关信息。它连接到 PokeAPI 来获取精灵宝可梦的数据,再通过 MCP 工具向任何兼容的客户端(如 Claude Desktop App、Continue、Cline 等)提供信息,为用户带来便捷的精灵宝可梦信息查询体验。
🚀 快速开始
安装
使用 Smithery 安装
通过 Smithery 可自动为 Claude Desktop 安装 Pokémcp:
npx -y @smithery/cli install @NaveenBandarage/poke-mcp --client claude
手动安装
git clone https://github.com/yourusername/poke-mcp.git
cd poke-mcp
npm install
npm run build
与 Claude Desktop App 一起使用
- 下载并安装 Claude Desktop App
- 打开 Claude Desktop 设置
- 进入开发者设置,编辑配置文件
- 添加以下配置:
{
"mcpServers": {
"pokedex": {
"command": "path/to/poke-mcp/build/index.js"
}
}
}
- 重启 Claude Desktop
- 您现在应该可以在 Claude 中看到精灵宝可梦工具
示例查询
连接到 MCP 客户端后,您可以提出以下问题:
- “告诉我关于皮卡丘”
- “给我一个随机精灵宝可梦”
- “显示一个来自卡托的随机精灵宝可梦”
- “有什么随机的水属性精灵宝可梦?”
✨ 主要特性
- 通过名称获取特定精灵宝可梦的详细信息
- 发现随机精灵宝可梦
- 查找来自特定地区的随机精灵宝可梦(卡托、乔托、赫昂等)
- 获取特定类型的随机精灵宝可梦(火、水、电等)
- 支持自然语言查询接口,用于获取精灵宝可梦信息
🔧 技术细节
工作原理
Poke - MCP 使用 模型上下文协议 构建,使人工智能应用程序能够以标准化方式访问外部工具和数据源。该服务器的工作流程如下:
- 连接到 PokeAPI 获取精灵宝可梦数据
- 通过 MCP 接口提供多个工具
- 处理来自 MCP 客户端的请求
- 返回格式化的精灵宝可梦信息
MCP 工具
服务器提供的工具包括:
- get - pokemon: 根据名称获取特定精灵宝可梦的详细信息
- random - pokemon: 获取随机精灵宝可梦的信息
- random - pokemon - from - region: 从指定地区获取随机精灵宝可梦
- random - pokemon - by - type: 根据类型获取随机精灵宝可梦
- pokemon - query: 回答关于精灵宝可梦的自然语言查询
架构
服务器使用以下技术构建:
- TypeScript
- MCP TypeScript SDK (@modelcontextprotocol/sdk)
- Zod 进行输入验证
- 标准 I/O 传输用于 MCP 通信
📚 详细文档
项目结构
- src/index.ts: 主服务器实现
- src/types.ts: TypeScript 数据类型定义
- package.json: 项目依赖项和脚本
- tsconfig.json: TypeScript 配置
添加新功能
要添加新的工具或增强现有功能,可按以下步骤操作:
- 定义新的助手函数以获取和格式化数据
- 使用 server.tool() 方法注册新的工具
- 实现工具逻辑以处理请求并返回响应