Data as of

MCP Language Server for Cursor: Setup & Config

Cursor: Expose an installed language server to MCP assistants for semantic code navigation and edits.

What you can do with MCP Language in Cursor

Choose it to give an MCP coding assistant semantic navigation powered by an existing language server.

  • Rename a symbol consistently across a project.
  • Give a coding client language intelligence without embedding an IDE.

Before you start: MCP Language in Cursor

  • Go
  • Bridge installed with go install github.com/isaacphi/mcp-language-server@latest
  • rust-analyzer installed for this example
  • An MCP client and a local workspace

This is the README's Rust example. Replace the workspace path and choose the appropriate installed language server. Other documented configurations cover gopls, pyright, TypeScript, and clangd.

MCP Language Cursor configuration

  1. Choose Cursor configuration scope

    For MCP Language Server, open Project: .cursor/mcp.json User: ~/.cursor/mcp.json. Merge into mcpServers at project or user scope.

  2. Add MCP Language Server to Cursor

    Use the mcp-language-server entry below in mcpServers. Keep MCP Language Server's documented stdio connection fields and your other Cursor entries.

  3. Check MCP Language Server in Cursor

    MCP Language Server: Enable in Cursor’s MCP settings; inspect tools.

Config file · Project: .cursor/mcp.json

User: ~/.cursor/mcp.json

JSON
{
  "mcpServers": {
    "mcp-language-server": {
      "command": "mcp-language-server",
      "args": [
        "--workspace",
        "/Users/you/dev/yourproject/",
        "--lsp",
        "rust-analyzer"
      ],
      "env": {}
    }
  }
}

MCP Language tools available to Cursor

MCP Language's stored tool list documents 6 tools; compare it with Cursor's connected tool list, because the stored list is not a live check.

definition

Find definition under MCP Language in Cursor's MCP settings; inspect its arguments when the agent requests a call.

references

Find references under MCP Language in Cursor's MCP settings; inspect its arguments when the agent requests a call.

diagnostics

Find diagnostics under MCP Language in Cursor's MCP settings; inspect its arguments when the agent requests a call.

hover

Find hover under MCP Language in Cursor's MCP settings; inspect its arguments when the agent requests a call.

Retrieve documentation and type details at a code location.

rename_symbol

Find rename_symbol under MCP Language in Cursor's MCP settings; inspect its arguments when the agent requests a call.

Apply a language-aware symbol rename across the project.

edit_file

Find edit_file under MCP Language in Cursor's MCP settings; inspect its arguments when the agent requests a call.

Apply multiple file changes using line positions.

MCP Language: full stored tool descriptions

Troubleshooting MCP Language in Cursor

  • Cursor must find mcp-language-server for MCP Language Server. Enable the project/user entry in MCP settings and inspect its tools.
  • MCP Language Server uses stdio here: Cursor must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
  • Known limitation: Requires a separately installed language server.
  • Known limitation: The underlying server must communicate through stdio.
  • Known limitation: The README labels the project beta software.
  • General Cursor troubleshooting lives in the /clients/cursor guide.

MCP Language Server — details. Cursor guide

Frequently asked questions

Cursor's MCP Language Server entry belongs under mcpServers in .cursor/mcp.json (project) or ~/.cursor/mcp.json (user). Confirm the active scope in MCP settings.

Cursor's mcp-language-server example uses stdio.

MCP Language Server's Cursor configuration invokes mcp-language-server.

MCP Language Server's stored list contains 6 tools, including definition, references, diagnostics. Compare those names with Cursor's connected tool list; the stored list is not a live check.

Arguments after -- are forwarded to the underlying language server.

Set LOG_LEVEL to DEBUG to enable verbose stderr logs, including language-server messages.