Skip to main content
Glama

MCP ゲームボーイ サーバー

鍛冶屋のバッジ

概要

serverboy用のモデルコンテキストプロトコル(MCP)サーバー。LLMがGameBoyエミュレータと連携できるようにします。LLMは…

  • ROMをロードする

  • キーを押す

  • ゲームボーイの画面を見てください

  • フレームをスキップする

あなたはできる...

  • @modelcontextprotocol/inspector を使用してゲームボーイ エミュレータを制御する

  • http://localhost:3001/emulator のWeb インターフェースを使用してゲームボーイ エミュレーターを制御し (ROM をアップロードします)

  • お気に入りのMCPクライアントにゲームボーイエミュレーターをインストールします

スクリーンショット 2025-04-25 183528

スクリーンショット 2025-04-25 081510

画像

Related MCP server: Playwright MCP Server

特徴

  • stdioとSSEトランスポートの両方をサポート

  • GameBoy のコントロール用のツールを提供します (上、下、左、右、A、B、スタート、選択)

  • さまざまなROMをロードするためのツールを提供します

  • 現在の画面を取得するためのツールを提供します

  • すべてのツールは最新のスクリーンフレームを含むImageContentを返します

インストール

Smithery経由でインストール

Smithery経由で Claude Desktop 用の GameBoy Emulator Server を自動的にインストールするには:

npx -y @smithery/cli install @mario-andreschak/mcp-gameboy --client claude

FLUJOへのインストール

  1. サーバーの追加をクリック

  2. Github URL をコピーして FLUJO に貼り付けます

  3. 「解析」、「複製」、「インストール」、「ビルド」、「保存」をクリックします。

手動インストール

# Clone the repository git clone https://github.com/yourusername/mcp-gameboy.git cd mcp-gameboy # Install dependencies npm install # Build the project npm run build

設定ファイルによるインストール

!!注意: 多くのMCPクライアントでは、.env変数のROMパスを絶対パスとして指定する必要があります。

構成ファイルを介してこの MCP サーバーを Cline または他の MCP クライアントと統合するには、次の手順を実行します。

  1. Cline 設定を開きます:

    • VS Codeで、「ファイル」->「設定」->「設定」に移動します。

    • 「Cline MCP 設定」を検索

    • 「settings.jsonで編集」をクリック

  2. mcpServersオブジェクトにサーバー構成を追加します。

    { "mcpServers": { "mcp-gameboy": { "command": "node", "args": [ "/path/to/mcp-gameboy/dist/index.js" ], "disabled": false, "autoApprove": [] } } }
  3. /path/to/mcp-gameboy/dist/index.js 、プロジェクトディレクトリ内のindex.jsファイルへの実際のパスに置き換えてください。Windows の場合は、パスにスラッシュ (/) または二重のバックスラッシュ (\\) を使用してください。

  4. 設定ファイルを保存します。Cline は自動的にサーバーに接続します。

使用法

環境変数

!!注意: 多くのMCPクライアントでは、.env変数のROMパスを絶対パスとして指定する必要があります。

次の変数を含む.envファイルをルート ディレクトリに作成します。

# Server configuration PORT=3001 # ROM path for stdio mode ROM_PATH=./roms/dangan.gb

stdioモードで実行

stdioモードでは、サーバーはROM_PATH環境変数で指定されたROMパスを使用します。ブラウザウィンドウが開き、ゲームボーイの画面が表示されます。

npm run start

SSEモードで実行

SSE モードでは、サーバーは ROM 選択用の Web ページを提供する Express サーバーを起動します。

npm run start-sse

次に、ブラウザで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.jsMcpServer

  • stdio トランスポート用の@modelcontextprotocol/sdk/server/stdio.jsからのStdioServerTransport

  • SSE トランスポート用の@modelcontextprotocol/sdk/server/sse.jsからのSSEServerTransport

  • ゲームボーイエミュレーション用のserverboy

  • SSEモードのWebサーバー用のexpress

  • ゲームボーイ画面をレンダリングするためのcanvas

ライセンス

マサチューセッツ工科大学

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mario-andreschak/mcp-gameboy'

If you have feedback or need assistance with the MCP directory API, please join our Discord server