项目简介
Rust MCP 服务器是一个实现了 Model Context Protocol (MCP) 的后端服务,专注于为 Rust 编程语言提供一系列开发工具能力。它允许支持 MCP 协议的 LLM 客户端(如 AI 编码助手或集成开发环境)通过标准化的 JSON-RPC 接口调用 Rust 项目的语法检查、代码 Lint、格式化、测试和构建等功能。
主要功能点
该服务器提供以下 Rust 开发工具作为 MCP 的工具 (Tools):
- 'cargo_check': 执行 'cargo check' 命令,用于检查 Rust 代码的语法和类型错误,提供详细的错误信息。
- 'cargo_clippy': 执行 'cargo clippy' 命令,运行 Rust 代码 Lint 工具,帮助发现潜在问题和改进建议,支持自动修复。
- 'rustfmt': 执行 'cargo fmt' 命令,根据 Rust 标准风格或项目配置格式化代码,支持检查格式是否规范。
- 'cargo_test': 执行 'cargo test' 命令,运行 Rust 项目的测试,显示测试结果和输出。
- 'cargo_build': 执行 'cargo build' 命令,编译 Rust 项目,支持 Debug 或 Release 模式构建,提供构建状态和错误详情。
安装步骤
- 前提条件:
- 已安装 Rust 工具链 ('rustc', 'cargo', 'clippy', 'rustfmt')。
- 系统支持 Tokio 异步运行时(Rust 安装通常包含)。
- 从源码构建:
- 克隆仓库:'git clone https://github.com/lh/rust-mcp-server'
- 进入目录:'cd rust-mcp-server'
- 构建项目:'cargo build --release'
- 构建成功后,可执行文件位于 './target/release/rust-mcp-server'。
服务器配置
MCP 客户端需要配置如何启动该服务器进程。典型的客户端配置需要指定服务器名称、可执行文件路径以及启动参数。
以下是一个示例配置结构,您需要在 MCP 客户端中进行相应的设置:
- 'name': 服务器的唯一名称,例如 'rust-tools'。
- 'command': 服务器可执行文件的绝对路径,例如 '/path/to/rust-mcp-server/target/release/rust-mcp-server'。
- 'args': 传递给服务器的启动参数列表。
- 通常需要 '--project-path <PATH>' 参数,指定 Rust 项目所在的根目录。例如 '["--project-path", "/path/to/your/rust/project"]'。
重要: 具体配置方式取决于您的 MCP 客户端实现。请参考您的客户端文档进行设置。上述信息提供了配置所需的核心内容(服务器名称、启动命令和参数)。
基本使用方法
服务器启动并连接到 MCP 客户端后,LLM 可以通过发送 MCP 的 JSON-RPC 请求来调用工具。
- 初始化: 客户端发送 'initialize' 请求以建立连接和获取服务器能力。
- 列出工具: 客户端发送 'tools/list' 请求以获取服务器提供的所有工具列表及其描述和参数 schema。
- 调用工具: 客户端发送 'tools/call' 请求,指定工具名称(如 'cargo_check')和相应的参数(如 '{ "workspace": true }')来执行特定操作。
对于用户而言,通常是通过 MCP 客户端(如集成的 AI 助手)的自然语言交互或特定界面触发这些工具调用。例如,在支持该服务器的 AI 助手中,您可以直接输入:
- “检查这段 Rust 代码有没有错误” → 客户端可能调用 'cargo_check' 工具。
- “格式化我的 Rust 文件” → 客户端可能调用 'rustfmt' 工具。
- “运行项目测试” → 客户端可能调用 'cargo_test' 工具。
服务器会执行相应的命令并将结果(成功状态、退出码、标准输出、标准错误)返回给客户端,客户端再将这些信息呈现给用户或用于进一步处理。
信息
分类
开发者工具