[Bug] TypeScript LSP Plugin Not Registering with LSP Tool System

Resolved 💬 15 comments Opened Jan 4, 2026 by olegakbarov Closed Mar 13, 2026

Hi! Default (anthropic-provided) LSP plugin do not work for me. Below the details and proposed (by CC) fix.

Bug Description
Bug Report: TypeScript LSP Tool Returns "No LSP server available" Despite Plugin Being Enabled

Summary

The LSP tool returns "No LSP server available for file type: .ts" even when:

  1. typescript-lsp@claude-plugins-official plugin is enabled in settings
  2. typescript-language-server is globally installed and accessible in PATH

Environment

  • Claude Code version: Latest (as of Jan 2026)
  • OS: macOS (Darwin 24.3.0)
  • Node: v22.13.1 (via nvm)
  • typescript-language-server: 4.4.0 (globally installed)

Steps to Reproduce

  1. Enable the TypeScript LSP plugin in ~/.claude/settings.json:

{
"enabledPlugins": {
"typescript-lsp@claude-plugins-official": true
}
}

  1. Install typescript-language-server globally:

npm install -g typescript-language-server

  1. Verify installation:

which typescript-language-server
# Returns: /Users/name/.nvm/versions/node/v22.13.1/bin/typescript-language-server

typescript-language-server --version
# Returns: 4.4.0

  1. Use the LSP tool in Claude Code on any TypeScript file:

LSP operation: documentSymbol
filePath: src/lib/shared/utils.ts
line: 1
character: 1

Expected Behavior

The LSP tool should connect to the typescript-language-server and return document symbols, hover information, go-to-definition results, etc.

Actual Behavior

The LSP tool returns:
No LSP server available for file type: .ts

Investigation Done

  1. Confirmed plugin is enabled in ~/.claude/settings.json ✓
  2. Confirmed typescript-language-server is globally installed ✓
  3. Confirmed binary is in PATH and executable ✓
  4. Restarted Claude Code multiple times ✗ (no effect)
  5. Checked ~/.claude.json for LSP config options - none documented
  6. Reviewed Claude Code documentation - no explicit LSP server registration mechanism exists

Hypothesis

The typescript-lsp@claude-plugins-official plugin and the LSP tool appear to be disconnected systems. The plugin may provide some functionality, but it doesn't register a language server that the LSP tool can discover and use.

Requested Fix

Either:

  1. Make the typescript-lsp plugin properly register with the LSP tool system
  2. Add explicit LSP server configuration in settings.json or ~/.claude.json, e.g.:
  {
    "lspServers": {
      "typescript": {
        "command": "typescript-language-server",
        "args": ["--stdio"],
        "fileTypes": [".ts", ".tsx", ".js", ".jsx"]
      }
    }
  }

Environment Info

  • Platform: darwin
  • Terminal: ghostty
  • Version: 2.0.76
  • Feedback ID: 57946a01-2dc6-48aa-abae-d323bf135693

Errors
No errors

View original on GitHub ↗

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