Labsco
MCP SERVER

Language Server

by isaacphi

Give an agent the semantic tools an IDE has — go to definition, find references, hover docs, rename across a project, and read the language server's diagnostics.

Code Intelligence & Repository Indexing
Summary
Navigation an agent can trust, because a language server answered it.

Grep finds strings; a language server knows which of those strings is the definition. That difference is the whole point here — and `rename_symbol` is the version of it you can act on.

What it is

A server that runs a real language server and exposes it over MCP. The answers come from the language server's own understanding of the code, not from text search.

What you get
  • `definition` — the complete source of any symbol, whether it is a function, a type or a constant
  • `references` — every usage of a symbol across the codebase
  • `hover` — documentation and type hints for a given location
  • `diagnostics` — the warnings and errors the language server reports for a file
  • `rename_symbol` — a project-wide rename that follows the language's rules rather than a find-and-replace
  • `edit_file` — multiple text edits addressed by line number, which is a more reliable and more context-economical way to change a file than search-and-replace editing
Requirements

Go, then `go install github.com/isaacphi/mcp-language-server@latest`, plus the language server for your language installed separately — `gopls` for Go, `clangd` for C and C++, and others. Launch it with `--workspace` pointing at your project and `--lsp` at the language server binary; anything after `--` is passed straight through to the language server, and environment variables are inherited by it. The language server must communicate over stdio. Setting `LOG_LEVEL` to `DEBUG` writes verbose logs to stderr, including the traffic in both directions. The snapshot test suite covers Go, Rust, Python and TypeScript. This is described as beta software.

Setup effort

One command — go install github.com/isaacphi/mcp-language-server@latest