
LSP-MCP Bridge
A universal bridge that lets Claude talk to any Language Server Protocol implementation through a single binary. Configure it once with paths to your LSP servers (rust-analyzer, pyright, lua-language-server, etc.), and it routes requests based on file extensions. Exposes six core LSP operations as MCP tools: hover for documentation and types, definition jumping, reference finding, symbol listing, and diagnostics. Servers spawn lazily on first use and stay resident. Reach for this when you want Claude to understand your codebase through the same language intelligence your editor uses, without building separate MCP integrations for each language. Config driven with TOML, works with any LSP that speaks stdio.
- GitHub stars
- 1
- tools
- 6
- transport
- STDIO
- last updated
- Jan 3, 2026
Tools
6 toolsPublic tool metadata for what this MCP can expose to an agent.
lsp_hoverGet docs/type at position
Get docs/type at position
No parameter schema in public metadata yet.
lsp_definitionGo to definition
Go to definition
No parameter schema in public metadata yet.
lsp_referencesFind all references
Find all references
No parameter schema in public metadata yet.
lsp_symbolsList symbols in file
List symbols in file
No parameter schema in public metadata yet.
lsp_diagnosticsGet errors/warnings
Get errors/warnings
No parameter schema in public metadata yet.
lsp_serversList configured servers
List configured servers
No parameter schema in public metadata yet.
Sponsors
Readme
lsp-mcp-rs
MCP server that bridges to any LSP. One binary, multiple language servers.
Build
cargo build --release
Binary: target/release/lsp-mcp-rs.exe
Configure
Create config.toml next to the binary:
[servers.lua]
command = "C:/path/to/lua-language-server.exe"
args = ["--stdio"]
extensions = [".lua"]
[servers.rust]
command = "rust-analyzer"
args = []
extensions = [".rs"]
[servers.python]
command = "pyright-langserver"
args = ["--stdio"]
extensions = [".py"]
Add to Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"lsp": {
"command": "X:\\path\\to\\lsp-mcp-rs.exe",
"args": []
}
}
}
Tools
| Tool | Description |
|---|---|
lsp_hover | Get docs/type at position |
lsp_definition | Go to definition |
lsp_references | Find all references |
lsp_symbols | List symbols in file |
lsp_diagnostics | Get errors/warnings |
lsp_servers | List configured servers |
All position arguments are 0-indexed.
How it works
- MCP request comes in with a file path
Details
- Repository
- github.com/stryk91/lsp-mcp-rs
- Categories
- Developer Tools, Reverse Engineering
- Package
https://github.com/Stryk91/lsp-mcp-rs/releases/download/v0.1.0/lsp-mcp-rs.exe- Transport
- STDIO
- Registry
- MCP registry, active