MCPLS
Universal MCP to LSP bridge - expose Language Server Protocol capabilities as MCP tools for AI agents
What is MCPLS?
MCPLS is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to universal mcp to lsp bridge - expose language server protocol capabilities as mcp tools for ai agents
Universal MCP to LSP bridge - expose Language Server Protocol capabilities as MCP tools for AI agents
This server falls under the Developer Tools and Coding Agents categories on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- Universal MCP to LSP bridge - expose Language Server Protoco
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx mcplsConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use MCPLS
mcpls is a universal bridge between AI coding assistants and Language Server Protocol (LSP) servers, exposing compiler-grade code intelligence — type inference, cross-reference analysis, semantic navigation, real diagnostics, and safe workspace-wide refactoring — as MCP tools that AI agents can call directly. Written in Rust as a single dependency-free binary, it auto-detects project language markers and spawns the appropriate language servers (rust-analyzer, pyright, tsserver, gopls, clangd, zls) on demand. Developers integrate it with Claude Code or Claude Desktop so their AI assistant can reason about code the way an IDE does rather than treating source files as plain text.
Prerequisites
- Rust 1.85+ (for building from source) or a pre-built binary from the GitHub Releases page
- At least one LSP-compliant language server installed (e.g. rust-analyzer via `rustup component add rust-analyzer`, pyright via `npm install -g pyright`, gopls via `go install golang.org/x/tools/gopls@latest`)
- An MCP-compatible client such as Claude Desktop or Claude Code
- cargo for installation from crates.io
Install mcpls via cargo
The simplest installation path is cargo install. Pre-built binaries for Linux, macOS (Intel and Apple Silicon), and Windows are also available on the GitHub Releases page.
cargo install mcplsInstall language servers for the languages you work in
mcpls uses graceful degradation — it skips any language server that is not installed. Install at least one for your primary language.
# Rust
rustup component add rust-analyzer
# Python
npm install -g pyright
# TypeScript / JavaScript
npm install -g typescript-language-server typescript
# Go
go install golang.org/x/tools/gopls@latestAdd mcpls to your MCP client configuration
For Claude Desktop, edit ~/Library/Application Support/Claude/claude_desktop_config.json on macOS (or %APPDATA%\Claude\claude_desktop_config.json on Windows). No additional arguments are required for most projects.
{
"mcpServers": {
"mcpls": {
"command": "mcpls",
"args": []
}
}
}Restart your MCP client
Quit and relaunch Claude Desktop so it connects to mcpls. The server will auto-detect language servers based on project markers (Cargo.toml, pyproject.toml, package.json, go.mod, etc.) when you open a project.
Optional: create a project-level config file
Place a mcpls.toml in ~/.config/mcpls/ to customise workspace roots, language server paths, heuristics, and log level. The MCPLS_LOG environment variable controls verbosity at runtime.
[workspace]
roots = ["/path/to/project"]
[[lsp_servers]]
language_id = "rust"
command = "rust-analyzer"
args = []
[lsp_servers.initialization_options]
cargo.features = "all"
checkOnSave.command = "clippy"MCPLS Examples
Client configuration
Minimal Claude Desktop configuration. mcpls is a single binary with no runtime dependencies, so no env vars are required for basic use.
{
"mcpServers": {
"mcpls": {
"command": "mcpls",
"args": []
}
}
}Prompts to try
Example prompts that exercise mcpls tools such as get_hover, get_references, get_diagnostics, rename_symbol, and get_incoming_calls.
- "What is the return type of the process_request function on line 47 of src/handlers/api.rs?"
- "Find every place ApiError::Timeout is referenced across the workspace"
- "Show me all diagnostics (compiler errors and warnings) in the current project"
- "Rename the variable `usr` to `user` everywhere in the workspace"
- "What functions does the authenticate method call?"
- "Give me the full call hierarchy for the main entry point"Troubleshooting MCPLS
mcpls starts but reports no language servers available
mcpls checks for project markers before spawning a language server. Make sure your project contains the expected files (e.g. Cargo.toml for Rust, pyproject.toml or requirements.txt for Python). Also verify the language server binary is on your PATH by running it directly (e.g. `rust-analyzer --version`).
get_hover or get_references return empty results
Language servers need time to index the project after startup. Wait a few seconds after opening a project and retry. You can set MCPLS_LOG=debug to see language server startup events.
Config file changes are not picked up
Set the MCPLS_CONFIG environment variable to an explicit path to your mcpls.toml file, or verify that the file is in the platform default location (~/.config/mcpls/mcpls.toml on Linux and macOS).
Frequently Asked Questions about MCPLS
What is MCPLS?
MCPLS is a Model Context Protocol (MCP) server that universal mcp to lsp bridge - expose language server protocol capabilities as mcp tools for ai agents It connects AI assistants to external tools and data sources through a standardized interface.
How do I install MCPLS?
Follow the installation instructions on the MCPLS GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with MCPLS?
MCPLS works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is MCPLS free to use?
Yes, MCPLS is open source and available under the Apache-2.0 license. You can use it freely in both personal and commercial projects.
MCPLS Alternatives — Similar Developer Tools Servers
Looking for alternatives to MCPLS? Here are other popular developer tools servers you can use with Claude, Cursor, and VS Code.
Ecc
★ 188.2kThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
Javaguide
★ 155.8kJava 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发
Gemini CLI
★ 104.5kA secure MCP server that wraps the Google Gemini CLI, allowing clients to query Gemini models using local OAuth sessions without requiring an API key. It provides tools for model interaction and diagnostics with built-in protection against command in
Awesome MCP Servers
★ 87.3k⭐ Curated list of Model Context Protocol (MCP) servers - tools that extend Claude Desktop, Cursor, Windsurf, and other MCP clients with custom capabilities.
MCP Servers
★ 86.0kModel Context Protocol Servers
CC Switch
★ 77.5kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Gemini CLI & Hermes Agent. Only official website: ccswitch.io
Browse More Developer Tools MCP Servers
Explore all developer tools servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up MCPLS in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use MCPLS?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.