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 gives LLMs the ability to interact with Ethereum networks, manage wallets, query blockchain data, and execute smart contract operations through a standardized interface.Last updated -313232TypeScriptMIT License
- AsecurityAlicenseAqualityAn educational implementation of a Model Context Protocol server that demonstrates how to build a functional MCP server for integrating with various LLM clients like Claude Desktop.Last updated -188PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server that wraps AutoIt functionality, enabling LLMs to automate Windows desktop tasks including mouse/keyboard operations, window management, and UI control interactions.Last updated -TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that provides basic calculator functionality for LLMs, enabling them to perform mathematical operations like addition, subtraction, multiplication, division, modulo, and square root.Last updated -612512TypeScriptMIT License