Cargo Metadata MCP Server
by frozenlib
This project implements a server using the Model Context Protocol (MCP) to provide metadata information for Cargo projects. It allows MCP clients to access various details about a Rust project's configuration and dependencies.
View on GitHub
Last updated: N/A
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"
}
}
}
提供されるツール
このサーバーは以下のツールを提供します:
get_metadata
- プロジェクトのメタデータを取得しますget_package_info
- プロジェクトのパッケージ情報を取得しますget_dependencies
- プロジェクトの依存関係リストを取得しますget_targets
- プロジェクトのビルドターゲットを取得しますget_workspace_info
- プロジェクトのワークスペース情報を取得しますget_features
- プロジェクトのフィーチャー情報を取得します
各ツールは、オプションで manifest_path
パラメータを受け取ります。指定しない場合は、カレントディレクトリの Cargo.toml ファイルが使用されます。
技術的な詳細
このプロジェクトは以下の技術を使用しています:
- mcp-attr - MCP サーバーを宣言的に記述するための Rust クレート
- cargo_metadata - Cargo プロジェクトのメタデータを取得するための Rust クレート
- tokio - 非同期ランタイム
- serde - シリアライズ/デシリアライズフレームワーク
ライセンス
MIT または Apache-2.0