feat(plugins): Add mcp-doctor plugin for robust MCP config validation#30257
Open
stevenelliottjr wants to merge 1 commit intoanthropics:mainfrom
Open
feat(plugins): Add mcp-doctor plugin for robust MCP config validation#30257stevenelliottjr wants to merge 1 commit intoanthropics:mainfrom
stevenelliottjr wants to merge 1 commit intoanthropics:mainfrom
Conversation
The built-in /doctor command can falsely report valid .mcp.json files as invalid JSON (anthropics#30172). This happens because the internal JSON parser uses an LRU cache and the directory-walking logic can misattribute errors. This plugin provides an independent validation path with: - Fresh JSON parsing every time (no caching false positives) - Exact error positions (line and column numbers) - Encoding detection (BOM, UTF-16, invisible characters) - Server-type-specific schema validation (stdio/sse/http/ws) - Detection of common mistakes (trailing commas, comments) - /validate-mcp slash command and SessionStart hook Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This was referenced Mar 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
mcp-doctorplugin that provides robust.mcp.jsonvalidation, working around the false-positive JSON parsing issue in the built-in/doctorcommand ([BUG] /doctor falsely reports valid .mcp.json as 'not a valid JSON' #30172)jsonmodule for fresh parsing on every invocation — no LRU cache, no stale results/validate-mcpslash command and aSessionStarthook for automatic diagnosticsWhat it catches that /doctor misses
Validation coverage
mcpServerswrapper validation, server-type-specific required fields (stdio needscommand, sse/http/ws needurl), env var type checking, args array validationmcpServersin user settings; respectsCLAUDE_CONFIG_DIRTest plan
/validate-mcpon a project with.mcp.json🤖 Generated with Claude Code