Cursor Rust Tools
@terhechte
About Cursor Rust Tools
A MCP server to allow the LLM in Cursor to access Rust Analyzer, Crate Docs and Cargo Commands.
Basic information
Config
No standard config provided
This server doesn't expose a parseable MCP config block in its README. See the repository for install instructions.
RepositoryTools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is Cursor Rust Tools?
Cursor Rust Tools is an MCP server that enables AI agents in Cursor to access Rust type information from the Rust Analyzer LSP, retrieve crate documentation, and run Cargo commands. It includes a UI for configuration and is aimed at Rust developers using Cursor’s AI features.
How to use Cursor Rust Tools?
Install via cargo install --git https://github.com/terhechte/cursor-rust-tools. Run with UI using cursor-rust-tools or headlessly with cursor-rust-tools --no-ui. Configure projects in ~/.cursor-rust-tools and add the generated mcp.json to your project’s .cursor/ directory to connect it with Cursor.
Key features of Cursor Rust Tools
- Get documentation for a crate or a specific symbol (e.g.,
tokio::spawn) - Get hover information (type, description) for a symbol in a file
- List all references for a symbol in a file
- Retrieve the implementation file for a given symbol
- Find a type by name in a project and return its hover information
- Run
cargo testandcargo checkfrom the AI
Use cases of Cursor Rust Tools
- AI-assisted coding with accurate, up-to-date Rust type information
- Fetching current crate documentation without relying on outdated training data
- Debugging and refactoring by examining symbol references and implementations
- Automating code verification by triggering
cargo checkfrom chat
FAQ from Cursor Rust Tools
How does it retrieve crate documentation?
It runs cargo docs locally, then parses the generated HTML documentation into markdown. This information is cached in the .docs-cache folder in the project root.
How does it handle LSP queries without conflicting with the editor?
Cursor Rust Tools spins up its own Rust Analyzer instance, separate from the one in the editor. This avoids conflicts because Rust Analyzer is designed for a single consumer (e.g., open/close document ordering).
Can I exclude certain crate dependencies from documentation indexing?
Yes. In the ~/.cursor-rust-tools configuration, you can add an ignore_crates list with crate names you don’t want indexed (e.g., if they are too large).
How do I configure Cursor to use this MCP server?
The tool generates a mcp.json file (via the UI or printed to terminal). Save it in your project’s .cursor/ directory. When Cursor detects the new file, it will prompt you to enable the MCP server. You can verify it under Cursor’s MCP settings.
What are the current limitations of Cursor Rust Tools?
Open todos include: creating a Zed extension, proper shutdown without errors, improved project removal in the UI, exposing more LSP commands, and allowing Grit operations. Only features explicitly listed in the README are supported.
More Developer Tools MCP servers
Grafana MCP server
grafanaMCP server for Grafana
Hello World MCP Server (Reference Extension)
anthropicsDesktop Extensions: One-click local MCP server installation in desktop apps
Burp Suite MCP Server Extension
PortSwiggerMCP Server for Burp
Smithery CLI
smithery-aiInstall, manage and develop MCP servers and skills for agents
JetBrains MCP Proxy Server
JetBrainsA model context protocol server to work with JetBrains IDEs: IntelliJ, PyCharm, WebStorm, etc. Also, works with Android Studio
Comments