PokeMCP
PokeMCP
PokeMCP es un servidor MCP (Plataforma de Comando Modular) que proporciona información detallada de Pokémon integrándose con PokeAPI . Ofrece una herramienta para obtener datos completos sobre cualquier Pokémon, incluyendo estadísticas base, tipos, habilidades (con efectos), movimientos (con efectos) y cadena de evolución.
Características
Obtiene estadísticas base, tipos y habilidades de Pokémon (con descripciones de efectos)
Recupera hasta 10 movimientos por Pokémon, incluidos los efectos de movimiento.
Proporciona la cadena de evolución completa para un Pokémon determinado.
Maneja los errores con elegancia y devuelve mensajes de error informativos
Related MCP server: PokéAPI MCP Server
Requisitos
Python 3.11.4+
httpx (para solicitudes HTTP asíncronas)
mcp.server.fastmcp (para el marco del servidor MCP)
Instalación
Clonar este repositorio:
git clone https://github.com/ChiragAgg5k/poke-mcp.git cd poke-mcpInstalar dependencias usando uv :
uv sync
Uso
Servidor de desarrollo
Ejecute el servidor usando uv (asegúrese de tener la infraestructura MCP requerida):
uv run mcp dev server.pyConectando con Claude
Ejecute el siguiente comando para conectarse con Claude:
uv run mcp install server.pyEl resultado debería verse así:
Added server 'poke-mcp' to Claude config
Successfully installed poke-mcp in Claude app Ahora puedes usar las herramientas MCP poke-mcp en Claude:
Obtener información de Pokémon
Simular batalla
Aprenda cómo conectar el servidor con otros clientes MCP como Cursor aquí .
API
Herramienta: get_pokemon_info
Obtiene información detallada sobre un Pokémon.
Argumentos
pokemon_name(str): El nombre del Pokémon (sin distinguir entre mayúsculas y minúsculas)
Devoluciones
Un diccionario con la siguiente estructura:
{
"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"]
}Manejo de errores
Si no se encuentra el Pokémon o hay un error de red, la respuesta incluirá una clave error con un mensaje descriptivo.
Herramienta: simulate_battle
Simula una batalla Pokémon entre dos Pokémon utilizando mecánicas básicas (estadísticas, tipo y efectos de estado).
Argumentos
pokemon1(str): Nombre del primer Pokémon (sin distinguir entre mayúsculas y minúsculas)pokemon2(str): Nombre del segundo Pokémon (sin distinguir entre mayúsculas y minúsculas)
Devoluciones
Un diccionario con la siguiente estructura:
{
"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"
}Manejo de errores
Si no se encuentra el Pokémon o hay un error de red, la respuesta incluirá una clave error con un mensaje descriptivo.
Licencia
Este proyecto utiliza PokeAPI y está destinado a uso educativo y no comercial.
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