Language Server

Language Server

MCP Language Server exposes a language server to LLMs for MCP-enabled clients.

1,278
Stars
99
Forks
2
Releases

Overview

The MCP Language Server is an MCP server that runs and exposes a Language Server Protocol interface to language model clients (LLMs). It enables MCP-enabled clients to navigate codebases with semantic tooling such as get definition, references, rename, and diagnostics via standard LSP features. The project borrows ideas from gopls to handle LSP communication and communicates over stdio, with arguments after -- forwarded to the language server and environment variables passed through. It supports integrating a variety of language servers (e.g., gopls, rust-analyzer, pyright-langserver, typescript-language-server, clangd) through the --lsp flag, enabling multi-language support for MCP contexts. The tooling exposes actions like definition, references, diagnostics, hover, rename_symbol, and edit_file, and includes a snapshot-based integration test suite that runs on mock workspaces across languages. This setup is designed for beta usage, easy local development, and integration with editors and Claude-like clients that host MCP-enabled language services.

Details

Owner
isaacphi
Language
Go
License
BSD 3-Clause "New" or "Revised" License
Updated
2025-12-07

Features

Definition lookup

Retrieves the complete source code definition of any symbol from your codebase.

References search

Locates all usages and references of a symbol throughout the codebase.

Diagnostics

Provides diagnostic information for a specific file, including warnings and errors.

Hover information

Displays documentation, type hints, or other hover information for a given location.

Rename symbol

Renames a symbol across the project.

Edit file

Allows making multiple text edits to a file based on line numbers.

LSP over stdio

Communicates with editors via the Language Server Protocol over standard input/output.

Snapshot and integration tests

Includes a test suite with mock workspaces to exercise language server behavior across languages.

Audience

MCP-enabled clientsNavigate MCP projects using semantic tools via LSP for code intelligence.
Developers and tool integratorsIntegrate with editors and tooling to provide MCP language features to developers.

Tags

MCPLanguage ServerLSPGoCode NavigationDiagnosticsDefinitionsReferencesRenameHoverCode EditingIntegration Tests