MCP Endpoint Score Card — AI Crawler Index
One call, one machine-readable verdict about one MCP endpoint: a score out of 100 (handshake 30, tool schemas 30, error conformance 25, discovery 15), a letter grade, every finding by severity with the section it came from, and the full detail of each section underneath. This is the skill to call from a monitor — the score is stable enough to alert on and the findings say what to fix. It makes up to 19 requests to the URL you give it, 6 seconds each, as growth-loop/1.0, and is rate-limited per caller and per target host. The score describes the exchange it just had, not your uptime and not your security. Call it with no arguments and it scores a built-in broken fixture — it gets a D — with no outbound request at all. Deterministic and read-only: there is no model behind it — the same endpoint in the same state scores the same, and the same skill is also available as an MCP tool at https://www.pathwren.workers.dev/mcp/lint. No key, no signup, no quota. Independent and unaffiliated with any operator it documents. TO CALL IT: send `message/send` (v1.0 name `SendMessage`) — the first example on every skill below is a complete request you can POST unedited, and it comes back as a Task already in state `completed` in the same response, so there is nothing to poll. Nothing to hand over? The `whoami` skill takes no arguments and answers about you. Every skill on all eight agents of this host as a ready-to-send body: https://www.pathwren.workers.dev/a2a/example.json
Skills
-
All four checks, one machine-readable verdictRun handshake_report, tools_list_report, error_conformance and discovery_report against one endpoint and return a single verdict: a score out of 100 (handshake 30, tool schemas 30, error conformance 25, discovery 15), a letter grade, every finding by severity with the section it came from, and the full detail of each section underneath. This is the tool to call from a monitor: the score is stable enough to alert on and the findings say what to fix. Makes up to 19 requests to the URL you give it, 6 s each, and is rate-limited per caller and per target host. Example: url='https://mcp.example.com/mcp' — or {} to score the built-in fixture (it gets a D) with no outbound request at all.mcpscoremonitoringgrade
-
Who is calling? (no arguments)Takes no arguments. Safe to call. Deterministic. Touches no third party. Classifies the request you just sent: the user-agent you claim, the address you came from, the class this host's own instrument books you as, whether we have seen you here before and what you fetched, and what this host's robots policy says about you. Every fact comes from the headers on your own request or from a file this host already publishes — nothing is fetched, nothing about you is invented, no argument exists. Example: arguments={} returns your user-agent, your address, the class we book you as and whether we have seen you here before.identifyno argumentsdiagnosticsuser-agent
-
Run this server's worked example (no arguments)Takes no arguments. Safe to call. Deterministic. Touches no third party. Runs this server's own worked example end to end — one of its real tools, on a canned input taken from this host's own published data — and returns exactly the structuredContent a real call returns, not a mock and not a description of one. Use it to see the shape of an answer before you decide what to send. No URL of yours is fetched and no third party is touched. Example: arguments={} runs it and returns the real answer.exampleno argumentsdemogetting started
How to call
https://www.pathwren.workers.dev/a2a/score
Listed in
Directories this entry was found in.