Skip to main content
Glama
grovesjosephn

Pokemon MCP Server

Pokemon MCP-Server

Ein Model Context Protocol (MCP) Server, der Pokemon-Daten über standardisierte Tools bereitstellt. Dieses Monorepo enthält sowohl den MCP-Server als auch einen Datenerfassungsdienst zum Abrufen von Pokemon-Daten von der PokeAPI.

Architektur

Dies ist ein PNPM-Monorepo mit zwei Hauptpaketen:

  • pokemon-mcp-server: MCP-Server, der Pokemon-Daten über standardisierte Tools bereitstellt

  • pokemon-mcp-ingestion: Datenerfassungsdienst, der Daten von der PokeAPI abruft und in SQLite speichert

Das System verwendet eine gemeinsame SQLite-Datenbank (data/pokemon.sqlite) für die Speicherung der Pokemon-Daten.

Related MCP server: PokeMCP

Funktionen

Verfügbare MCP-Tools

  • get_pokemon - Detaillierte Informationen zu einem bestimmten Pokemon abrufen

  • search_pokemon - Pokemon nach Name, Typ oder anderen Kriterien suchen

  • get_strongest_pokemon - Das stärkste Pokemon anhand verschiedener Statistiken finden

  • get_pokemon_stats - Detaillierte Statistiken für ein Pokemon abrufen

  • compare_pokemon - Statistiken zwischen zwei Pokemon vergleichen

  • get_type_effectiveness - Informationen zur Typ-Effektivität abrufen

Datenabdeckung

  • Vollständige Pokemon-Daten von der PokeAPI

  • Statistiken, Typen, Fähigkeiten und mehr

  • Beziehungen zur Typ-Effektivität

  • Durchsuchbar nach mehreren Kriterien

Schnellstart

Voraussetzungen

  • Node.js 18+

  • PNPM

  • Git

Installation

  1. Repository klonen:

git clone https://github.com/grovesjosephn/pokemcp.git
cd pokemcp
  1. Abhängigkeiten installieren:

bun install
  1. Datenbank einrichten:

./scripts/setup.sh
  1. Alle Pakete bauen:

bun run build

Verwendung

MCP-Server ausführen

# Development mode (with hot reload)
bun run dev

# Production mode
cd packages/pokemon-mcp-server
bun run start

Testen mit dem MCP Inspector

# Visual GUI testing
cd packages/pokemon-mcp-server
bun run inspect

# CLI testing
bun run inspect:cli

Datenerfassung

# Run data ingestion
cd packages/pokemon-mcp-ingestion
bun run start

Claude Desktop-Integration

Option 1: NPM-Paket (Empfohlen)

Installieren Sie den Server global:

cd packages/pokemon-mcp-server
bun run build
npm link

Konfigurieren Sie Claude Desktop:

{
  "mcpServers": {
    "pokemon": {
      "command": "pokemon-mcp-server",
      "env": {
        "POKEMON_DATA_DIR": "/path/to/pokemcp/data"
      }
    }
  }
}

Option 2: Direkte Node-Ausführung

{
  "mcpServers": {
    "pokemon": {
      "command": "node",
      "args": ["/path/to/pokemcp/packages/pokemon-mcp-server/dist/server.js"],
      "env": {
        "POKEMON_DATA_DIR": "/path/to/pokemcp/data"
      }
    }
  }
}

Option 3: Entwicklungsmodus

{
  "mcpServers": {
    "pokemon": {
      "command": "bun",
      "args": ["/path/to/pokemcp/packages/pokemon-mcp-server/server.ts"],
      "env": {
        "POKEMON_DATA_DIR": "/path/to/pokemcp/data"
      }
    }
  }
}

Entwicklung

Workspace-Befehle

bun run build         # Build all packages
bun run dev           # Run all packages in development mode
bun run test          # Run tests for all packages
bun run format        # Format all files
bun run format:check  # Check formatting

Server-Paket-Befehle

cd packages/pokemon-mcp-server

bun run build         # Compile TypeScript
bun run dev           # Watch mode
bun run start         # Run server
bun run inspect       # Run MCP Inspector GUI
bun run inspect:cli   # Run MCP Inspector CLI
bun test              # Run tests

Ingestion-Paket-Befehle

cd packages/pokemon-mcp-ingestion

bun run build         # Compile TypeScript
bun run dev           # Watch mode
bun run start         # Run ingestion
bun test              # Run tests

Testen

Das Projekt verwendet den integrierten Test-Runner von bun:

# Run all tests
bun run test

# Run specific package tests
cd packages/pokemon-mcp-server && bun test
cd packages/pokemon-mcp-ingestion && bun test

Datenbankschema

Die SQLite-Datenbank enthält Tabellen für:

  • pokemon - Grundlegende Pokemon-Informationen

  • stats - Pokemon-Statistiken (KP, Angriff, Verteidigung, etc.)

  • types - Pokemon-Typen und Beziehungen

  • abilities - Pokemon-Fähigkeiten

Mitwirken

  1. Forken Sie das Repository

  2. Erstellen Sie einen Feature-Branch

  3. Führen Sie Ihre Änderungen durch

  4. Fügen Sie Tests hinzu

  5. Führen Sie bun run format aus

  6. Senden Sie einen Pull Request

Commit-Richtlinien

Verwenden Sie das Conventional-Commit-Format:

<type>[optional scope]: <description>

Examples:
- feat(server): add Pokemon evolution chain tool
- fix(ingestion): handle missing species URL gracefully
- docs: update integration guide

Lizenz

MIT-Lizenz - siehe LICENSE-Datei für Details

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    An MCP server that provides detailed Pokémon information by integrating with the PokeAPI, allowing users to fetch comprehensive data about Pokémon and simulate battles.
    2
    2
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    An 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.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    A 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.
    -