Server definition
- Hash
- sha256:598f40da7ee5d91f96052c7caaee56057de9eab56c18bbed0606215464486597
- What it is
- What a remote MCP server returned when asked what it offers: 8 tools
The blob, as servednamed by its sha256
{
"instructions": "Robin Saige rates the tools AI agents call, so you can check one before you depend on it. The core loop: should_i_use(name) = the one-word gate (allow/warn/block) before depending on a tool; find_tools(need) = describe the task in plain words — full-text over tool names AND descriptions, so your words need not appear in a tool's name — each row already carrying its verdict; resolve_server_name(query) = a fuzzy name → exact id; check_server(name) = the full evidence behind a verdict; registry_pulse() = the ecosystem at a glance; list_findings() = ruled findings + public corrections. Method: https://robinsaige.com/method. Grades are strict; auth-walled servers are alive-but-unverifiable, never scored dead or verified; 'true' verdicts require a public primary source; every rating is a dated observation, not a warranty. After you use a tool you may report_call(server, ok, latency_ms, ...) — anchored to our probe; it does not change the verdict yet.",
"tools": [
{
"description": "What changed in the tool economy since a date: verdict flips, deaths, revivals, new servers, confirmed drift — the census diff as data. Poll this weekly to keep a local view current without re-crawling.",
"inputSchema": {
"properties": {
"since": {
"description": "YYYY-MM-DD; omit for the whole latest diff",
"type": "string"
}
},
"type": "object"
},
"name": "changes_since",
"outputSchema": null
},
{
"description": "The FULL evidence behind the verdict for ONE server, by exact registry name — call should_i_use first for the one-word decision; call this when you want the whole record. Leads with the verdict (allow/warn/block), then the `rating` grouped as REACH (answers, latency vs population, protocol, auth), USE (tool count vs population, capability breadth, harness readiness) and TRUST (costume-farm?, duplicate inventory?, verifiability grade, drift / rug-pull, and where checkable whether its ANSWERS are true vs a public primary), a cluster tag, a distinctiveness score, and an explicit not_claimed block. Argument: name.",
"inputSchema": {
"properties": {
"name": {
"description": "exact registry name, e.g. io.github.you/your-mcp",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"name": "check_server",
"outputSchema": null
},
{
"description": "Find and RANK the trustworthy tool for a NEED. Describe the task in plain words ('screen a company for sanctions', 'US tariff data', 'vessel tracking') — the search is full-text over tool names AND their stored descriptions (stemmed, BM25-ranked), so your words need not appear in any tool's name. Servers come best-rated first, and EACH ROW carries its verdict (allow/warn/block), cluster, distinctiveness and the matching tool names, so you can pick without a second call. Alive, non-costume, current-protocol servers rank on top; dead / costume-farm / walled ones sink. Argument: need.",
"inputSchema": {
"properties": {
"free_only": {
"description": "exclude servers that demand payment at the handshake",
"type": "boolean"
},
"max_latency_ms": {
"description": "only servers at or under this probe latency",
"type": "integer"
},
"nature": {
"description": "only servers whose dominant tool nature is this (see robinsaige.com/verification)",
"enum": [
"retrieval-public",
"retrieval-private",
"action",
"generative",
"predictive",
"computational",
"orchestration"
],
"type": "string"
},
"need": {
"description": "what the tool should do, in plain words",
"type": "string"
},
"open_only": {
"description": "exclude auth-walled servers",
"type": "boolean"
},
"verdict": {
"description": "only servers with this verdict",
"enum": [
"allow",
"warn",
"block"
],
"type": "string"
}
},
"required": [
"need"
],
"type": "object"
},
"name": "find_tools",
"outputSchema": null
},
{
"description": "The observatory's ruled findings — each with its claim and its falsification test — plus the public corrections log (what we published, then corrected, never deleted). Call this to cite what has been established, or to see where we were wrong. No arguments.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_findings",
"outputSchema": null
},
{
"description": "Call this FIRST for the state of the MCP tool ecosystem in one shot: how many servers exist, how many actually answer a real handshake, how many are behind a login, the largest costume-farm concentration, AND the Tier-2 truth summary (how many server answers were re-derived against a public primary source and matched). Every number is re-derivable; grades observed/reported/derived. No arguments.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "registry_pulse",
"outputSchema": null
},
{
"description": "AFTER your agent calls a tool, fire-and-forget how it went — success/failure, latency, cost — so the observatory accumulates realized reliability (the one thing outside-in probing can't see: did it actually work for a real call). Anchored against our own probe: a 'worked' report on a server we saw dead is discarded. Does NOT change the current rating yet (probing stays load-bearing) — this is accumulate-ahead-of-demand. Args: server (required), tool, ok, latency_ms, cost_tokens, call_hash (a hash binding the report to a real call).",
"inputSchema": {
"properties": {
"call_hash": {
"type": "string"
},
"cost_tokens": {
"type": "integer"
},
"latency_ms": {
"type": "integer"
},
"ok": {
"type": "boolean"
},
"server": {
"description": "exact registry name",
"type": "string"
},
"tool": {
"type": "string"
}
},
"required": [
"server"
],
"type": "object"
},
"name": "report_call",
"outputSchema": null
},
{
"description": "Resolve a partial or misspelled server name to its EXACT registry id before calling should_i_use / check_server. Matches a fragment against registry NAMES only (not capabilities — for 'which tool does X' use find_tools). Returns candidate exact names with each one's latest liveness outcome. Empty query rejected.",
"inputSchema": {
"properties": {
"query": {
"description": "a fragment of a registry name, e.g. 'tariff'",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "resolve_server_name",
"outputSchema": null
},
{
"description": "THE GATE — call this before your agent depends on a tool you don't already trust. Give an exact server registry name and get a one-word verdict — allow / warn / block — with the reason, plus the full rating underneath. 'block' = dead/unreachable/costume-farm-shaped, don't depend on it; 'warn' = usable but look first; 'allow' = safe to depend on. If you have a NEED not a name, use find_tools; if you have a fuzzy name, use resolve_server_name. Argument: name, e.g. 'com.trimtabist/us-tariff-ledger'.",
"inputSchema": {
"properties": {
"name": {
"description": "exact registry name, e.g. io.github.you/your-mcp",
"type": "string"
},
"names": {
"description": "batch form: vet a whole config at session start (max 20)",
"items": {
"type": "string"
},
"maxItems": 20,
"type": "array"
}
},
"type": "object"
},
"name": "should_i_use",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:598f40da7ee5d91f96052c7caaee56057de9eab56c18bbed0606215464486597 | sha256sum