npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@iflow-mcp/naveenbandarage-poke-mcp

v1.0.0

Published

Pokémon information MCP server

Downloads

27

Readme

MseeP.ai Security Assessment Badge

smithery badge

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.

This server now supports HTTP transport using Server-Sent Events (SSE) for real-time communication, making it accessible over HTTP instead of just stdio.

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:

  1. Connects to the PokeAPI to fetch Pokémon data
  2. Exposes several tools through the MCP interface
  3. Processes requests from MCP clients
  4. 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
  • HTTP transport with Server-Sent Events (SSE) for MCP communication
  • Node.js built-in HTTP server

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

Running the HTTP Server

To start the server in HTTP mode:

# Start the server (defaults to port 3000)
npm start

# Or specify a custom port
PORT=8080 npm start

The server will be available at:

  • Info endpoint: http://127.0.0.1:3000/ - Server information and status
  • SSE endpoint: http://127.0.0.1:3000/sse - Server-Sent Events connection for MCP clients
  • Message endpoint: http://127.0.0.1:3000/message - POST endpoint for sending MCP messages

With Claude Desktop App (HTTP Transport)

  1. Download and install Claude Desktop App
  2. Open Claude Desktop settings
  3. Go to Developer settings and edit the config file
  4. Add the following configuration for HTTP transport:
{
  "mcpServers": {
    "pokedex": {
      "transport": {
        "type": "sse",
        "url": "http://127.0.0.1:3000/sse"
      }
    }
  }
}
  1. Start the Poke-MCP server: npm start
  2. Restart Claude Desktop
  3. You should now see the Pokémon tools available in Claude

Legacy Usage (stdio)

For backward compatibility, you can still run the server with stdio transport by reverting to the stdio implementation.

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:

  1. Define new helper functions to fetch and format data
  2. Register new tools using the server.tool() method
  3. Implement the tool logic to handle requests and return responses

License

ISC

Acknowledgments


This project demonstrates how to build custom MCP servers that can extend AI assistants with domain-specific knowledge and capabilities.