MCP ゲームボーイ サーバー
概要
serverboy用のモデルコンテキストプロトコル(MCP)サーバー。LLMがGameBoyエミュレータと連携できるようにします。LLMは…
- ROMをロードする
- キーを押す
- ゲームボーイの画面を見てください
- フレームをスキップする
あなたはできる...
- @modelcontextprotocol/inspector を使用してゲームボーイ エミュレータを制御する
- http://localhost:3001/emulator のWeb インターフェースを使用してゲームボーイ エミュレーターを制御し (ROM をアップロードします)
- お気に入りのMCPクライアントにゲームボーイエミュレーターをインストールします
特徴
- stdioとSSEトランスポートの両方をサポート
- GameBoy のコントロール用のツールを提供します (上、下、左、右、A、B、スタート、選択)
- さまざまなROMをロードするためのツールを提供します
- 現在の画面を取得するためのツールを提供します
- すべてのツールは最新のスクリーンフレームを含むImageContentを返します
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の GameBoy Emulator Server を自動的にインストールするには:
FLUJOへのインストール
- サーバーの追加をクリック
- Github URL をコピーして FLUJO に貼り付けます
- 「解析」、「複製」、「インストール」、「ビルド」、「保存」をクリックします。
手動インストール
設定ファイルによるインストール
!!注意: 多くのMCPクライアントでは、.env変数のROMパスを絶対パスとして指定する必要があります。
構成ファイルを介してこの MCP サーバーを Cline または他の MCP クライアントと統合するには、次の手順を実行します。
- Cline 設定を開きます:
- VS Codeで、「ファイル」->「設定」->「設定」に移動します。
- 「Cline MCP 設定」を検索
- 「settings.jsonで編集」をクリック
mcpServers
オブジェクトにサーバー構成を追加します。/path/to/mcp-gameboy/dist/index.js
、プロジェクトディレクトリ内のindex.js
ファイルへの実際のパスに置き換えてください。Windows の場合は、パスにスラッシュ (/) または二重のバックスラッシュ (\\) を使用してください。- 設定ファイルを保存します。Cline は自動的にサーバーに接続します。
使用法
環境変数
!!注意: 多くのMCPクライアントでは、.env変数のROMパスを絶対パスとして指定する必要があります。
次の変数を含む.env
ファイルをルート ディレクトリに作成します。
stdioモードで実行
stdioモードでは、サーバーはROM_PATH
環境変数で指定されたROMパスを使用します。ブラウザウィンドウが開き、ゲームボーイの画面が表示されます。
SSEモードで実行
SSE モードでは、サーバーは ROM 選択用の Web ページを提供する Express サーバーを起動します。
次に、ブラウザでhttp://localhost:3001
を開き、ROM を選択します。
ツール
サーバーは次のツールを提供します。
press_up
: ゲームボーイのUPボタンを押すpress_down
: ゲームボーイのDOWNボタンを押しますpress_left
: ゲームボーイの左ボタンを押しますpress_right
: ゲームボーイの右ボタンを押しますpress_a
: ゲームボーイのAボタンを押すpress_b
: ゲームボーイのBボタンを押すpress_start
: ゲームボーイのスタートボタンを押しますpress_select
: ゲームボーイのSELECTボタンを押すload_rom
: GameBoy ROMファイルをロードするget_screen
: 現在のゲームボーイ画面を取得する
すべてのツールは、最新の画面フレームを含む ImageContent を返します。
実装の詳細
このサーバーは、Model Context Protocol (MCP) TypeScript SDKを使用して構築されています。以下のものを使用しています。
- サーバー実装用の
@modelcontextprotocol/sdk/server/mcp.js
のMcpServer
- stdio トランスポート用の
@modelcontextprotocol/sdk/server/stdio.js
からのStdioServerTransport
- SSE トランスポート用の
@modelcontextprotocol/sdk/server/sse.js
からのSSEServerTransport
- ゲームボーイエミュレーション用の
serverboy
- SSEモードのWebサーバー用の
express
- ゲームボーイ画面をレンダリングするための
canvas
ライセンス
マサチューセッツ工科大学
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that enables LLMs to interact with Salesforce data through SOQL queries, SOSL searches, and various API operations including record management.Last updated -10126PythonMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables LLMs to interact with web pages, take screenshots, generate test code, scrape web pages, and execute JavaScript in a real browser environment.Last updated -293911TypeScriptMIT License
- -securityFlicense-qualityA Model Context Protocol server that interfaces with PokeAPI to provide Pokémon information to LLM applications through JSON-RPC over stdio.Last updated -TypeScript
- AsecurityFlicenseAqualityA Model Context Protocol server that enables LLMs to manage network topologies, labs, nodes, and configurations in the EVE-NG network emulation platform through a standardized interface.Last updated -261Python