mcpField
G
GameCode MCP2

GameCode MCP2

ローカル
github.com/navicore開発ツール226 週間前に更新

GameCode MCP2 について

GameCode MCP2は、ツール統合と監査を目的とした、アーカイブ済みのRust製MCP実装です。サーバーはYAMLからツール定義を読み込み、クライアントライブラリはテストと統合に使えます。

主な機能

  1. 01MCPツールの直接公開
  2. 02stdio経由のJSON-RPC 2.0
  3. 03YAMLによる動的なツール設定
  4. 04組み込みハンドラーと外部コマンド
  5. 05サーバーとクライアントの個別crate

活用シーン

  1. 01設定したコマンドをMCPツールとして公開
  2. 02再コンパイルせずにツール定義を変更
  3. 03クライアントライブラリでMCP統合をテスト

MCP 対応

サーバーは`tools.yaml`からツールを読み込み、stdio経由でMCPに公開します。ワークスペースにはMCPクライアントライブラリも含まれますが、リポジトリはアーカイブ済みで保守されていません。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

このリポジトリは https://git.navicore.tech/navicore/gamecode-mcp2 に移転しました。

GitHub 上のコピーはアーカイブされており、メンテナンスされていません。

Dependabot Updates Rust CI

GameCode MCP2

ツール連携のための、シンプルで(おそらく素朴な)Model Context Protocol(MCP)の実装です。

動機は、依存関係をできるだけ少なくし、設定をできるだけシンプルで監査しやすくすることです。

⚠️ セキュリティに関する注意

MCP はまだ初期段階の技術です。LLM にシステムコマンドの実行を許可することには、本質的なリスクがあります。 この実装では、機能よりも監査可能性を優先しています。LLM リクエストを処理するコードは、すべて確認できます。それでも、慎重にご利用ください。 MCP のアプローチが妥当かどうかは、時間が経たなければ分かりません。

主な機能

  • ツールの直接公開 - tools.yaml で定義されたツールは、メタツールを介さず、MCP 経由で直接公開されます
  • シンプルなプロトコル実装 - 外部依存なしで、stdio 上の純粋な JSON-RPC 2.0 を使用します
  • 動的なツール読み込み - 再コンパイルせずに、YAML でツールを設定できます
  • 組み込みツールと外部ツール - 内部ハンドラーと外部コマンドの両方をサポートします

アーキテクチャ

このワークスペースには、2 つのクレートが含まれています。

  • mcp-server - tools.yaml からツールを読み込み、プロトコル経由で公開する MCP サーバー
  • mcp-client - テストと統合用のクライアントライブラリ

使用方法

サーバーの実行
# Build the server
cargo build --release --bin gamecode-mcp2

# Create a tools.yaml file (see examples/tools.yaml)
cp examples/tools.yaml .

# Run the server (it communicates via stdio)
./target/release/gamecode-mcp2
Claude Desktop での使用

Claude Desktop の設定に追加します。

{
  "mcpServers": {
    "gamecode": {
      "command": "/path/to/gamecode-mcp2"
    }
  }
}
gamecode-cli での使用

MCP 連携のために、mcp-client クレートを gamecode-cli の依存関係として使用できます。

ツールの設定

ツールは tools.yaml で定義します。

tools:
  - name: my_tool
    description: Description for the LLM
    command: /path/to/command  # or "internal" for built-in
    args:
      - name: param1
        description: Parameter description
        required: true
        type: string
        cli_flag: --param  # null for positional
    internal_handler: handler_name  # for internal tools

プロトコル

この実装は MCP 仕様に準拠しています。

  • initialize - クライアントとのハンドシェイク
  • tools/list - 利用可能なすべてのツールを返します
  • tools/call - 指定したツールを実行します

ツールは「run」のようなメタツールを介さず、直接公開されます。

コメント

MCP は初めてですか?

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

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