使用说明
概述
Poke MCP是一个模型上下文协议(MCP)服务器,通过标准化接口提供Pokemon信息。它连接到 PokeAPI 获取口袋妖怪数据,并通过MCP工具将其公开,这些工具可供任何兼容MCP的客户端使用,如Claude Desktop App、Continue、Cline等。
此服务器现在支持使用服务器发送事件(SSE)进行实时通信的HTTP传输,使其可以通过HTTP访问,而不仅仅是stdio。
特性
- 按名称获取特定口袋妖怪的信息
- 发现随机口袋妖怪
- 从特定地区(关东、柔佛、霍恩等)随机找到宝可梦
- 随机获取特定类型的宝可梦(火、水、电等)
- 口袋妖怪信息自然语言查询界面
运作原理
Poke MCP是使用 模型上下文协议,使AI应用程序能够以标准化的方式访问外部工具和数据源。服务器:
- 连接到PokeAPI以获取Pokemon数据
- 通过MCP接口显示多个工具
- 处理来自MCP客户端的请求
- 返回格式化的口袋妖怪信息
MCP工具
服务器提供以下工具:
- 获取口袋妖怪:按名称获取特定口袋妖怪的详细信息
- 随机口袋妖怪:获取有关随机口袋妖怪的信息
- 来自特定地区的随机口袋妖怪:从特定地区获取随机口袋妖怪
- 按类型随机口袋妖怪:获取特定类型的随机口袋妖怪
- 口袋妖怪查询:回答关于口袋妖怪的自然语言查询
建筑
服务器是使用以下方式构建的:
- TypeScript
- MCP TypeScript SDK(@modelcontextprotocol/SDK)
- Zod用于输入验证
- 用于MCP通信的带有服务器发送事件(SSE)的HTTP传输
- Node.js内置HTTP服务器
安装
通过Smithery安装
通过以下方式自动安装Pokémcp for Claude Desktop 史密瑟里:
npx -y @smithery/cli install @NaveenBandarage/poke-mcp --client claude
手动安装
# Clone the repository
git clone https://github.com/yourusername/poke-mcp.git
cd poke-mcp
# Install dependencies
npm install
# Build the project
npm run build
用法
运行HTTP服务器
要在HTTP模式下启动服务器,请执行以下操作:
# Start the server (defaults to port 3000)
npm start
# Or specify a custom port
PORT=8080 npm start
服务器将在以下位置可用:
- 信息端点:
http://127.0.0.1:3000/-服务器信息和状态 - SSE端点:
http://127.0.0.1:3000/sse-MCP客户端的服务器发送事件连接 - 消息端点:
http://127.0.0.1:3000/message-用于发送MCP消息的POST端点
使用Claude桌面应用程序(HTTP传输)
- 下载并安装 Claude桌面应用程序
- 打开克劳德桌面设置
- 转到开发人员设置并编辑配置文件
- 为HTTP传输添加以下配置:
{
"mcpServers": {
"pokedex": {
"transport": {
"type": "sse",
"url": "http://127.0.0.1:3000/sse"
}
}
}
}
- 启动Poke MCP服务器:
npm start - 重新启动克劳德桌面
- 现在,您应该看到Claude中提供的Pokemon工具
传统用法(stdio)
为了向后兼容,您仍然可以通过恢复到stdio实现来使用stdio传输运行服务器。
查询示例
连接到MCP客户端后,您可以提出以下问题:
- “跟我说说皮卡丘”
- “给我一个随机的口袋妖怪”
- “给我看一个来自关东的随机口袋妖怪”
- “什么是随机的水宝可梦?”
项目结构
- src/index.ts:主服务器实现
- src/types.ts:口袋妖怪数据的TypeScript类型定义
- package.json:项目依赖关系和脚本
- tsconfig.json:TypeScript配置
添加新功能
要添加新工具或增强现有工具,请执行以下操作:
- 定义新的辅助函数以获取和格式化数据
- 使用server.tool()方法注册新工具
- 实现处理请求和返回响应的工具逻辑
许可证
国际协调委员会
致谢
该项目演示了如何构建自定义MCP服务器,以扩展具有特定领域知识和能力的AI助手。
