drio
Open app

MCP Language Server

Source

mcp-language-server gives MCP enabled clients access semantic tools like get definition, references, rename, and diagnostics.

Catalog onlyCatalog onlySTDIO

Overview

MCP Language Server is a Model Context Protocol (MCP) server that runs a language server, providing tools for effective communication with it, especially in large projects.

To use the MCP Language Server, install Go, fetch the server, install a compatible language server for your codebase, and configure your MCP-enabled client with the appropriate settings.

  • Retrieves complete source code definitions of symbols. - Locates all usages and references of a symbol throughout the codebase. - Provides diagnostic information for specific files, including warnings and errors. - Supports code lens hints for additional context and actions. - Allows programmatic text edits to files.
  1. Enhancing code navigation and understanding in large projects.
  2. Facilitating refactoring and code maintenance tasks.
  3. Improving collaboration in multi-file codebases.

Add to your AI client

Use these steps to connect MCP Language Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.

Cursor

Add this to your .cursor/mcp.json file in your project root, then restart Cursor.

.cursor/mcp.json

{
  "mcpServers": {
    "mcp-language-server-isaacphi": {
      "command": "go",
      "args": [
        "run",
        "github.com/isaacphi/mcp-language-server@latest",
        "--workspace",
        "/path/to/codebase/",
        "--lsp",
        "language-server-executable"
      ],
      "env": {
        "LOG_LEVEL": "INFO"
      }
    }
  }
}

Claude Desktop

Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "mcp-language-server-isaacphi": {
      "command": "go",
      "args": [
        "run",
        "github.com/isaacphi/mcp-language-server@latest",
        "--workspace",
        "/path/to/codebase/",
        "--lsp",
        "language-server-executable"
      ],
      "env": {
        "LOG_LEVEL": "INFO"
      }
    }
  }
}

Claude Code

Add this to your project's .mcp.json file. Claude Code will detect it automatically.

.mcp.json (project root)

{
  "mcpServers": {
    "mcp-language-server-isaacphi": {
      "command": "go",
      "args": [
        "run",
        "github.com/isaacphi/mcp-language-server@latest",
        "--workspace",
        "/path/to/codebase/",
        "--lsp",
        "language-server-executable"
      ],
      "env": {
        "LOG_LEVEL": "INFO"
      }
    }
  }
}

VS Code (Copilot)

Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.

.vscode/mcp.json

{
  "servers": {
    "mcp-language-server-isaacphi": {
      "type": "stdio",
      "command": "go",
      "args": [
        "run",
        "github.com/isaacphi/mcp-language-server@latest",
        "--workspace",
        "/path/to/codebase/",
        "--lsp",
        "language-server-executable"
      ],
      "env": {
        "LOG_LEVEL": "INFO"
      }
    }
  }
}

Windsurf

Add this to your Windsurf MCP config file, then restart Windsurf.

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "mcp-language-server-isaacphi": {
      "command": "go",
      "args": [
        "run",
        "github.com/isaacphi/mcp-language-server@latest",
        "--workspace",
        "/path/to/codebase/",
        "--lsp",
        "language-server-executable"
      ],
      "env": {
        "LOG_LEVEL": "INFO"
      }
    }
  }
}

Cline

Open Cline settings, navigate to MCP Servers, and add this server configuration.

Cline MCP Settings (via UI)

{
  "mcpServers": {
    "mcp-language-server-isaacphi": {
      "command": "go",
      "args": [
        "run",
        "github.com/isaacphi/mcp-language-server@latest",
        "--workspace",
        "/path/to/codebase/",
        "--lsp",
        "language-server-executable"
      ],
      "env": {
        "LOG_LEVEL": "INFO"
      }
    }
  }
}

FAQ

What language servers are compatible with MCP Language Server?

It has been tested with pyright (Python), tsserver (TypeScript), gopls (Go), and rust-analyzer (Rust), but should work with many more.

Is there a specific setup required?

Yes, you need to install Go, a language server for your codebase, and configure your MCP-enabled client accordingly.

What is the current status of the MCP Language Server?

The project is currently in pre-beta quality.