| No hidden instructions | Tool descriptions don't smuggle orders to the AI, invisible characters, or tricks. | Failed: fetch_notes |
| No secrets leaked | Error messages don't show passwords, keys, tokens or internal file paths. | Failed: search_users |
| Tools work with good inputs | Each safe tool answers in time with something real. | Failed: slow_report |
| Bad inputs give a clean error | Missing or wrong-type inputs get a clear refusal, not a hang or a crash. | Failed: slow_report |
| Every tool is described | Descriptions and inputs explain themselves, and no two tools read the same. | Failed: slow_report |
| Tools are labeled safe or dangerous | Read-only and destructive labels exist, and match what the tool's name says. | Advisory: delete_account |
| Fast enough | Connecting, listing and answering, timed. | Advisory: search_users, 3.0 s |
| Login setup follows the spec | An AI app can find your login and sign in the way the MCP rules describe. | No login on this server |
| Resources and prompts work | What the server offers besides tools opens cleanly. | None offered |
| Tools work together | An ID one tool returns is accepted by the next tool, the way AI apps chain them. | No chains on this server |
| Ready for the newest MCP version | Protocol version and transport, checked against the current spec. | Advisory: older version |