[BUG] mcp__ide__getDiagnostics available in CLI (integrated terminal) but missing from VSCode extension panel
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Summary
mcp__ide__getDiagnostics is available when running Claude Code CLI from VSCode's integrated terminal, but is completely absent from the deferred tools list when running via the native VSCode extension panel. The entire ide MCP namespace is missing.
What Should Happen?
mcp__ide__getDiagnostics should be available in the extension panel, since the IDE MCP server is started by the extension itself.
Error Messages/Logs
try listing mcp__ide available pls
> Nothing. The mcp__ide__* namespace simply doesn't exist in this session's tool registry. Confirmed still broken.
[info] From claude: 2026-03-30T02:28:04.977Z [DEBUG] ToolSearchTool: keyword search for "ide diagnostics", found 0 matches
Steps to Reproduce
- Open a TypeScript project in VSCode with the Claude Code extension active
- Open the Claude Code extension panel
- Ask Claude to use
mcp__ide__getDiagnostics— tool is not available - The
ideMCP namespace is entirely absent from the deferred tools list - Open VSCode's integrated terminal and run
claudeCLI mcp__ide__getDiagnosticsis available and works correctly
Claude Model
Opus
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.87
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
VS Code integrated terminal
Additional Information
The IDE MCP server IS running (confirmed via lock file):
$ ls -t ~/.claude/ide/*.lock | head -1
~/.claude/ide/17340.lock
$ cat ~/.claude/ide/17340.lock
{"pid":713,"workspaceFolders":["/Users/username/..."],
"ideName":"Visual Studio Code","transport":"ws",
"runningInWindows":false,"authToken":"..."}
The extension panel knows it's running inside VSCode:
CLAUDE_CODE_ENTRYPOINT=claude-vscode
CLAUDECODE=1
CLAUDE_AGENT_SDK_VERSION=0.2.87
But it does not set the two env vars needed for IDE MCP server discovery:
ENABLE_IDE_INTEGRATION= (empty)
CLAUDE_CODE_SSE_PORT= (empty)
These env vars are only injected into integrated terminal contexts. The CLI in the terminal picks them up and connects to the IDE MCP server; the extension panel cannot discover it.
Workarounds attempted
| Approach | Result |
|---|---|
| claude-code.claudeProcessWrapper shell script that reads lock file and exports env vars | Env vars did not propagate — extension panel likely doesn't use the wrapper |
| mcp__ide__* explicitly allowed in .claude/settings.json and .claude/settings.local.json | No effect — tools are never registered |
| VSCode window reload | No effect |
| settings.json env field | Only accepts static strings; port is dynamic per session |
Working workaround
Use Claude CLI from VSCode's integrated terminal instead of the extension panel.
Additional context
- Other MCP servers work in the extension panel (
mcp__chakra-ui__*,mcp__plugin_playwright_playwright__*,mcp__zeplin__*) - The
typescript-lspplugin'sLSPtool works correctly in the extension panel - No
PreToolUsehooks blockmcp__ide__*tools - No
.mcp.jsonconfig exists
7 Comments
Having the same issue in Cursor
I have the same issue: when running the plugin in extension mode it simply does not call Use mcp__ide__getDiagnostics. The one built into VS Code Copilot handles this without any problem, and in terminal mode it also works. Please fix this; without the functionality, when the agent has access to all diagnostic data for the code, using this extension becomes meaningless.
Yeah, still an issue, still annoying. "The LSP says X doesn't exist. {waits} Maybe it's stale. {waits} It's stale, moving on". There's a perfectly valid real-time LSP _right there_!
Closing for now — inactive for too long. Please open a new issue if this is still relevant.
In case it's useful for anyone my workaround to get claude to see the problems pane was to create a node powered MCP shim.
npm i @modelcontextprotocol/sdk wsin the tooling folder./mcpshows vscode-problems.You can then ask claude to check it with a slash command
/vscode-problems(or just tell it the server exists and to check when you want it to).mcp.json in project root
tooling/vscode-problems-mcp.mjs
This is fantastic @npapadacis - many thanks! I ran with it and made this an NPM package: https://github.com/ptim/claude-vscode-ide-bridge-mcp
Glad it was helpful. Looks like you definitely ran with it, that's a much more comprehensive solution than my quick hack 😋