使用说明
MCP 神奇宝贝 – FastMCP 服务器
这是一个名为模型上下文协议(MCP)的小型服务器。 “戳” 美国a PokeAPI 直接向 GitHub Copilot(或其他兼容的 MCP 客户端)提供有关 Pokemon 的信息。
服务器实现于 FastMCP 它展示了三个主要工具:
get_pokemon_info(name: str)查找Pokemon的详细信息。create_tournament_squad()– 组建一个强大的团队,由六个神奇宝贝参加比赛。list_popular_pokemon()– 列出一些流行的Pokemon竞争.
项目结构
poke.pyMCP服务器和工具。main.py– 可选的入口点 (如果你想在本地运行的东西/测试).pyproject.tomlPython项目配置(依赖关系和元数据)。
先决条件
- 已安装Python 3.10+。
- 互联网接入(调用 PokeAPI 在
https://pokeapi.co).
推荐(更多可选):
- 虚拟环境(
venv,conda等等)。
安装
在工程目录中()pokemon/):
-
创建并激活虚拟环境(可选,但推荐):
python -m venv .venv .venv\Scripts\activate # Windows -
安装定义的依赖关系
pyproject.toml(例如,使用 紫外线 或 点):pip install -e .
如果您没有使用特定的管理器,请确保
httpxemcp(FastMCP)已安装。
如何运行 MCP 服务器
服务器的主文件是 poke.py他在打电话 mcp.run(transport="stdio") 没有块 if __name__ == "__main__":然后,您可以使用:
python poke.py
通常,你 没有 直接在终端上运行 MCP;相反,将客户端(例如,VS Code中的GitHub Copilot)配置为使用此服务器作为MCP提供程序。客户端然后自动执行上述命令并通过 stdio.
可用工具
get_pokemon_info
返回 Pokémon 的详细信息:
- 诺姆
- 类型
- 技能
- 状态库(生命值、攻击、防御等)
概念呼叫示例:
get_pokemon_info(name="greninja")
输出 :
Name: Greninja
Types: water, dark
Abilities: torrent, protean
Stats: hp: 72, attack: 95, defense: 67, special-attack: 103, special-defense: 71, speed: 122
create_tournament_squad
组建一支由六个强大的神奇宝贝组成的团队参加比赛,使用顶级列表作为基础(例如Charizard,Garchomp,Lucario,Dragonite,Metagross,Gardevoir),并在PokeAPI中检查您的数据。
大致输出 :
Tournament Squad:
Charizard
Garchomp
Lucario
Dragonite
Metagross
Gardevoir
list_popular_pokemon
返回一个简单的文本列表,其中包含一些在竞争中流行的神奇宝贝:
Charizard
Garchomp
Lucario
Dragonite
Metagross
Gardevoir
如何使用 GitHub Copilot (MCP)
- 配置文件
mcp.json从 VS Code(或其他客户端)指向此项目,运行python poke.py在项目目录中。
{
"servers": {
"poke": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"C:\\Users\\Windows 10 Pro\\OneDrive\\Área de Trabalho\\IA\\pokemon\\poke.py"
]
}
}
}
-
如果需要,请重新启动Copilot / VS Code。
-
在Copilot聊天中,您可以要求,例如:
- “使用'poke'MCP服务器查找有关Greninja的信息。
- “使用神奇宝贝服务器组建比赛团队。
MCP 客户端将调用工具 get_pokemon_info, create_tournament_squad e list_popular_pokemon 如有必要。
教程步骤
uv inituv venv.venv\Scripts\activate