[Bug] LSP plugin installation fails: path mixes POSIX and Windows formats on macOS
Bug Description
When installing the official csharp-lsp plugin on macOS, Claude Code fails with a message containing a garbled path that mixes macOS/POSIX and Windows paths: "Error: Failed to install: Source path does not exist: /Users/
Environment Info
- Platform: darwin
- Terminal: Apple_Terminal
- Version: 2.0.76
- Feedback ID: f9d3e894-8408-453f-8d17-f50af0b85040
Errors
[{"error":"MaxFileReadTokenExceededError: File content (26010 tokens) exceeds maximum allowed tokens (25000). Please use offset and limit parameters to read specific portions of the file, or use the GrepTool to search for specific content.\n at EdB (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1018:12169)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async Object.call (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1027:996)\n at async Au5 (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:2207:17438)","timestamp":"2025-12-31T16:49:49.031Z"},{"error":"MaxFileReadTokenExceededError: File content (26010 tokens) exceeds maximum allowed tokens (25000). Please use offset and limit parameters to read specific portions of the file, or use the GrepTool to search for specific content.\n at EdB (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1018:12169)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async Object.call (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1027:996)\n at async file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:3490:1459","timestamp":"2025-12-31T17:17:04.365Z"},{"error":"Error: Source path does not exist: /Users/<username>/<repo-path>/C:\\Users\\<user.name>\\.claude\\plugins\\marketplaces\\claude-plugins-official/plugins/csharp-lsp\n at r65 (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1204:9661)\n at C2A (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1204:10270)\n at Dz (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1204:5310)\n at h51 (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1204:6201)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async mA (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:4238:39708)","timestamp":"2026-01-02T07:36:24.143Z"},{"error":"Error: Source path does not exist: /Users/<username>/<repo-path>/C:\\Users\\<user.name>\\.claude\\plugins\\marketplaces\\claude-plugins-official/plugins/csharp-lsp\n at r65 (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1204:9661)\n at C2A (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1204:10270)\n at Dz (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1204:5310)\n at h51 (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:1204:6201)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async YA (file:///Users/<username>/.npm-global/lib/node_modules/@anthropic-ai/claude-code/cli.js:4238:27179)","timestamp":"2026-01-02T07:37:15.693Z"}]
! brew install rust-analyzer ⎿ ==> Fetching downloads for: rust-analyzer ==> Pouring rust-analyzer--2026-01-05.sonoma.bottle.tar.gz 🍺 /usr/local/Cellar/rust-analyzer/2026-01-05: 9 files, 45.4MB … +43 lines (ctrl+o to expand)
OK both Rust and TypeScript LSP servers now installed; try communicating with them
∴ Thinking…
The user has installed rust-analyzer. Let me try the LSP tool again to see if it works now.
⏺ LSP(operation: "documentSymbol", file: "src-tauri/src/commands/operations.rs") ⎿ No LSP server available for file type: .rs
⏺ LSP(operation: "documentSymbol", file: "src/utils/dragdrop.ts") ⎿ No LSP server available for file type: .ts
∴ Thinking…
Still not working. The .lsp.json file I created might not be in the right format or location. Let me check what the plugin's .lsp.json files look like to see the correct format.
⏺ Still not detecting. Let me check the plugin's configuration format:
⏺ Bash(find ~/.claude -name "*.lsp.json" -o -name ".lsp.json" 2>/dev/null | head -5)
⎿ /Users/username/.claude/plugins/cache/claude-code-lsps/omnisharp/0.1.0/.lsp.json
/Users/username/.claude/plugins/cache/claude-code-lsps/clangd/0.1.0/.lsp.json
/Users/username/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0/.lsp.json
… +2 lines (ctrl+o to expand)
∴ Thinking…
Let me read the rust-analyzer plugin's config to see the expected format:
⏺ Read(~/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0/.lsp.json) ⎿ Read 14 lines
∴ Thinking…
Interesting - the format is different from what I used. The plugin's format has the language as a key, and uses extensionToLanguage mapping. Also notice it uses .rs with the dot, not just rs.
But wait - the plugin configuration already exists and should work. The issue might be that:
- Claude Code needs to be restarted to pick up the newly installed rust-analyzer
- The plugin might not be enabled
- There might be some other configuration issue
Let me check if the plugin is enabled properly:
⏺ Bash(cat ~/.claude/settings.json 2>/dev/null | grep -A 20 "enabledPlugins" | head -25)
⎿ "enabledPlugins": {
"omnisharp@claude-code-lsps": true,
"powershell-editor-services@claude-code-lsps": true,
… +7 lines (ctrl+o to expand)
∴ Thinking…
The plugins are enabled. The configuration looks correct. Since rust-analyzer was just installed, Claude Code might need to be restarted to pick up the newly available binary. Also, I should delete my custom .lsp.json file since the plugin already provides the configuration.
⏺ The plugins are configured correctly. Let me remove the redundant .lsp.json I created (the plugins already have their own), and you may need to restart Claude Code for it to detect the newly installed rust-analyzer:
⏺ Bash(rm /Users/username/Source/repos/application/.lsp.json && echo "Removed custom .lsp.json") ⎿ Removed custom .lsp.json
∴ Thinking…
The plugin configuration already provides the LSP settings. The issue is likely that:1. Claude Code caches the LSP server availability at startup 2. Since rust-analyzer was just installed, a restart of Claude Code is needed
Let me try one more time to see if it works now, or inform the user they need to restart.
⏺ LSP(operation: "documentSymbol", file: "src-tauri/src/commands/operations.rs") ⎿ No LSP server available for file type: .rs
∴ Thinking…
Still not working. The user likely needs to restart Claude Code for the LSP changes to take effect. The binary was just installed but Claude Code checks for available LSP servers at startup.
⏺ The plugins are correctly configured but Claude Code likely needs to be restarted to detect the newly installed rust-analyzer binary. LSP server availability is checked at startup.
Try: Restart Claude Code (close and reopen), then test LSP again.
Restarted so test LSP again
∴ Thinking…
The user has restarted Claude Code and wants me to test the LSP again.
⏺ LSP(operation: "documentSymbol", file: "src-tauri/src/commands/operations.rs") ⎿ No LSP server available for file type: .rs
⏺ LSP(operation: "documentSymbol", file: "src/utils/dragdrop.ts") ⎿ No LSP server available for file type: .ts
∴ Thinking…
Still not working. The plugins are installed and the binaries are available, but Claude Code still isn't detecting them. Let me check if there's something wrong with how the plugins are configured or if there's another step needed.
Let me try checking if the binary is now actually in the path that Claude Code can see.
⏺ Bash(which rust-analyzer && rust-analyzer --version)
⎿ /usr/local/bin/rust-analyzer
rust-analyzer 0.0.0 (6a1246b69c 2026-01-04)
∴ Thinking…
rust-analyzer is now available. Let me check if there's something specific about how the plugin configuration works. Maybe I need to look at the plugin marketplace format or check for any additional configuration steps.
Looking at the error, Claude Code says "No LSP server available for file type: .rs" which means it's not finding the configuration for .rs files. The plugins are installed but maybe they're not being loaded correctly.
Let me check if there are any debug commands or additional steps needed.
⏺ The binary is there. Let me check if there's an issue with the plugin loading:
⏺ Bash(cat ~/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0/.lsp.json)
⎿ {
"rust": {
"command": "rust-analyzer",
… +10 lines (ctrl+o to expand)
∴ Thinking…
The plugin config looks correct. The binary is installed. But Claude Code still isn't finding the LSP server. This might be a Claude Code internal issue with how the LSP plugin system works, or there might need to be some additional initialization.
Let me check if there's a way to see what LSP servers Claude Code thinks are available, or if there's documentation on troubleshooting this.
⏺ The config and binary are correct. This might be a Claude Code plugin loading issue. Let me check if there's a TypeScript LSP available:
⏺ Bash(which typescript-language-server && typescript-language-server --version 2>/dev/null || echo "Not found") ⎿ /Users/username/.npm-global/bin/typescript-language-server 5.1.3
∴ Thinking…
Both LSP servers are installed and available. The issue might be:
- The Claude Code LSP plugin system might require specific configuration that's not being picked up
- There might be a bug in the plugin system
- The plugins might need to be re-enabled or have a specific initialization step
Unfortunately, I don't have direct control over how Claude Code loads and initializes its plugins. The LSP tool is available to me, but the underlying plugin configuration seems to not be connecting properly to the installed servers.
I should let the user know that despite the plugins being listed as installed and the binaries being available, there seems to be an issue with Claude Code's plugin system that I can't resolve from within the conversation. They might need to:
- Check the Claude Code debug logs
- Report this as a bug
- Try reinstalling the plugins
⏺ Both LSP servers are installed and in PATH. The plugin configs exist. This appears to be a Claude Code plugin system issue - the plugins show as "Installed" but aren't being loaded by the LSP tool.
You could try:
- Run /plugin and toggle rust-analyzer off then on
- Check ~/.claude/debug/ for LSP-related logs
- Report to Claude Code GitHub if it persists
For now, I can still effectively work with your codebase using the Read, Grep, and other tools - LSP would just provide additional navigation features like "go to definition".
Check ~/.claude/debug/ for LSP-related logs
∴ Thinking…
The user wants me to check the debug logs for LSP-related information.
⏺ Bash(ls -la ~/.claude/debug/ 2>/dev/null || echo "No debug directory")
⎿ total 1820792
drwx------@ 9913 username staff 317216 6 Jan 12:49 .
drwxr-xr-x 47 username staff 1504 6 Jan 13:27 ..
… +310 lines (ctrl+o to expand)
∴ Thinking…
That's a lot of files! Let me search for recent files that might contain LSP-related content, or grep for LSP in the recent logs.
∴ Thinking…
The user wants me to continue investigating the LSP debug logs. From the summary, I was searching through ~/.claude/debug/ for LSP-related logs. Let me read one of those debug files to understand why LSP isn't working.
Let me read one of the debug log files that was mentioned as containing LSP references.
⏺ I'll continue investigating the LSP debug logs. Let me read one of those files to understand why the LSP servers aren't connecting.
⏺ Bash(ls -la ~/.claude/debug/ | head -20)
⎿ total 1820792
drwx------@ 9913 username staff 317216 6 Jan 12:49 .
drwxr-xr-x 47 username staff 1504 6 Jan 13:27 ..
… +17 lines (ctrl+o to expand)
⏺ Search(pattern: "LSP|lsp|rust-analyzer|typescript-language-server", path: "~/.claude/debug/", output_mode: "content", head_limit: 50) ⎿ Found 50 lines (ctrl+o to expand)
∴ Thinking…
I can see the key issue in the logs. Looking at the debug output:
- LSP server manager initialized successfully
- LSP notification handlers registered successfully for all 0 server(s) - 0 servers!
- Total LSP servers loaded: 0
The plugins are being detected and cached, but the LSP servers themselves are not being loaded. Let me look at the most recent debug file to see what's happening. The rust-analyzer plugin is found and cached at /Users/username/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0, but it shows "0 server(s)" initialized.
Let me look for more recent logs and see if there are any errors or more details about why the servers aren't actually being started.
⏺ Interesting - the logs show the plugins are cached but 0 LSP servers are actually loaded. Let me find the most recent debug log to see what's happening:
⏺ Bash(ls -lt ~/.claude/debug/*.txt 2>/dev/null | head -5) ⎿ -rw-------@ 1 username staff 12068917 6 Jan 13:29 /Users/username/.claude/debug/c7f1bba6-b4e7-4adf-9cd3-e1873e04b420.txt -rw-------@ 1 username staff 482310 6 Jan 12:51 /Users/username/.claude/debug/87cc697c-c93a-48ed-83b3-3030c1293c5c.txt -rw-------@ 1 username staff 37469 6 Jan 12:49 /Users/username/.claude/debug/82a4b45a-d265-49a0-9b08-59634df4803a.txt … +2 lines (ctrl+o to expand)
∴ Thinking…
Let me look at the most recent one for LSP-related logs. The file is large (12MB) so let me grep specifically for LSP-related content.
⏺ Search(pattern: "LSP|rust-analyzer|Total.*servers loaded|server(s)", path: "~/.claude/debug/c7f1bba6-b4e7-4adf-9cd3-e1873e04b420.txt", output_mode: "content", head_limit: 80) ⎿ Found 80 lines (ctrl+o to expand)
∴ Thinking…
The log consistently shows "Total LSP servers loaded: 0" despite the plugins being cached. This is interesting - the plugins ARE installed, but no servers are actually being loaded.
Let me check the plugin configuration files to understand what might be wrong. The .lsp.json file I read earlier shows the configuration, but there might be something missing or wrong.
Let me check what's in the plugin directories and see if there's an issue with how the servers are being registered.
⏺ The pattern is clear: "Total LSP servers loaded: 0" every time, despite the plugins being cached. Let me check the plugin structure and configuration:
⏺ Bash(ls -la ~/.claude/plugins/cache/claude-code-lsps/)
⎿ total 0
drwxr-xr-x@ 8 username staff 256 2 Jan 08:39 .
drwx------@ 3 username staff 96 2 Jan 08:39 ..
… +6 lines (ctrl+o to expand)
⏺ Bash(cat ~/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0/entry.json 2>/dev/null || echo "No entry.json found") ⎿ No entry.json found
⏺ Read(~/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0/.lsp.json) ⎿ Read 14 lines
∴ Thinking…
I see the .lsp.json config exists, but there's no entry.json. Let me check what files are in the plugin directory to understand the structure.
⏺ Bash(ls -la ~/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0/)
⎿ total 16
drwx------@ 4 username staff 128 2 Jan 08:38 .
drwxr-xr-x@ 3 username staff 96 2 Jan 08:38 ..
… +2 lines (ctrl+o to expand)
⏺ Bash(cat ~/.claude/plugins/local/claude-code-lsps/manifest.json 2>/dev/null || echo "No manifest found") ⎿ No manifest found
∴ Thinking…
Let me check the plugin.json file - that's likely where the LSP server configuration should be defined.
⏺ Read(~/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0/plugin.json) ⎿ Read 17 lines
⏺ Bash(ls -la ~/.claude/plugins/local/ 2>/dev/null || echo "No local plugins directory") ⎿ No local plugins directory
∴ Thinking…
OK so the plugins are from claude-code-lsps marketplace and they're installed. The plugin.json doesn't have an "entry" field pointing to the .lsp.json file.
Looking at the debug logs earlier, I saw:
- "Plugin rust-analyzer has no entry.skills defined" - this might be a clue
Let me check if there's a settings file that needs to enable the LSP plugins, or check what the plugin loading expects.
Let me also verify rust-analyzer is in PATH:
⏺ Bash(which rust-analyzer && rust-analyzer --version)
⎿ /usr/local/bin/rust-analyzer
rust-analyzer 0.0.0 (6a1246b69c 2026-01-04)
⏺ Bash(cat ~/.claude/settings.json 2>/dev/null | head -100)
⎿ {
"env": {
"PATH": "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/username/.dotnet/tools:/Users/username/.npm-global/bin:/Users/username/.recode/bin"
… +41 lines (ctrl+o to expand)
∴ Thinking…
Interesting! The plugins ARE enabled in settings.json via enabledPlugins. The rust-analyzer binary is installed and working.
The issue might be that the LSP plugins use a specific entry point format. Looking at the debug logs again:
[DEBUG] Plugin rust-analyzer has no entry.skills defined
But the LSP servers are configured in .lsp.json not via skills. Let me check if there's something about how LSP plugins need to be configured.
Let me try to use the LSP tool now that rust-analyzer is installed and see what happens:
⏺ The binary is available and the plugins are enabled in settings. Let me try the LSP tool now:
⏺ LSP(operation: "hover", symbol: "//", in: "src-tauri/src/main.rs") ⎿ No LSP server available for file type: .rs
∴ Thinking…
Still not working. The debug logs showed:
- Total LSP servers loaded: 0
- [LSP SERVER MANAGER] getAllLspServers returned 0 server(s)
This means even though the plugins are enabled and cached, they're not being loaded as LSP servers. Let me look for more clues in the earlier debug log that showed plugin loading:
From the grep output: 2026-01-03T15:20:04.191Z [DEBUG] Loading plugin rust-analyzer from source: "./rust-analyzer" 2026-01-03T15:20:04.191Z [DEBUG] Using provided version for rust-analyzer@claude-code-lsps: 0.1.0 2026-01-03T15:20:04.191Z [DEBUG] Plugin rust-analyzer@claude-code-lsps version 0.1.0 already cached at /Users/username/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0 2026-01-03T15:20:04.191Z [DEBUG] Copied local plugin rust-analyzer to versioned cache: /Users/username/.claude/plugins/cache/claude-code-lsps/rust-analyzer/0.1.0 2026-01-03T15:20:04.191Z [DEBUG] Plugin rust-analyzer has no entry.skills defined
Then later: 2026-01-03T15:20:04.439Z [DEBUG] Checking plugin rust-analyzer: skillsPath=none, skillsPaths=0 paths
And also: 2026-01-03T15:20:04.181Z [DEBUG] LSP server manager initialized successfully 2026-01-03T15:20:04.182Z [DEBUG] LSP notification handlers registered successfully for all 0 server(s)
Wait - this log is from 2026-01-03 but the LSP manager initialization happens BEFORE the plugins are loaded? Let me look at the order more carefully.
I noticed a critical timing sequence that reveals the root cause. The initialization order is problematic: the LSP server manager starts before plugin registration, which means no servers can be added during startup. The timestamps show the manager initializing with zero servers, preventing any subsequent plugin-based server registration. This sequence suggests a fundamental architectural issue in the plugin loading mechanism.
I'll investigate further by examining the full log file, searching for any configuration details or error messages that might explain why the LSP plugins aren't successfully registering with the server manager.
⏺ Let me look at the plugin loading sequence more closely - the logs show plugins loading but 0 servers registered. Let me search for any errors in the debug log:
⏺ Search(pattern: "error|Error|ERROR|failed|Failed|FAILED", path: "~/.claude/debug/2cb284cd-ce4f-4c7e-b65c-367537542b70.txt", output_mode: "content", head_limit: 50) ⎿ Found 5 lines (ctrl+o to expand)
∴ Thinking…
There's an error, but it looks like a network error (TLS/HTTP), not an LSP error. Let me read around that error to understand it better.
⏺ Read(~/.claude/debug/2cb284cd-ce4f-4c7e-b65c-367537542b70.txt) ⎿ Read 60 lines
∴ Thinking…
I see the issue now. Looking at the log sequence:
- Line 8-12: LSP server manager initializes with 0 servers FIRST
- Line 68-70: Then plugins are checked but show 0 skills loaded
- The plugins are cached but never registered as LSP servers
The key line is: Total plugin skills loaded: 0
The LSP plugins have .lsp.json files that define the LSP server configuration, but there's no entry.skills field in their plugin.json. It seems the current plugin system might require an explicit entry point for skills/LSP servers, but the marketplace plugins don't have that set up correctly.
There's also a note about "Total plugin agents loaded: 0" and "Total plugin output styles loaded: 0" - suggesting the plugin system looks for specific entry points that these LSP plugins don't provide.
This appears to be a limitation or bug in how Claude Code loads LSP server configurations from plugins. The plugins are installed, but the LSP server definitions in .lsp.json aren't being picked up by the LSP server manager.
I should let the user know that this is a Claude Code issue that would need to be reported to Anthropic. The LSP plugins are installed correctly but there seems to be a gap between the plugin system and the LSP server manager - the servers defined in .lsp.json files within plugins aren't being loaded.
Let me also check if there's a way to manually configure LSP servers without using plugins.
⏺ I found the issue. Looking at the debug log sequence:
The Problem:
- Line 8-12: LSP server manager initializes with 0 servers at startup
- Line 68-70: Plugins are loaded later but show "Total plugin skills loaded: 0"
- Line 34: "Plugin rust-analyzer has no entry.skills defined"
The LSP plugins contain .lsp.json configuration files, but there's a gap between the plugin system and the LSP server manager. The LSP server definitions in .lsp.json files aren't being registered with the LSP server manager because:
- The LSP manager initializes before plugins fully load
- The plugins don't have an entry.skills or entry.lsp field in their plugin.json that would tell Claude Code to register them as LSP servers
This is a Claude Code bug - the LSP plugins from claude-code-lsps marketplace are installed correctly, but their LSP server configurations aren't being picked up.
Options:
- Report to Anthropic: File an issue at https://github.com/anthropics/claude-code/issues describing that installed LSP plugins show "0 servers loaded"
- Check for updates: Run claude upgrade to see if there's a newer version that fixes this
- Manual LSP config: Claude Code might support direct LSP configuration outside of plugins
⏺ Bash(claude --version 2>/dev/null || echo "claude command not found") ⎿ 2.0.76 (Claude Code)
∴ Thinking…
Let me check if there's a way to configure LSP servers directly in the settings.json without using plugins, or if there's documentation about how to enable LSP support.
⏺ Search(pattern: "lsp|lspServers|languageServers", path: "~/.claude/settings.json", output_mode: "content") ⎿ Found 6 lines (ctrl+o to expand)
∴ Thinking…
The settings only show the plugin enablement, not a separate LSP server configuration. This confirms that LSP servers are supposed to be loaded from plugins, but there's a bug preventing that from working.
Let me summarize the findings for the user. This is a Claude Code product issue that needs to be reported to Anthropic. The user has:
- Installed the rust-analyzer binary correctly (visible in PATH at /usr/local/bin/rust-analyzer)
- Installed the LSP plugins from claude-code-lsps marketplace (they're enabled in settings.json)
- The plugins are cached correctly in ~/.claude/plugins/cache/
But Claude Code's LSP server manager is not loading the servers from these plugins - it shows "Total LSP servers loaded: 0" in every session.
This is clearly a bug in Claude Code version 2.0.76.
⏺ Summary: This is a Claude Code bug in version 2.0.76
What's Working:
- ✅ rust-analyzer binary installed at /usr/local/bin/rust-analyzer
- ✅ LSP plugins installed from claude-code-lsps marketplace
- ✅ Plugins cached in ~/.claude/plugins/cache/
- ✅ Plugins enabled in settings.json
- ✅ .lsp.json files exist with correct configuration
What's Broken:
- ❌ LSP server manager initializes with 0 servers
- ❌ Plugin .lsp.json configurations aren't registered
- ❌ Debug log shows "Total LSP servers loaded: 0"
The plugin system loads the files but doesn't connect them to the LSP server manager. This appears to be a bug where the plugin's .lsp.json definitions aren't being wired up to the LSP tool.
Workaround: The LSP tool isn't available through plugins currently. You would need to report this at https://github.com/anthropics/claude-code/issues.