🐉 口袋妖怪战斗模拟MCP服务器
A. 基于FastAPI的MCP(模型上下文协议) 为口袋妖怪战斗模拟提供策略、状态效果和实时战斗逻辑的服务器,专为黑客马拉松、人工智能集成和游戏实验而构建。
______________________________________________________________________
📖 概述
这个项目是一个 MCP兼容服务器 它允许客户端(如Claude Desktop或自定义MCP客户端):
- 获取详细的口袋妖怪数据
- 模拟逐回合的口袋妖怪战斗
- 应用 状态效应 如烧伤、中毒和瘫痪
- 检索 作战策略、状态更新和移动集 动态地
后端是用 快速 API 并公开REST端点以供直接使用,而MCP服务器允许AI工具将其作为资源进行查询。
______________________________________________________________________
✨ 特性
- 🎮 作战仿真:回合制口袋妖怪与现实力学的战斗
- ⚡ 状态影响:烧伤、中毒、瘫痪,影响健康和行动
- 🧠 战略引擎:人工智能辅助移动建议
- 🔌 MCP协议支持:轻松与Claude Desktop和其他MCP客户端集成
- 📡 REST API端点:可通过HTTP访问以进行快速测试
- 🧪 测试脚本:自动测试
test_battle.py - 🛠 黑客马拉松准备就绪:模块化,易于扩展
______________________________________________________________________
🛠 技术栈
- 语言:Python 3.10+
- 框架快速API
- MCP集成: 模型上下文协议
- 测试:
pytest,REST客户端(battle.http) - 其他工具:
uvicornASGI服务
______________________________________________________________________
📂 项目结构
├── api.py#FastAPI应用程序和api路由 ├── mcp_tool.py#mcp工具定义 ├── mcp_resources.py#mcp资源定义 ├── engine.py#战斗逻辑和状态效果处理 ├── test_battle.py#自动测试 ├── battle.http#REST客户端测试请求 ├── requirements.txt#依赖关系 └── README.md#项目文档
🚀 入门指南
1.️⃣ 克隆存储库
克隆https://github.com/GunjanKaur20/pokemon-battle-mcp.git cd口袋妖怪大战mcp
二️⃣ 安装依赖关系 pip安装-r要求.txt
3.️⃣ 运行服务器 uvicorn api:应用程序--reload API将在以下网址提供:
阿尔杜伊诺 http://localhost:8000
4.️⃣ (可选)作为MCP服务器运行 python mcp_tool.py 这将启动MCP服务器,以便在Claude Desktop等工具中使用。
获取Swagger用户界面http://127.0.0.1:8000/docs
🔗 API终点
📜 获取宝可梦信息 GET/pokemon/{名称} 示例:GET/pokemon/pikachu
⚔️ 模拟战斗
POST/战斗/模拟 查询参数:
- pokemon1(str)--第一个神奇宝贝名称
- pokemon2(str)--第二个神奇宝贝名称
- status1(可选)——宝可梦1的状态效果(烧伤、中毒、瘫痪)
- status2(可选)——宝可梦2的状态效果(烧伤、中毒、瘫痪)
例子: POST/战斗/模拟?pokemon1=皮卡丘和pokemon2=痉挛和状态1=瘫痪和状态2=中毒
🧠 获取作战策略
GET/战斗/战略/{口袋妖怪} 示例:GET/战斗/战略/pikachu
💪 获取状态
GET/战斗/状态/{口袋妖怪}
🌀 获取可用移动
GET/战斗/移动/{口袋妖怪}
📋 示例battle.http(VS代码REST客户端)
获取宝可梦信息
获取http://localhost:8000/pokemon/pikachu 接受:应用程序/json
模拟战斗
发布http://localhost:8000/battle/simulate?pokemon1=pikachu&pokemon2=squirtle&status1=paralysis&status2=poison 接受:应用程序/json
获取作战策略
获取http://localhost:8000/battle/strategy/pikachu 接受:应用程序/json
🧪 运行测试
pytest test_battle.py
🤝 贡献 欢迎投稿! 请随意:
提交错误修复或新功能的PR
功能请求或改进的未决问题
📜 许可证 此项目根据MIT许可证获得许可——有关详细信息,请参阅许可证。
📣 鸣谢 内置于❤️ Gunjan Kaur为学习、黑客马拉松和MCP实验而创作。 宝可梦数据和机制仅用于教育目的,与任天堂/Game Freak无关。
