mcp-pokeapi-server について
mcp-pokeapi-serverは、POKEAPIを使ってポケモン名またはIDから情報を取得し、MCPクライアントやLLMアプリに提供します。JSON-RPC 2.0 over stdioで通信し、zodで入力を検証します。
主な機能
- 01名前またはIDでポケモンを検索
- 02JSON-RPC 2.0 over stdioによる通信
- 03zodによる入力検証
活用シーン
- 01MCPクライアントでポケモン情報を検索
- 02LLMアプリで名前やIDから情報を取得
MCP 対応
このMCPサーバーはgetPokemonInfoツールをクライアントに提供し、stdio経由でJSON-RPCリクエストを受け取り、POKEAPIから情報を取得します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
プロジェクトの README よりmcp-pokeapi-server
POKEAPI と連携し、MCP(Model Context Protocol)仕様でポケモン情報を取得できるサーバーです。
概要
- MCP プロトコル(JSON-RPC 2.0 over stdio)で、LLM アプリや MCP クライアントからポケモン情報取得ツールを提供します。
- POKEAPI(https://pokeapi.co/)を利用。
- スキーマバリデーションにはzodを使用。
セットアップ
npm install
ビルド
npx tsc
開発用起動(ts-node)
npx ts-node src/index.ts
MCP クライアントからの利用例
MCP クライアントや LLM アプリから、標準入力/出力で JSON-RPC リクエストを送信します。
1. ツール一覧取得(list_tools)
{
"jsonrpc": "2.0",
"id": 1,
"method": "list_tools"
}
レスポンス例
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tools": [
{
"name": "getPokemonInfo",
"description": "ポケモン名またはIDから、POKEAPIでポケモン情報を取得します。",
"input_schema": { ... },
"output_schema": { ... }
}
]
}
}
2. ポケモン情報取得(call_tool)
{
"jsonrpc": "2.0",
"id": 2,
"method": "call_tool",
"params": {
"name": "getPokemonInfo",
"arguments": {
"nameOrId": "pikachu"
}
}
}
レスポンス例
{
"jsonrpc": "2.0",
"id": 2,
"result": {
"content": [
{
"type": "json",
"data": {
"name": "pikachu",
"id": 25,
"height": 4,
"weight": 60,
"types": ["electric"]
}
}
]
}
}
テスト
npm test
参考
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。