fix(doctor): read Amp and Goose MCP registrations instead of calling them unreadable
Merged
FM
4d ago+94+94+01234567890123456789-0-0-0123456789
What
egc doctor reported the Amp and Goose MCP registrations as unreadable even when egc init had registered the servers. The MCP section only had readers for json, claude-cli, toml, zed-context-servers, opencode-mcp and crush-mcp, so the amp-settings and goose-yaml target formats fell through to "no reader for the format".
Change
- Add a reader for
amp-settings(JSON under theamp.mcpServerskey the registrar writes). - Add a reader for
goose-yaml(the YAMLextensionslist, each with a stdio transport). - Add a test for both readers, plus a guard that fails if any registration target format lacks a doctor reader, so a new target cannot reintroduce this gap.
Test
node --test tests/lib/doctor-mcp-readers.test.js passes all four cases: the two readers, an empty-key case, and the every-format-has-a-reader guard.
Summary by cubic
egc doctor now reads Amp and Goose MCP registrations instead of reporting them as unreadable when egc init had registered the servers.
- Adds a JSON reader for the
amp-settingsformat, reading servers from theamp.mcpServerskey. - Adds a YAML reader for the
goose-yamlformat, reading servers from theextensionslist. - Adds tests for both readers and a guard that fails if any registration target format lacks a doctor reader.