agent-lsp MCP
The agent-lsp MCP server orchestrates language servers into agent workflows: callers, safe edits, renames and diagnostics.
- 178 ★ on the repository
- Last commit
Broad access
Why this level
- `safe_apply_edit` and rename tools change project files on disk.
- The install script runs through curl and sh.
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/agent-lspDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- `safe_apply_edit` and rename tools change project files on disk.
- The install script runs through curl and sh.
This is third-party code. Review the repository files before installing.
What it does
agent-lsp orchestrates existing language servers (gopls, rust-analyzer, jdtls, pyright and others) and turns their answers into agent operations. It keeps servers warm between sessions, so the first project index takes roughly ten seconds and later ones are instant, and it routes files to the right server: `.go` to gopls, `.ts` to tsserver, `.py` to pyright within one session. There are 66 tools. `blast_radius` returns all exports and all callers in one call, split into test and non-test, `preview_edit` and `simulate_edit` show how diagnostics would change before an edit reaches the disk, `safe_apply_edit` writes only an edit it could verify. On top sit 24 workflow skills: `/lsp-refactor` (impact analysis, preview, apply, build check, tests), `/lsp-safe-edit`, `/lsp-verify`. Responses are encoded in the GCF format, which is 30 to 84 percent shorter than JSON. CI verifies 32 language servers on real fixtures.
Who it is for. Developers who give Claude Code, Cursor, Codex or Gemini CLI refactors in large codebases and want verified edits instead of text search.
Good fit when
- Rename a symbol across the project and verify the build and tests after the edit.
- Learn in one call what breaks if an exported function signature changes.
- Preview an edit and compare diagnostics before writing to disk.
- Find interface implementations and the call hierarchy where text search gets it wrong.
Not a fit when
- A language server itself is needed: agent-lsp uses those you have installed.
- The codebase is small and edits are local: ordinary reading and search are enough.
- A language without a language server is needed: without one the tools return nothing.
Example request
Using agent-lsp, find all call sites of the function, preview the signature change, apply it and run the tests.MCP
- Transport
- stdio
- Authentication
- not required
Limitations
Language servers are installed separately (for example `gopls` with `go install`, pyright with `npm i -g pyright`, typescript-language-server). The first run on a project indexes it for about ten seconds. `safe_apply_edit` writes nothing if the preview timed out or the server was still indexing. The install script runs through `curl | sh`, and its content is worth reviewing before running. The server is not an LSP server, it is a control layer over them.
How to disable. Remove the agent-lsp entry from the client configuration. The binary is removed the way it was installed: `brew uninstall agent-lsp` or `npm uninstall -g @blackwell-systems/agent-lsp`.
FAQ
How do I connect agent-lsp to Claude Code?
Install the binary and run `agent-lsp init`, which configures the client and sets up servers for your languages.
Which install methods exist?
The script `curl -fsSL https://raw.githubusercontent.com/blackwell-systems/agent-lsp/main/install.sh | sh`, `brew install blackwell-systems/tap/agent-lsp`, `npm install -g @blackwell-systems/agent-lsp` and `go install github.com/blackwell-systems/agent-lsp/cmd/agent-lsp@latest`.
Why is blast_radius better than text search?
It returns all exports and all callers in one call, split into test and non-test, instead of twenty or more sequential language server calls.
Which clients are supported?
Claude Code, Cursor, Windsurf, Gemini CLI, Codex and the ChatGPT desktop app, Cline and Pi, all over stdio.
Which languages are CI-verified?
32 languages and servers: Go, Python, TypeScript, Rust, Java, C, C++, C#, Ruby, PHP, Kotlin, Swift, Scala, Zig, Lua, Elixir, Dart, Terraform and others.
Discussion
No questions or reviews yet.
Related
MCP serversAn MCP to LSP bridge: the agent gets types, references, diagnostics and refactoring from rust-analyzer, pyright and gopls.
A bridge from an LSP language server to the agent: definitions, references, diagnostics, hover and symbol rename
cclsp connects LSP language servers to Claude Code over MCP: go to definition, find references, rename symbols and diagnostics with no editor needed
A gopls-based MCP server: the agent finds Go definitions, interface implementations, references and calls with compiler precision
MCP server for the Lean 4 language server: an agent reads proof goals and errors and searches for theorems inside your project
A local code graph with version history: an MCP server that tells the agent who calls a function and what an edit breaks
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| agent-lsp (this card) | no | not required | 178 | |
| MCP Language Server | no | not required | 1,617 | a thin bridge to one language server; agent-lsp runs several servers, keeps them warm and adds edit previews and workflows |
| Serena | no | not required | 31,301 | symbol-level search and edits with its own navigation layer; agent-lsp orchestrates your installed language servers |
README in short
The README describes the server as a layer over language servers, persistent warm runtime, batch operations, speculative editing, 24 workflows, 32 CI-verified languages, the GCF and JSON output comparison, install methods and a client table.