光标 Rust 工具
MCP服务器允许 Cursor 中的 LLM 访问 Rust Analyzer、Crate Docs 和 Cargo Commands。
包括用于配置的 UI。
它的作用
目前,各种 AI 代理均不支持 AI 从 LSP 访问 Rust 类型信息。这带来了一个障碍,因为 LLM 无法直接看到类型,而是需要推理出潜在的类型。
此外,关于依赖项(例如tokio
)的唯一信息是它们所训练的内容,而这些信息已经过时,并且可能是其他版本。这可能会导致各种问题。
Cursor Rust Tools
通过模型上下文协议 ( MCP
) 提供这些功能。
- 获取某个
crate
或crate
中特定符号的文档(例如tokio
或tokio::spawn
) - 获取文件中特定符号的悬停信息(类型、描述)
- 获取文件中特定符号的所有引用列表
- 获取文件中符号的实现(检索包含实现的整个文件)
- 在项目文件中仅按名称查找类型并返回悬停信息
- 获取
cargo test
的输出 - 获取
cargo check
的输出
工作原理
对于 LSP 功能src/lsp
它会启动一个新的 Rust 分析器,像编辑器中运行的一样索引你的代码库。我们无法查询编辑器中运行的 Rust 分析器,因为 Rust 分析器只能由单个用户使用(例如, open document
操作需要按正确的顺序close document
,等等)。
对于文档,它将运行cargo docs
,然后在本地将 HTML 文档解析为 Markdown 格式。此信息存储在项目根目录的.docs-cache
文件夹中。
安装
使用 UI 运行
这将打开一个 UI,您可以在其中添加项目、安装mcp.json
并查看活动。
无 UI 运行
或者,一旦你在项目中设置了~/.cursor-rust-tools
,你也可以通过以下方式运行它
配置
除了使用 UI 创建配置之外,您还可以自己设置~/.cursor-rust-tools
:
ignore_crates
是一个 crate 依赖项名称列表,这些名称你不想被索引到文档中。例如,因为它们太大了。
配置光标
应用程序运行时,您可以配置 Cursor 来使用它。这需要多个步骤。
- 将
project-dir/.cursor/mcp.json
文件添加到你的项目中。CursorCursor Rust Tools
UI 中有一个按钮可以帮你完成此操作。即使不通过 UI 运行它,终端中也会显示mcp.json
内容。 - 一旦您保存该文件,Cursor 将检测到已添加新的 MCP 服务器并要求您启用它。(在右下角的对话框中)。
- 您可以检查光标设置(在
MCP
下)以查看其是否正常工作 - 要进行测试,请确保在当前
Chat
中选择了Agent Mode
。然后,您可以要求它使用其中一个新工具,例如cargo_check
工具。 - 您可能需要添加游标规则,以告知法学硕士 (LLM) 尽可能优先使用这些工具。我仍在尝试这个方法。
所有mcp.json
的内容都相同。Cursor Rust Tools 通过文件路径找到正确的项目
打开待办事项
This server cannot be installed
MCP 服务器允许 Cursor 中的 LLM 访问 Rust Analyzer、Crate Docs 和 Cargo Commands。