GOLEMREACH

GolemreachTrustBot/0.1

We probe remote MCP servers listed in the official MCP registry from outside, once per round per endpoint, and publish the results at golemreach.com/trust.

A probe does what any MCP client does on first connect: one HTTP GET, one initialize, one tools/list. We never call tools, never send credentials, and never authenticate beyond what the endpoint offers publicly. Concurrency is capped at 10; timeout 12s; rounds are spaced 5s apart across distinct hosts, and each endpoint is probed at most once every 6 hours.

Takedown / opt-out

Email ops@golemreach.com with the endpoint URL and it will be removed from the index within 48h. The whole host is excluded from future MCP and A2A probes, including future registry imports. Its reports and measurements are removed.

A2A agent-card discovery

The same sweep also fetches /.well-known/agent-card.json (A2A v1.0; legacy .well-known/agent.json honored) once per host — a single unauthenticated GET, no crawling, results published at the A2A index with a per-agent report at /trust/a2a/<host> and api/a2a.json. Recorded card hashes are SHA-256 (first 16 hex) of the card's canonical JSON — parsed object, sorted keys, no whitespace — not raw response bytes. Same opt-out applies.

A2A card-drift tracking

Each round we re-hash every live card's canonical JSON. When the hash changes between rounds, a changed event is recorded; if a host that previously served a live card answers HTTP 404 on every candidate path, a removed event is recorded (transient network errors never count as removal). Events are published at api/a2a-drift.json, on the A2A index, and in each agent's report page. Whitespace-only edits do not count — hashes are canonical-form.

Drift tracking

Each round we hash every server's public tools/list. When the hash changes between rounds, the change is recorded and published at api/drift.json and on the index page. We never call tools to obtain it — the manifest is what any client sees before connecting.

Grade rubric

Each round a probe scores an endpoint 0–100: start at 100; −45 unreachable, −35 invalid TLS, −10 cert expiring <14d, −15/−5 latency >5s/>1.5s, −15 failed MCP handshake, −20×(1−recent success), −25 per heuristic flag. Letter grades: A ≥90, B ≥75, C ≥60, D ≥40, F below. An A additionally requires: live MCP handshake OK, valid TLS with >30 days left, zero heuristic flags, and median-round latency ≤800ms — anything less caps at B. Flags are pattern matches on public tool text, never verdicts on their own.