[FEATURE] Support multiple LSP servers per language/file type

Resolved 💬 3 comments Opened Feb 22, 2026 by mkitt Closed Apr 6, 2026

Problem Statement

Modern development workflows rely on multiple specialized LSP servers for the same file type. A TypeScript project commonly runs vtsls (type checking, completions), oxlint (linting), and tailwindcss (class name completions) simultaneously. Most Editors handle this natively.

Claude Code's .lsp.json only supports one server per file extension, forcing users to pick one and lose intelligence from the others.

Proposed Solution

Allow multiple servers in .lsp.json to claim the same file extensions. When Claude Code opens a file, all matching servers are queried and results merged.

{
  "typescript": {
    "command": "vtsls",
    "args": ["--stdio"],
    "extensionToLanguage": { ".ts": "typescript", ".tsx": "typescriptreact" }
  },
  "oxlint": {
    "command": "npx",
    "args": ["oxlint", "--lsp"],
    "extensionToLanguage": { ".ts": "typescript", ".tsx": "typescriptreact" }
  }
}

Priority

Medium - Would be very helpful

Feature Category

Configuration and settings

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗