Overview
Poke-MCP is a Model Context Protocol (MCP) server that provides Pokémon information through a standardized interface. It connects to the PokeAPI to fetch Pokémon data and exposes it through MCP tools that can be used by any MCP-compatible client, such as Claude Desktop App, Continue, Cline, and others.
Features
- Get information about specific Pokémon by name
- Discover random Pokémon
- Find random Pokémon from specific regions (Kanto, Johto, Hoenn, etc.)
- Get random Pokémon of specific types (Fire, Water, Electric, etc.)
- Natural language query interface for Pokémon information
How It Works
Poke-MCP is built using the Model Context Protocol, which enables AI applications to access external tools and data sources in a standardized way. The server:
- Connects to the PokeAPI to fetch Pokémon data
- Exposes several tools through the MCP interface
- Processes requests from MCP clients
- Returns formatted Pokémon information
MCP Tools
The server provides the following tools:
- get-pokemon: Get detailed information about a specific Pokémon by name
- random-pokemon: Get information about a random Pokémon
- random-pokemon-from-region: Get a random Pokémon from a specific region
- random-pokemon-by-type: Get a random Pokémon of a specific type
- pokemon-query: Answer natural language queries about Pokémon
Architecture
The server is built using:
- TypeScript
- MCP TypeScript SDK (@modelcontextprotocol/sdk)
- Zod for input validation
- Standard I/O transport for MCP communication
Installation
Installing via Smithery
To install Pokémcp for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @NaveenBandarage/poke-mcp --client claude
Manual Installation
# Clone the repository
git clone https://github.com/yourusername/poke-mcp.git
cd poke-mcp
# Install dependencies
npm install
# Build the project
npm run build
Usage
With Claude Desktop App
- Download and install Claude Desktop App
- Open Claude Desktop settings
- Go to Developer settings and edit the config file
- Add the following configuration:
{
"mcpServers": {
"pokedex": {
"command": "path/to/poke-mcp/build/index.js"
}
}
}
- Restart Claude Desktop
- You should now see the Pokémon tools available in Claude
Example Queries
Once connected to an MCP client, you can ask questions like:
- "Tell me about Pikachu"
- "Give me a random Pokémon"
- "Show me a random Pokémon from Kanto"
- "What's a random Water Pokémon?"
Project Structure
- src/index.ts: Main server implementation
- src/types.ts: TypeScript type definitions for Pokémon data
- package.json: Project dependencies and scripts
- tsconfig.json: TypeScript configuration
Adding New Features
To add new tools or enhance existing ones:
- Define new helper functions to fetch and format data
- Register new tools using the server.tool() method
- Implement the tool logic to handle requests and return responses
License
ISC
Acknowledgments
- PokeAPI for providing the Pokémon data
- Model Context Protocol for the standardized interface
This project demonstrates how to build custom MCP servers that can extend AI assistants with domain-specific knowledge and capabilities.
Poke-MCP
Project Details
- NaveenBandarage/poke-mcp
- Last Updated: 4/13/2025
Recomended MCP Servers
MCP Server for the Fillout.io API, enabling form management, response handling, and analytics.
mcp-censys is a MCP server that taps into the Censys Search API for real-time domain, IP, and FQDN...
MCP Server for PatSnap API
Microsoft Azure Data Lake Storage MCP Server
Seamlessly integrate AI agents with Chargebee using AgentKit for smarter billing and subscription workflows.
A Model Context Protocol (MCP) server for web content scanning and analysis. This server provides tools for fetching,...