roberto
Simple Code Analysis MCP server, language agnostic with code indexing and search capabilities.
claude mcp add --transport stdio kensave-roberto-mcp /path/to/roberto-mcp/target/release/roberto-mcp
How to use
Roberto MCP is a Rust-based, language-agnostic code analysis server that exposes MCP tools over JSON-RPC via stdio. It provides fast symbol lookups, reference tracking, and semantic search across large codebases, with a focus on performance and concurrency. The server understands a variety of languages through Tree-sitter-based parsing and offers tooling to index code, query symbols, locate references, perform full-text code search, and inspect file or directory symbol outlines. You can integrate it with MCP-enabled clients such as the Amazon Q CLI or MCP Inspector to interact with the server's tools and workflows.
To use Roberto, configure an MCP client to start the roberto-mcp executable and send requests to the supported tool endpoints. The server exposes seven tools: index_code to build symbol tables from a directory, get_symbol to fetch symbol metadata, get_symbol_references to find all usages, find_symbols for exact or fuzzy symbol queries, code_search for BM25-style searches across indexed content, get_file_outline to obtain a file-level symbol outline, and get_directory_outline to get a high-level overview for a directory. Each tool accepts a JSON payload with fields specific to that action, for example providing a path for indexing or a query string for search.
Examples include indexing a project, searching for a function by name, listing all references to a symbol, or retrieving the signature outline of a particular file. The server is designed for high throughput and low latency, suitable for integration into IDE workflows, CI pipelines, or command-line tooling that analyzes large codebases.
How to install
Prerequisites:
- Rust 1.70+ with Cargo
- Git
Steps:
- Clone the repository
git clone https://github.com/kensave/roberto-mcp.git
cd roberto-mcp
- Build from source (release mode preferred for performance)
cargo build --release
- Run the server (binary will be at the path shown in the README)
./target/release/roberto-mcp
- Optional: add to your MCP client configuration (example shown for Amazon Q CLI)
{
"mcpServers": {
"roberto": {
"command": "/path/to/roberto-mcp/target/release/roberto-mcp",
"args": []
}
}
}
Notes:
- You can also run the binary directly from the repository if you build in place. Ensure you reference the correct path to the compiled executable when configuring your MCP client.
- The server communicates via JSON-RPC over stdio, so the client should connect accordingly.
Additional notes
Tips and known considerations:
- Performance: The server emphasizes lock-free concurrency and in-memory structures with binary persistence for fast startup on previously indexed repositories.
- Memory: Monitor memory usage for very large codebases; configure memory limits if available in your deployment environment.
- Languages: Roberto supports 15+ languages via Tree-sitter grammars; ensure the target repository uses languages supported by the installed server.
- Troubleshooting: If the server fails to index or respond, verify the built binary is executable, check for required runtime dependencies, and ensure the MCP client is configured with the correct path to the binary. For debugging, test with MCP Inspector to view tool schemas and request/response cycles.
Related MCP Servers
mcp-guardian
Manage / Proxy / Secure your MCP Servers
mcp-probe
A Model Context Protocol (MCP) client library and debugging toolkit in Rust. This foundation provides both a production-ready SDK for building MCP integrations and the core architecture for an interactive debugger.
sandbox
A Model Context Protocol (MCP) server that enables LLMs to run ANY code safely in isolated Docker containers.
pluggedin-app
The Crossroads for AI Data Exchanges. A unified, self-hostable web interface for discovering, configuring, and managing Model Context Protocol (MCP) servers—bringing together AI tools, workspaces, prompts, and logs from multiple MCP sources (Claude, Cursor, etc.) under one roof.
mcp-framework
Rust MCP framework for building AI agents
srag
Semantic code search and RAG system written in Rust with tree-sitter chunking, MCP server for IDE integration, prompt injection detection, and secret redaction