使用说明

项目简介

Cursor Rust Tools 是一个 Model Context Protocol (MCP) 服务器,专为 Rust 开发环境设计。它旨在弥合大型语言模型 (LLM) 与 Rust 工具链之间的鸿沟,使 LLM 能够更深入地理解和操作 Rust 代码。通过 Cursor Rust Tools,LLM 可以访问实时的 Rust 代码信息、浏览依赖库的文档、并执行 Cargo 命令,从而在代码生成、补全和推理等方面获得显著提升。

主要功能点

  • Rust LSP 集成: 利用 Rust Analyzer (LSP) 提供丰富的代码智能功能,包括:
    • 符号文档 (symbol_docs): 获取代码符号的详细文档信息。
    • 符号实现 (symbol_impl): 查找符号的实现代码。
    • 符号引用 (symbol_references): 查找符号在项目中的所有引用。
    • 符号解析 (symbol_resolve): 根据符号名称查找并提供文档。
    • 悬停信息 (hover): 获取符号的类型和描述信息。
  • Cargo 依赖文档: 自动抓取并提供 Cargo 依赖库的最新文档,确保 LLM 使用的文档信息是最新的。
    • Crate 文档 (crate_docs): 获取 Cargo 依赖库的文档,包括库的介绍和符号文档。
  • Cargo 命令执行: 允许 LLM 执行 Cargo 命令,并获取命令输出结果,支持:
    • Cargo 检查 (cargo_check): 运行 'cargo check' 命令,获取项目编译错误和警告信息。
    • Cargo 测试 (cargo_test): 运行 'cargo test' 命令,获取项目测试结果。
  • 可选的用户界面: 提供图形用户界面 (UI) 用于项目管理和服务器配置,也支持无 UI 的命令行模式。

安装步骤

  1. 安装 Rust: 确保已安装 Rust 编程环境。
  2. 安装 Cursor Rust Tools: 打开终端,运行以下 Cargo 命令安装 Cursor Rust Tools:
    cargo install --git https://github.com/terhechte/cursor-rust-tools
    安装成功后,'cursor-rust-tools' 命令将被添加到你的系统路径中。

服务器配置

Cursor Rust Tools 作为 MCP 服务器,需要配置在 MCP 客户端 (例如 Cursor 编辑器) 中才能使用。以下是配置信息示例 (JSON 格式),用于配置 Cursor 编辑器连接到 Cursor Rust Tools 服务器。

{
  "mcpServers": {
    "cursor_rust_tools": {
      "url": "http://localhost:4000/sse",
      "env": {
        "API_KEY": ""
      }
    }
  }
}

配置参数说明:

  • 'server name': 服务器名称,这里固定为 '"cursor_rust_tools"'。
  • 'url': MCP 服务器的 SSE (Server-Sent Events) 接口地址,默认地址为 '"http://localhost:4000/sse"'。
  • 'env': 环境变量配置,目前示例中 'API_KEY' 为空,表示无需 API 密钥。

在 Cursor 编辑器中配置:

  1. 在你的 Rust 项目根目录下,创建 '.cursor' 文件夹(如果不存在)。
  2. 在 '.cursor' 文件夹中,创建 'mcp.json' 文件。
  3. 将上述 JSON 配置信息粘贴到 'mcp.json' 文件中并保存。
  4. Cursor 编辑器会自动检测到新的 MCP 服务器并提示启用。

基本使用方法

  1. 启动服务器:
    • 带 UI 模式: 在终端中运行 'cursor-rust-tools' 命令,启动带图形界面的服务器。通过 UI 可以添加和管理 Rust 项目。
    • 无 UI 模式: 在终端中运行 'cursor-rust-tools --no-ui' 命令,启动无 UI 的命令行模式服务器。需要手动编辑配置文件 '~/.cursor-rust-tools' 添加项目。
    • 服务器默认监听 'http://localhost:4000/sse' 地址,并在终端或 UI 中显示 'mcp.json' 配置内容。
  2. 在 Cursor 编辑器中使用:
    • 确保已按照上述步骤配置 'mcp.json' 并启用 MCP 服务器。
    • 在 Cursor 编辑器的聊天窗口中,启用 "Agent Mode"。
    • 你可以指示 LLM 使用 Cursor Rust Tools 提供的工具,例如:
      • 询问代码符号的文档: "Show me documentation for 'tokio::spawn'"。
      • 运行 Cargo 检查:"Run cargo check in this project"。
      • 查找符号的实现:"Find implementation of function 'main' in this file"。

注意: 首次添加项目后,Cursor Rust Tools 需要一段时间索引项目代码和文档,以便 LSP 和文档功能正常工作。索引进度会在 UI 或终端中显示。

信息

分类

开发者工具