home / mcp / pokemon mcp server

Pokemon MCP Server

Pokemon MCP (Model Context Protocol) system - A monorepo with MCP server and data ingestion service for Pokemon data

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "grovesjosephn-pokemcp": {
      "url": "https://example-mcp/pokemon",
      "headers": {
        "POKEMON_DATA_DIR": "/path/to/pokemcp/data"
      }
    }
  }
}

You run a dedicated MCP server that serves Pokemon data through a set of standardized tools. It stores complete Pokemon data locally and can ingest fresh data from external sources, providing fast, consistent access for clients and explorers alike.

How to use

You connect to the server using an MCP client or inspector to access available tools. The server exposes a set of endpoints that let you fetch details for a specific Pokemon, search by name or type, compare Pokemon stats, and understand type effectiveness. Use the client’s standard MCP workflow to locate the Pokemon data, run a search, or compare two Pokemon side by side. The server reads data from a local SQLite database and responds with structured Pokemon information that includes stats, types, abilities, and more.

How to install

Prerequisites you need before installing: Node.js 18 or newer, PNPM, and Git. You will clone the project, install dependencies, set up the local database, and build all packages before starting the server.

# Prerequisites
node -v
pnpm -v
git --version

# Clone the repository
git clone https://github.com/grovesjosephn/pokemcp.git
cd pokemcp

# Install dependencies
pnpm install

# Set up the database
./scripts/setup.sh

# Build all packages
pnpm build

Additional setup and usage notes

Data ingestion runs separately to populate the SQLite database from PokeAPI. Start the ingestion service when you want to refresh or repopulate data in the database.

# Run data ingestion (separate process)
cd packages/pokemon-mcp-ingestion
pnpm start

Claude Desktop integration

You can integrate the Pokemon MCP Server with Claude Desktop using one of the supported methods. The recommended approach is to install the server package globally after building, then point Claude to the executable with an environment variable for the data directory.

Option 1: NPM Package (Recommended) sets up a global executable and configures Claude to run it.

Option 2 and Option 3 provide alternatives to run the server directly or in development mode with explicit command configurations.

Available tools

get_pokemon

Fetch detailed information for a specific Pokemon by name or ID, returning base data such as stats, types, and abilities.

search_pokemon

Search Pokemon by name, type, or other criteria, returning a list of matching Pokemon with key attributes.

get_strongest_pokemon

Identify the strongest Pokemon based on selected stats and criteria.

get_pokemon_stats

Retrieve detailed statistics for a given Pokemon, including HP, Attack, Defense, and more.

compare_pokemon

Compare stats and attributes between two Pokemon to highlight where one outperforms the other.

get_type_effectiveness

Provide type effectiveness data showing how Pokemon types interact in battles.