Ippei523/pokemon-mcp-server
If you are the rightful owner of pokemon-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
This is a Model Context Protocol (MCP) server utilizing the PokeAPI to provide tools for retrieving Pokemon information.
get_pokemon
Retrieve information about a specific Pokemon by name.
get_pokemon_type
Fetch information about a specific Pokemon type by name.
get_move
Retrieve details about a specific Pokemon move by name.
get_ability
Fetch information about a specific Pokemon ability by name.
get_evolution_chain
Obtain information about a Pokemon's evolution chain by ID.
search_pokemon
Search for Pokemon using a query string.
get_pokemon_list
Retrieve a list of Pokemon with optional pagination.
Pokemon MCP Server
PokeAPIを利用したModel Context Protocol (MCP)サーバーです。Pokemonの情報を取得するためのツールを提供します。
機能
- Pokemon情報の取得
- Pokemon種族情報の取得
- Pokemonタイプ情報の取得
- Pokemon技情報の取得
- Pokemon特性情報の取得
- 進化チェーン情報の取得
- Pokemon検索
- Pokemonリスト取得(ページネーション対応)
インストール
npm install
ビルド
npm run build
開発
開発モードで実行
npm run dev
ビルドしてから実行
npm run build
npm start
テスト
全テスト実行
npm test
単体テストのみ
npm run test:unit
E2Eテストのみ
npm run test:e2e
テストカバレッジ
npm run test:coverage
統合テスト(実際のAPIを使用)
npm run test:integration
MCP クライアントでの使用方法
Claude Desktop での設定
Claude Desktop の設定ファイル(claude_desktop_config.json
)に以下を追加:
{
"mcpServers": {
"pokemon": {
"command": "node",
"args": ["/path/to/pokemon-mcp-server/dist/index.js"]
}
}
}
使用可能なツール
-
get_pokemon - Pokemon情報取得
引数: name (string) - Pokemon名
-
get_pokemon_type - Pokemonタイプ情報取得
引数: name (string) - タイプ名
-
get_move - Pokemon技情報取得
引数: name (string) - 技名
-
get_ability - Pokemon特性情報取得
引数: name (string) - 特性名
-
get_evolution_chain - 進化チェーン情報取得
引数: id (number) - 進化チェーンID
-
search_pokemon - Pokemon検索
引数: query (string) - 検索クエリ
-
get_pokemon_list - Pokemonリスト取得
引数: limit (number, optional) - 取得件数(デフォルト: 20) offset (number, optional) - オフセット(デフォルト: 0)
使用例
Claude Desktop でこのMCPサーバーを設定後、以下のような質問ができます:
- "ピカチュウの情報を教えて"
- "炎タイプのポケモンについて教えて"
- "10万ボルトという技について教えて"
- "静電気という特性について教えて"
- "pikaで始まるポケモンを検索して"
プロジェクト構造
src/
├── client/ # PokeAPI クライアント
│ └── pokeapi-client.ts
├── server/ # MCP サーバー設定
│ └── mcp-server.ts
├── tools/ # ツール定義とハンドラー
│ ├── tool-definitions.ts
│ └── tool-handlers.ts
├── config/ # 設定ファイル
│ └── server-config.ts
├── types/ # TypeScript 型定義
│ ├── index.ts
│ ├── common.ts
│ ├── pokemon.ts
│ ├── species.ts
│ ├── type.ts
│ ├── move.ts
│ ├── ability.ts
│ └── evolution.ts
└── index.ts # エントリーポイント
依存関係
@modelcontextprotocol/sdk
- MCP SDKaxios
- HTTP クライアント
開発依存関係
typescript
- TypeScript コンパイラjest
- テストフレームワークts-jest
- Jest TypeScript サポートnock
- HTTP モッキング@types/node
- Node.js 型定義
ライセンス
MIT