mcpField
G
gamedb-port

gamedb-port

ローカル
github.com/CloudCorpRecordsゲーム・エンタメ01 週間前に更新

gamedb-port について

gamedb-portは、ゲーム検索、詳細情報、今後の発売予定、カスタムクエリ向けに、IGDBへコマンドラインとMCPからアクセスするツールです。Twitch OAuth認証を使い、生のApicalypseクエリにも対応します。

主な機能

  1. 01名前によるゲーム検索
  2. 02ゲームIDから全レコードを取得
  3. 03期待度の高い発売予定ゲームを一覧
  4. 04Apicalypseのカスタムクエリを送信
  5. 05コマンドラインとstdio MCPサーバーを提供

活用シーン

  1. 01タイトルに一致するゲームの検索
  2. 02ゲームのIGDBレコード取得
  3. 03期待度の高い発売予定ゲームの確認
  4. 04Apicalypseで他のIGDBエンドポイントを照会

MCP 対応

stdio MCPサーバーは、ゲーム検索、詳細、発売予定、IGDBへのカスタムクエリ用ツールを公開します。リクエストには環境変数で指定したTwitch OAuth認証情報を使います。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-gamedb-port": {
"command": "npx",
"args": [
"-y",
"@reneturcios/gamedb-port"
]
}
}
}
起動コマンドnpx -y @reneturcios/gamedb-port

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@reneturcios/gamedb-port0.1.0
ocighcr.io/cloudcorprecords/gamedb-port:0.1.0

ツール

4

掲載時のツール一覧 · 1 週間前に更新

パラメーター型必須説明
limitnumberいいえ返す結果の最大件数。1~500 の範囲です。
querystringはい検索するゲーム名。
fieldsstringいいえ返す IGDB フィールドをカンマ区切りで指定します。

詳細

gamedb-port

gamedb-port は IGDB のビデオゲームデータベースを検索します。ゲーム名で検索したり、特定のゲームの完全なレコードを取得したり、期待度順に並べた近日発売タイトルの一覧を取得したり、任意の IGDB エンドポイントに生の Apicalypse クエリを送信したりできます。1 つのバイナリで、コマンドラインインターフェースと stdio MCP サーバーの両方を提供します。

アクセスには、IGDB の公式仕様を使用します。IGDB の認証には Twitch OAuth を使用します。Twitch アプリケーションの認証情報を IGDB_CLIENT_ID と IGDB_CLIENT_SECRET に設定してください。このツールは、クライアント認証情報を使ってアクセストークンを取得し、プロセス内にキャッシュして、すべての呼び出しに Client-ID ヘッダーを付けて送信します。いずれかの変数が設定されていない場合、コマンドはリクエストを送信する前に失敗します。

インストール

IGDB_CLIENT_ID=... IGDB_CLIENT_SECRET=... npx @reneturcios/gamedb-port search zelda

または、コンテナーイメージを実行します。

docker run -i -e IGDB_CLIENT_ID=... -e IGDB_CLIENT_SECRET=... ghcr.io/cloudcorprecords/gamedb-port

コンテナーはデフォルトで MCP サーバーを起動します(下記を参照)。CLI として使用するには、CLI 引数を渡します。

CLI

gamedb-port search zelda --limit 5
gamedb-port search "final fantasy" --fields name,rating --limit 20
gamedb-port details 1942
gamedb-port details 1942 --fields name,summary,genres.name
gamedb-port anticipated
gamedb-port anticipated --limit 10 --min-hypes 50
gamedb-port query genres "fields name,slug; limit 5;"

gamedb-port --version

コマンドは、上流から返された JSON ペイロードを出力します。終了コード:成功時は 0、呼び出しの失敗時(認証情報の不足、上流 API のエラー、または無効な引数値)は 1、使用方法のエラー時は 2 です。

--fields が指定されていない場合、クエリではデフォルトのフィールドセットをリクエストします。 name,cover.url,first_release_date,genres.name,platforms.name,rating,summary。

MCP サーバー

1 つのバイナリで、どちらの用途にも対応します。mcp サブコマンドを実行すると、stdio MCP サーバーが起動します。

npx -y @reneturcios/gamedb-port mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "gamedb-port": {
      "command": "npx",
      "args": ["-y", "@reneturcios/gamedb-port", "mcp"],
      "env": {
        "IGDB_CLIENT_ID": "your-twitch-client-id",
        "IGDB_CLIENT_SECRET": "your-twitch-client-secret"
      }
    }
  }
}
ツール
ツール入力返される内容
search_gamesquery(必須)、fields、limit(1~500、デフォルトは 10)名前で検索した一致するゲーム。
get_game_detailsgame_id(必須)、fields1 つのゲームの完全な IGDB レコード。
get_most_anticipated_gamesfields、limit(1~500、デフォルトは 25)、min_hypes(デフォルトは 25)未来の発売日が設定された近日発売ゲーム。hype の降順で並びます。
custom_queryendpoint、query(どちらも必須)呼び出し元が指定した Apicalypse クエリをそのエンドポイントに送信して返される内容。

整形済みの 3 つのツールは、Apicalypse のリクエスト本文を自動的に作成します。 search_games は search "<query>"; fields ...; limit ...; に、 get_game_details は fields ...; where id = <game_id>; に変換されます。また、 get_most_anticipated_games は first_release_date > now & hypes >= <min_hypes> で絞り込み、hypes desc で並べ替えます。custom_query は、query の本文をそのまま https://api.igdb.com/v4/<endpoint> に送信します。

開発

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。