PokeMCP
PokeMCP
PokeMCP 是一个 MCP(模块化指挥平台)服务器,通过与PokeAPI集成,提供宝可梦的详细信息。它提供了一个工具来获取任何宝可梦的综合数据,包括基础属性、类型、能力(含效果)、招式(含效果)和进化链。
特征
获取神奇宝贝的基本统计数据、类型和能力(附带效果描述)
检索每个宝可梦最多 10 个招式,包括招式效果
提供特定神奇宝贝的完整进化链
妥善处理错误并返回信息丰富的错误消息
Related MCP server: PokéAPI MCP Server
要求
Python 3.11.4+
httpx (用于异步 HTTP 请求)
mcp.server.fastmcp (用于 MCP 服务器框架)
安装
克隆此存储库:
git clone https://github.com/ChiragAgg5k/poke-mcp.git cd poke-mcp使用uv安装依赖项:
uv sync
用法
开发服务器
使用 uv 运行服务器(确保您拥有所需的 MCP 基础设施):
uv run mcp dev server.py与克劳德联系
运行以下命令连接 Claude:
uv run mcp install server.py结果应该如下所示:
Added server 'poke-mcp' to Claude config
Successfully installed poke-mcp in Claude app 现在您可以在 Claude 中使用poke-mcp MCP 工具:
获取口袋妖怪信息
模拟战斗
在此处了解如何将服务器与其他 MCP 客户端(如 Cursor)连接。
API
工具: get_pokemon_info
获取有关神奇宝贝的详细信息。
参数
pokemon_name(str): 神奇宝贝的名字(不区分大小写)
返回
具有以下结构的字典:
{
"name": "pikachu",
"id": 25,
"base_stats": {
"hp": 35,
"attack": 55,
...
},
"types": ["electric"],
"abilities": [
{"name": "static", "effect": "May paralyze on contact."},
...
],
"moves": [
{"name": "thunder-shock", "effect": "Has a 10% chance to paralyze the target."},
...
],
"evolution_chain": ["pichu", "pikachu", "raichu"]
}错误处理
如果未找到 Pokémon 或者出现网络错误,响应将包含带有描述性消息的error键。
工具: simulate_battle
使用核心机制(统计数据、类型和状态效果)模拟两个神奇宝贝之间的神奇宝贝战斗。
参数
pokemon1(str): 第一个神奇宝贝的名字(不区分大小写)pokemon2(str): 第二只神奇宝贝的名字(不区分大小写)
返回
具有以下结构的字典:
{
"pokemon1": "pikachu",
"pokemon2": "charizard",
"initial_hp": {
"pikachu": 35,
"charizard": 78
},
"battle_log": [
"Turn 1:",
"charizard uses mega-punch and deals 75 damage! (pikachu HP: 0)",
"pikachu fainted!",
"Winner: charizard!"
],
"winner": "charizard"
}错误处理
如果未找到 Pokémon 或者出现网络错误,响应将包含带有描述性消息的error键。
执照
该项目使用PokeAPI ,旨在用于教育和非商业用途。
Available Tools
2 toolsget_pokemon_infoB
Get comprehensive information about a Pokémon.
Includes base stats, types, abilities, moves (with effects), and evolution information.
Args:
pokemon_name: The name of the Pokémon to get information about.
Returns:
A dictionary containing the Pokémon's information
| Name | Required | Description | Default |
|---|---|---|---|
| pokemon_name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions what information is returned, it doesn't address important behavioral aspects like whether this is a read-only operation (implied but not stated), potential rate limits, authentication requirements, error conditions, or data freshness. The description is insufficient for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, included information, Args, Returns) and uses minimal, focused sentences. Every sentence contributes meaning. It could be slightly more concise by integrating the purpose and included information more tightly, but overall it's efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (retrieving comprehensive Pokémon data), no annotations, no output schema, and 0% schema coverage, the description is minimally adequate. It covers the basic purpose and parameter meaning but lacks behavioral context and detailed return format. The absence of an output schema means the description should ideally explain the return structure more thoroughly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage and only one parameter, the description adds significant value by explaining that 'pokemon_name' refers to 'The name of the Pokémon to get information about.' This clarifies the parameter's purpose beyond what the bare schema provides. However, it doesn't specify format requirements (e.g., case sensitivity, special characters) or provide examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get') and resource ('comprehensive information about a Pokémon'), and lists the types of information included (base stats, types, abilities, moves, evolution). However, it doesn't explicitly differentiate from the sibling tool 'simulate_battle', which serves a completely different purpose, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. While the sibling tool 'simulate_battle' is clearly different (simulation vs. information retrieval), there's no explicit mention of alternatives or context for usage decisions. The description only states what the tool does, not when it should be selected.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_battleC
Simulate a Pokémon battle between two Pokémon using core mechanics.
Args:
pokemon1: Name of the first Pokémon
pokemon2: Name of the second Pokémon
Returns:
Battle log and winner
| Name | Required | Description | Default |
|---|---|---|---|
| pokemon1 | Yes | ||
| pokemon2 | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool simulates a battle and returns a battle log and winner, which covers basic output. However, it lacks details on behavioral traits such as how the simulation works (e.g., deterministic vs. random, level or stat considerations), error handling for invalid Pokémon names, or any rate limits or side effects. This leaves significant gaps for a simulation tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core purpose, followed by bullet points for args and returns. There's no wasted text, and the structure is clear. However, the bullet points could be more integrated into prose for optimal flow, but it remains efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a simulation tool with no annotations, 0% schema description coverage, and no output schema, the description is incomplete. It covers the basic purpose and parameters but lacks details on how the simulation behaves, what the battle log includes, error cases, or prerequisites. For a tool that likely involves game mechanics and potential variability, this leaves too much unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal semantics beyond the input schema: it specifies that parameters are 'Name of the first Pokémon' and 'Name of the second Pokémon', which clarifies their purpose as Pokémon names. However, with 0% schema description coverage and 2 parameters, this doesn't fully compensate for the lack of schema details (e.g., format constraints, valid Pokémon names). It provides basic meaning but leaves gaps, aligning with the baseline for partial coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Simulate a Pokémon battle between two Pokémon using core mechanics.' It specifies the verb ('simulate'), resource ('Pokémon battle'), and scope ('between two Pokémon'), which is clear and specific. However, it doesn't explicitly distinguish this from the sibling tool 'get_pokemon_info', which appears to be for retrieving information rather than simulation, so it misses full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'core mechanics' but doesn't explain what that entails or when to choose simulation over other actions like getting Pokémon info. There are no explicit when/when-not statements or named alternatives, leaving usage context implied at best.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
The two tools have completely distinct purposes: get_pokemon_info retrieves detailed Pokémon data, while simulate_battle runs battle simulations. There is no overlap or ambiguity between these functions, making tool selection straightforward for an agent.
Both tools follow a consistent verb_noun naming pattern (get_pokemon_info, simulate_battle) with clear, descriptive names that accurately reflect their functions. The naming convention is uniform throughout the tool set.
With only 2 tools, this server feels severely under-scoped for a Pokémon domain. While the tools cover information retrieval and battle simulation, there are obvious gaps in functionality like listing Pokémon, managing teams, or accessing other game mechanics, making the tool count insufficient for comprehensive Pokémon-related tasks.
The tool surface is significantly incomplete for a Pokémon server. It lacks basic operations such as listing Pokémon, searching by criteria, or accessing other game elements like items or locations. The two existing tools provide limited coverage, leaving agents unable to perform many expected Pokémon-related workflows.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP server that integrates with Discord to provide AI-powered features.
This MCP server provides seamless access to Malaysia's government open data, including datasets, w…
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn MCP server implementation that enables users to interact with the PokeAPI to fetch Pokemon information through natural language queries.
- FlicenseNot gradedqualityDmaintenanceAn MCP (Multi-Agent Conversation Protocol) Server that provides an interface to access Pokémon data through the PokéAPI, enabling agents to retrieve information about Pokémon species, abilities, moves, and more via natural language.
- FlicenseNot gradedqualityDmaintenanceAn MCP server that provides standardized access to Pokemon data, allowing users to search, compare, and retrieve detailed information about Pokemon through natural language tools.5
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides comprehensive Pokemon data and battle simulation capabilities to AI assistants. It enables users to access detailed stats, types, and moves while simulating battles with realistic mechanics like type effectiveness and status effects.
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ChiragAgg5k/poke-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server