PokéAPI MCP Server
Give your AI assistant access to the entire Pokémon universe
A Model Context Protocol (MCP) server in TypeScript that wraps PokéAPI v2 — the largest Pokémon RESTful API (1300+ species, 900+ moves, 300+ abilities, 18 types). Ships as both an npm package and a VS Code extension.
Packages
| Package | Description | Docs |
|---|---|---|
pokeapi-mcp-server |
MCP server (npm/CLI) | README → |
pokeapi-mcp-extension |
VS Code extension | README → |
Quick Start
Option 1: VS Code Extension (recommended)
Install from the marketplace — the extension handles everything automatically:
ext install bhayanak.pokeapi-mcp-extension
VS Code provides built-in start / stop / restart controls. Your AI assistant gets access to all 12 tools immediately.
Option 2: npm / CLI
npm install -g pokeapi-mcp-server
pokeapi-mcp-server
Or use with Claude Desktop:
{
"mcpServers": {
"pokeapi": {
"command": "npx",
"args": ["-y", "pokeapi-mcp-server"]
}
}
}
12 MCP Tools
| Category | Tools | What They Do |
|---|---|---|
| Pokémon | pokemon_get, pokemon_search |
Lookup & search by type/generation |
| Types | pokemon_get_type, pokemon_type_matchup |
Type details & effectiveness calculator |
| Moves | pokemon_get_move, pokemon_search_moves |
Move database & filtered search |
| Abilities | pokemon_get_ability |
Ability effects & Pokémon lists |
| Evolution | pokemon_get_evolution_chain |
Full evolution trees with conditions |
| Species | pokemon_get_species |
Flavor text, habitat, egg groups |
| Items | pokemon_get_item |
Item details, effects, categories |
| Analysis | pokemon_compare, pokemon_type_coverage |
Side-by-side stats & team coverage |
License
MIT © bhayanak
Quick Start
# Install dependencies
pnpm install
# Build all packages
pnpm run build
# Run the MCP server (stdio mode)
cd packages/pokeapi-server && pnpm run dev
MCP Tools
| Tool | Description |
|---|---|
pokemon_get |
Get detailed Pokémon data (stats, types, abilities, moves) |
pokemon_search |
Search Pokémon by type, generation, or browse |
pokemon_get_type |
Get type details and damage relations |
pokemon_type_matchup |
Check type effectiveness |
pokemon_get_move |
Get move details (power, accuracy, effect) |
pokemon_search_moves |
Search moves by criteria |
pokemon_get_ability |
Get ability details |
pokemon_get_evolution_chain |
Get evolution chain with conditions |
pokemon_get_species |
Get species data (flavor text, habitat, catch rate) |
pokemon_get_item |
Get item details |
pokemon_compare |
Compare 2-4 Pokémon side-by-side |
pokemon_type_coverage |
Analyze team type coverage |
Configuration
| Variable | Default | Description |
|---|---|---|
POKEAPI_MCP_BASE_URL |
https://pokeapi.co/api/v2 |
API base URL |
POKEAPI_MCP_CACHE_TTL_MS |
86400000 (24hr) |
Cache TTL |
POKEAPI_MCP_CACHE_MAX_SIZE |
500 |
Max cache entries |
POKEAPI_MCP_TIMEOUT_MS |
10000 |
HTTP timeout |
POKEAPI_MCP_LANGUAGE |
en |
Preferred language |
Development
pnpm run typecheck # TypeScript type checking
pnpm run lint # ESLint with security rules
pnpm run test # Run tests
pnpm run build # Build all packages
License
MIT