Intent: the docs never fall behind the server. Today 41 tools answer in tools/list with no row in docs/MCP.md, and nothing notices.
Done:
[ ] a new test/mcp-docs.test.ts reads the tool names from tools/list (the server's own answer, not a source scan) and the backticked names in the first column of docs/MCP.md's tool table
[ ] it fails when a tool has no row, except for names on an allowlist in the test, one name per line, so two pulls that each remove a name never edit the same line
[ ] it fails when a row names a tool that does not exist
[ ] the allowlist starts as exactly today's undocumented tools; a comment says it only shrinks
Intent: the docs never fall behind the server. Today 41 tools answer in tools/list with no row in docs/MCP.md, and nothing notices.
Done:
Files: one new test.