mcp-attr-example-cargo-metadata

mcp-attr-example-cargo-metadata

0

The Cargo Metadata MCP Server is a project that provides metadata information related to Cargo projects using the Model Context Protocol (MCP). It offers various tools to retrieve essential data such as package info, dependencies, and build targets. It integrates with MCP clients for seamless operation.

Cargo Metadata MCP Server

このプロジェクトは、Model Context Protocol (MCP)を使用して、Cargo プロジェクトのメタデータ情報を提供するサーバーを実装しています。

機能

この MCP サーバーは以下の機能を提供します:

  • プロジェクトのメタデータ情報の取得
  • パッケージ情報の取得
  • 依存関係リストの取得
  • ビルドターゲットの取得
  • ワークスペース情報の取得
  • フィーチャー情報の取得

使い方

ビルド

cargo build --release

実行

cargo run

または、ビルド済みのバイナリを直接実行することもできます:

./target/release/mcp-attr-example-cargo-metadata

MCP クライアントとの連携

このサーバーを MCP クライアント(例:Claude Desktop)と連携するには、クライアントの設定ファイルに以下のように追加します:

{
  "mcpServers": {
    "cargo-metadata": {
      "command": "path/to/mcp-attr-example-cargo-metadata"
    }
  }
}

提供されるツール

このサーバーは以下のツールを提供します:

  1. get_metadata - プロジェクトのメタデータを取得します
  2. get_package_info - プロジェクトのパッケージ情報を取得します
  3. get_dependencies - プロジェクトの依存関係リストを取得します
  4. get_targets - プロジェクトのビルドターゲットを取得します
  5. get_workspace_info - プロジェクトのワークスペース情報を取得します
  6. get_features - プロジェクトのフィーチャー情報を取得します

各ツールは、オプションで manifest_path パラメータを受け取ります。指定しない場合は、カレントディレクトリの Cargo.toml ファイルが使用されます。

技術的な詳細

このプロジェクトは以下の技術を使用しています:

  • mcp-attr - MCP サーバーを宣言的に記述するための Rust クレート
  • cargo_metadata - Cargo プロジェクトのメタデータを取得するための Rust クレート
  • tokio - 非同期ランタイム
  • serde - シリアライズ/デシリアライズフレームワーク

ライセンス

MIT または Apache-2.0