mcpField
G
game-mcp

game-mcp

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

game-mcp について

game-mcpは、Windows PCにインストールされたゲームを検出・管理するMCPサーバーです。複数のゲームプラットフォームやWindowsレジストリを調べ、インストール情報の取得や指定したゲームの起動を行えます。

主な機能

  1. 01複数プラットフォームのゲーム検出
  2. 02他のインストール済みプログラムからゲームを識別
  3. 03パス・容量・インストール日の確認
  4. 04プラットフォーム固有のメタデータ取得
  5. 05名前を指定したゲームの起動

活用シーン

  1. 01PCにあるゲームの一覧作成
  2. 02ゲームのインストール先の確認
  3. 03ゲームのプラットフォームと導入情報の確認
  4. 04MCPクライアント経由でのゲーム起動

MCP 対応

ゲームの検出、詳細情報の取得、起動を行うツールをMCPクライアントに提供します。実行ファイルの起動には、MCPクライアントで明示的な確認が必要です。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
nugetGameMcpServer1.0.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

ゲーム検索 MCP サーバー

NuGet

Steam、Epic Games、GOG、Windows Store/Xbox、その他のインストール済みプログラムなど、さまざまなプラットフォームから Windows PC にインストールされているゲームを検索・管理する Model Context Protocol(MCP)サーバーです。

機能

  • マルチプラットフォームのゲーム検索:以下のプラットフォームのゲームを自動的にスキャンします。

    • Steam(カスタムライブラリの場所を含む)
    • Epic Games Store
    • GOG(Good Old Games)
    • Xbox/Windows Store のゲーム
    • EA のゲーム
    • Ubisoft Connect のゲーム
    • Rockstar のゲーム
    • Battle.Net のゲーム
    • その他のインストール済みプログラム(Windows レジストリ経由)
  • 包括的なゲーム情報:以下の詳細情報を提供します。

    • ゲーム名とプラットフォーム
    • インストール先のパスと実行ファイルの場所
    • インストール日とサイズ
    • プラットフォーム固有のメタデータ
  • 利用可能な MCP ツール:

    • discover_games:すべてのプラットフォームからインストール済みのゲームを検索します
    • get_game_info:特定のゲームの詳細情報を取得します
    • launch_game:名前を指定してゲームを起動します(実行ファイルが見つかった場合)

前提条件

  • .NET 10.0 以降
  • Windows オペレーティングシステム

VS Code での使用

{
  "servers": {
    "GameMcpServer": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "[email protected]",
        "--yes"
      ]
    }
  }
}

利用可能なツール

discover_games

サポートされているすべてのプラットフォームから、インストール済みのゲームを検索します。

Claude での使用例: 「PC にインストールされているゲームをすべて検索できますか?」

返される内容: 以下を含む JSON オブジェクト:

  • ゲームの合計数
  • プラットフォームごとにグループ化されたゲーム
  • メタデータを含むすべてのゲームの詳細なリスト
get_game_info

名前を指定して、特定のゲームの詳細情報を取得します。

パラメーター:

  • gameName:検索するゲームの名前

使用例: 「Cyberpunk 2077 の情報を取得して」

launch_game

有効な実行ファイルのパスがある場合に、名前を指定してゲームを起動します。

パラメーター:

  • gameName:起動するゲームの正確な名前

使用例: 「Steam の Half-Life 2 を起動して」

仕組み

このサーバーは、複数の検索方法を使用します。

  1. Steam のゲーム:

    • レジストリから Steam のインストールパスを読み取ります
    • カスタムライブラリの場所を調べるために libraryfolders.vdf を解析します
    • steamapps/common ディレクトリをスキャンしてゲームフォルダーを検索します
  2. Epic Games:

    • %ProgramData%/Epic/EpicGamesLauncher/Data/Manifests からゲームのマニフェストを読み取ります
    • JSON マニフェストファイルを解析してゲーム情報を取得します
  3. GOG のゲーム:

    • SOFTWARE\GOG.com\Games 以下の Windows レジストリを照会します
    • ゲームのパスと実行ファイルの情報を抽出します
  4. Xbox/Windows Store:

    • %ProgramFiles%/WindowsApps ディレクトリをスキャンします
    • AppxManifest.xml ファイルを解析してアプリケーション情報を取得します
    • ゲームアプリケーションを絞り込みます
  5. レジストリのプログラム:

    • Windows のアンインストール用レジストリエントリをスキャンします
    • ヒューリスティックを使用してゲームに類似したアプリケーションを特定します
    • システムユーティリティとゲーム以外のソフトウェアを除外します

エラー処理

このサーバーは堅牢に動作するよう設計されており、以下のような場合でも処理を継続します。

  • 一部のプラットフォームがインストールされていない
  • レジストリキーにアクセスできない
  • ディレクトリへのアクセスが権限によって制限されている
  • 個々のゲームのメタデータが破損している

エラーは stderr に記録され、他のプラットフォームの検索処理は中断されません。

セキュリティに関する考慮事項

  • サーバーはシステム情報を読み取るだけで、何も変更しません
  • ゲームの起動には、MCP クライアントを通じたユーザーの明示的な確認が必要です
  • 実行ファイルの起動を除き、すべてのファイルシステムアクセスは読み取り専用です
  • レジストリへのアクセスは読み取り専用です

開発

このプロジェクトでは以下を使用します。

  • .NET 10.0
  • .NET 用 Model Context Protocol SDK
  • アプリケーションのライフサイクル管理用 Microsoft.Extensions.Hosting

コメント

MCP は初めてですか?

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

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