Skip to content

Add mcpplay doctor diagnostic command #18

@gauthierpiarrette

Description

@gauthierpiarrette

Problem
When a server fails to connect or behaves unexpectedly, users have limited debugging options beyond --verbose. A dedicated diagnostic command would help users self-serve common issues.

Proposed solution
Add mcpplay doctor server.py that runs a series of checks:

  1. Script file exists and is readable
  2. Python interpreter found
  3. Server process starts without crashing
  4. MCP initialize handshake succeeds
  5. tools/list returns valid tools
  6. Tool schemas are valid JSON Schema
  7. Schema compatibility warnings (anyOf/oneOf/allOf issues with known clients)
  8. Summary: "3 tools found, 1 schema warning, server healthy"

Output is human-readable with checkmarks/crosses. Exit code 0 if healthy, 1 if problems found.

Alternatives considered
Adding diagnostics to mcpplay run --verbose. A separate command is cleaner — it runs checks and exits, rather than starting the full UI.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions