MCP Catalogs
Home

mcp-language-server

by isaacphi·1,527·Score 55

MCP language server bridges LSP tools to MCP clients enabling code navigation, definitions, references and diagnostics.

developer-toolsai-llmproductivity
128
Forks
56
Open issues
3 mo ago
Last commit
2d ago
Indexed

Overview

The mcp-language-server is a MCP server that exposes language server protocol (LSP) functionality to LLM clients through the Model Context Protocol. It allows AI models to access semantic code analysis tools including symbol definitions, references, diagnostics, hover information, and renaming capabilities across multiple programming languages including Go, Rust, Python, TypeScript, and C++. The implementation handles LSP communication via stdio and passes environment variables and arguments to language servers.

Try asking AI

After installing, here are 5 things you can ask your AI assistant:

you:Codebase navigation for AI assistants working with unfamiliar code
you:Automated code refactoring and renaming across large projects
you:Intelligent code analysis and issue detection
you:Which language servers are supported?
you:How do I debug issues?

When to choose this

Choose this when you need to connect LLM clients to existing language servers for code analysis and navigation across multiple programming languages.

When NOT to choose this

Avoid this if you need advanced IDE features beyond basic language server capabilities or if you're working with a language server that doesn't communicate over stdio.

Tools this server exposes

6 tools extracted from the README
  • definition

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

  • references

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

  • diagnostics

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

  • hover

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

  • rename_symbol

    Rename a symbol across a project.

  • edit_file

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

Comparable tools

mcp-server-templatemcp-toolsvscode-mcp

Installation

Installation

  1. Install Go: Follow instructions at https://golang.org/doc/install
  2. Install the server: go install github.com/isaacphi/mcp-language-server@latest
  3. Install a language server of your choice (gopls, rust-analyzer, pyright, etc.)

Configuration

Add to Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "language-server": {
      "command": "mcp-language-server",
      "args": ["--workspace", "/path/to/your/project", "--lsp", "gopls"]
    }
  }
}

FAQ

Which language servers are supported?
The server has been tested with gopls (Go), rust-analyzer (Rust), pyright (Python), typescript-language-server (TypeScript), and clangd (C/C++). It should work with any LSP server that communicates over stdio.
How do I debug issues?
Set the LOG_LEVEL environment variable to DEBUG to enable verbose logging to stderr for all components, including messages to and from the language server.

On Hacker News

Recent discussion from the developer community.

Compare mcp-language-server with

GitHub →

Last updated · Auto-generated from public README + GitHub signals.