Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,528Letters: 13Defects: 1,322counted 1 min ago
teppi

Server definition

Hash
sha256:402242c1c6701ac15a824145d427817607bac39e5c2299ed128625711bbd3028
What it is
What a remote MCP server returned when asked what it offers: 14 tools

The blob, as servednamed by its sha256

{ "instructions": "Whetstone's public verifier toolbox as MCP tools. Three tiers. Tier 0 is stateless: you supply the data (exam rows, paired results, documents, event logs) and get back audits, promotion verdicts, patches, or counterexamples; payloads and results are not persisted, while operational counters and standard access logs are retained. Tier 1 is the disposable report card: report_card_start hands your agent a small graph-repair exam minted from the repository's public frontier, report_card_submit grades it by checker spec and requires a verified repair to retain at least 5% of clean support for promotion grade (no answer key exists), then destroys the session. Tier 2 is Open Promotion Bench: open_bench_start gives a paired baseline/candidate scope-integrity cohort, open_bench_submit grades both answer maps, and open_bench_leaderboard returns opt-in public receipts. Published entries retain only the self-attested manifests and sanitized receipts, never tasks or answers. No private exam bank is loaded in this service, so no tool can leak one. Complete request/response examples for every Tier 0 tool: GET /api/examples. Full agent documentation: https://whetstone.cyberelf.link/for-agents — installable skill file: https://whetstone.cyberelf.link/skill.md", "tools": [ { "description": "What this service is: the tool catalog, the tier boundaries, and where the source lives.", "inputSchema": { "additionalProperties": false, "properties": {}, "type": "object" }, "name": "about_whetstone", "outputSchema": null }, { "description": "Exact declared-exposure audit over your exam rows: row identity, behavioral fingerprints for graph-DSL expressions, text-similarity review flags, and a clean exam export. Full example: GET /api/examples key 'leakage'.", "inputSchema": { "additionalProperties": false, "description": "Audit declared exposure against an exam and export the clean remainder.", "properties": { "enable_behavioral_fingerprint": { "default": true, "type": "boolean" }, "enable_text_similarity": { "default": true, "type": "boolean" }, "exam": { "description": "Exam rows. Each row needs item_id (or id) plus prompt/content/input/task/question/expression.", "items": { "additionalProperties": true, "properties": {}, "type": "object" }, "maxItems": 5000, "minItems": 1, "type": "array" }, "exposure": { "description": "Declared exposure rows carrying identity/content fields and an optional source or path.", "items": { "additionalProperties": true, "properties": {}, "type": "object" }, "maxItems": 5000, "minItems": 0, "type": "array" }, "fingerprint_max_n": { "default": 4, "maximum": 5, "minimum": 3, "type": "integer" }, "similarity_threshold": { "default": 0.6, "maximum": 1, "minimum": 0.5, "type": "number" } }, "required": [ "exam" ], "type": "object" }, "name": "audit_leakage", "outputSchema": null }, { "description": "Item-lifecycle diagnostics over your grading history: discriminators, saturated and flaky items, frontier gaps. Full example: GET /api/examples key 'health'.", "inputSchema": { "additionalProperties": false, "description": "Diagnose item lifecycle health from one or more grading-history rows.", "properties": { "history": { "description": "Observed item/system outcomes.", "items": { "additionalProperties": true, "properties": { "domain": { "type": "string" }, "item_id": { "minLength": 1, "type": "string" }, "passed": { "type": "boolean" }, "system": { "minLength": 1, "type": "string" } }, "required": [ "item_id", "system", "passed" ], "type": "object" }, "maxItems": 5000, "minItems": 1, "type": "array" }, "items": { "description": "Optional item definitions.", "items": { "additionalProperties": true, "properties": { "domain": { "type": "string" }, "item_id": { "minLength": 1, "type": "string" } }, "required": [ "item_id" ], "type": "object" }, "maxItems": 5000, "minItems": 0, "type": "array" } }, "required": [ "history" ], "type": "object" }, "name": "bank_health", "outputSchema": null }, { "description": "Bounded simulated-annealing search for a graph counterexample inside a DSL predicate class, with an exact certificate when found. CPU-bounded and strictly rate-limited. Full example: GET /api/examples key 'counterexample'.", "inputSchema": { "additionalProperties": false, "description": "Run a bounded graph search against one Whetstone predicate expression.", "properties": { "expression": { "description": "Graph predicate in the Whetstone DSL, for example: is_connected and is_triangle_free and not is_bipartite", "maxLength": 500, "minLength": 1, "type": "string" }, "ns": { "default": [ 8, 9, 10, 11 ], "description": "Graph sizes searched.", "items": { "maximum": 12, "minimum": 4, "type": "integer" }, "maxItems": 5, "minItems": 1, "type": "array" }, "restarts": { "default": 4, "maximum": 6, "minimum": 1, "type": "integer" }, "seed": { "default": 0, "type": "integer" }, "steps": { "default": 800, "maximum": 1500, "minimum": 50, "type": "integer" } }, "required": [ "expression" ], "type": "object" }, "name": "counterexample_hunt", "outputSchema": null }, { "description": "Quarantine declared exposure, compare paired baseline/candidate outcomes on the clean remainder, and issue a promotion receipt. Bring your own exam rows, exposure records, and per-item results. Full example: GET /api/examples key 'inspector'.", "inputSchema": { "additionalProperties": false, "description": "Audit exposure, prove a complete clean cohort, then gate baseline versus candidate.", "properties": { "baseline": { "additionalProperties": { "type": "boolean" }, "description": "item_id -> boolean pass/fail result for the baseline system.", "maxProperties": 5000, "minProperties": 1, "type": "object" }, "baseline_name": { "default": "baseline", "type": "string" }, "candidate": { "additionalProperties": { "type": "boolean" }, "description": "item_id -> boolean pass/fail result for the candidate system.", "maxProperties": 5000, "minProperties": 1, "type": "object" }, "candidate_name": { "default": "candidate", "type": "string" }, "domains": { "additionalProperties": { "type": "string" }, "description": "Optional item_id -> domain label mapping.", "type": "object" }, "enable_behavioral_fingerprint": { "default": true, "type": "boolean" }, "enable_text_similarity": { "default": true, "type": "boolean" }, "exam": { "description": "Exam rows. Each row needs item_id (or id) plus prompt/content/input/task/question/expression.", "items": { "additionalProperties": true, "properties": {}, "type": "object" }, "maxItems": 5000, "minItems": 1, "type": "array" }, "exposure": { "description": "Declared exposure rows carrying identity/content fields and an optional source or path.", "items": { "additionalProperties": true, "properties": {}, "type": "object" }, "maxItems": 5000, "minItems": 0, "type": "array" }, "fingerprint_max_n": { "default": 4, "maximum": 5, "minimum": 3, "type": "integer" }, "policy": { "additionalProperties": false, "description": "Explicit promotion policy. Omitted fields use the documented defaults.", "properties": { "confidence_alpha": { "default": 0.05, "exclusiveMinimum": 0, "maximum": 1, "type": "number" }, "max_regressions": { "default": 0, "minimum": 0, "type": "integer" }, "min_gains": { "default": 1, "minimum": 0, "type": "integer" }, "require_retained_probe": { "default": false, "type": "boolean" } }, "type": "object" }, "retained_probe": { "additionalProperties": false, "description": "Optional retained-capability result checked alongside the paired cohort.", "properties": { "base_verified": { "minimum": 0, "type": "integer" }, "candidate_verified": { "minimum": 0, "type": "integer" }, "items": { "minimum": 0, "type": "integer" } }, "required": [ "base_verified", "candidate_verified", "items" ], "type": "object" }, "similarity_threshold": { "default": 0.6, "maximum": 1, "minimum": 0.5, "type": "number" } }, "required": [ "exam", "baseline", "candidate" ], "type": "object" }, "name": "inspect_promotion", "outputSchema": null }, { "description": "Compare query-free salience against objective-conditioned relevance for a set of memories under a token budget. Full example: GET /api/examples key 'memory'.", "inputSchema": { "additionalProperties": false, "description": "Rank caller-supplied memories against a concrete objective under a token budget.", "properties": { "context_entities": { "description": "Entities already active in context.", "items": { "type": "string" }, "maxItems": 100, "type": "array" }, "current_step": { "minimum": 0, "type": "integer" }, "memories": { "description": "Memories to rank.", "items": { "additionalProperties": false, "properties": { "age": { "default": 0, "minimum": 0, "type": "integer" }, "confidence": { "default": 0.8, "maximum": 1, "minimum": 0, "type": "number" }, "content": { "minLength": 1, "type": "string" }, "entities": { "description": "Entities explicitly present in this memory.", "items": { "type": "string" }, "maxItems": 100, "type": "array" }, "kind": { "default": "episodic", "type": "string" }, "source": { "default": "uploaded", "type": "string" }, "use_count": { "default": 0, "minimum": 0, "type": "integer" } }, "required": [ "content" ], "type": "object" }, "maxItems": 1000, "minItems": 1, "type": "array" }, "objective": { "minLength": 1, "type": "string" }, "objective_entities": { "description": "Optional explicit entities when the objective text is not self-describing.", "items": { "type": "string" }, "maxItems": 100, "type": "array" }, "question_kind": { "default": "generic", "type": "string" }, "token_budget": { "default": 90, "maximum": 10000, "minimum": 1, "type": "integer" } }, "required": [ "objective", "memories" ], "type": "object" }, "name": "memory_relevance", "outputSchema": null }, { "description": "TIER 2: list the self-attested public Open Promotion Bench receipts. Entries contain manifests, verdicts, item-level transitions, and commitments but never task contents or submitted answers.", "inputSchema": { "additionalProperties": false, "properties": {}, "type": "object" }, "name": "open_bench_leaderboard", "outputSchema": null }, { "description": "TIER 2: start a one-shot Open Promotion Bench session. Returns six fresh virtual-repository scope-integrity tasks. Run a baseline and candidate independently on the same cohort, then submit both answer maps with open_bench_submit. This is an open, procedural, self-attested track rather than a private-bank credential.", "inputSchema": { "additionalProperties": false, "properties": { "challenge": { "description": "Caller nonce bound into the signed receipt for replay detection.", "maxLength": 128, "minLength": 8, "type": "string" } }, "type": "object" }, "name": "open_bench_start", "outputSchema": null }, { "description": "TIER 2: grade paired baseline and candidate patches, count gains/regressions/ties, and issue PASS/HOLD/BLOCK. Set publish=true plus attestation=true to append only the safe manifests and sanitized receipt to the public board; tasks and answers are never persisted.", "inputSchema": { "additionalProperties": false, "properties": { "attestation": { "type": "boolean" }, "baseline_answers": { "type": "object" }, "baseline_manifest": { "additionalProperties": false, "properties": { "harness": { "type": "string" }, "model": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "candidate_answers": { "type": "object" }, "candidate_manifest": { "additionalProperties": false, "properties": { "harness": { "type": "string" }, "model": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "publish": { "type": "boolean" }, "session_id": { "type": "string" } }, "required": [ "session_id", "baseline_manifest", "candidate_manifest", "baseline_answers", "candidate_answers" ], "type": "object" }, "name": "open_bench_submit", "outputSchema": null }, { "description": "PASS, HOLD, or BLOCK from paired per-item results: gains, regressions, exact McNemar p-value, per-domain breakdown. Full example: GET /api/examples key 'gate'.", "inputSchema": { "additionalProperties": false, "description": "Compare identical baseline and candidate item cohorts under an explicit policy.", "properties": { "baseline": { "additionalProperties": { "type": "boolean" }, "description": "item_id -> boolean pass/fail result for the baseline system.", "maxProperties": 5000, "minProperties": 1, "type": "object" }, "baseline_name": { "default": "baseline", "type": "string" }, "candidate": { "additionalProperties": { "type": "boolean" }, "description": "item_id -> boolean pass/fail result for the candidate system.", "maxProperties": 5000, "minProperties": 1, "type": "object" }, "candidate_name": { "default": "candidate", "type": "string" }, "domains": { "additionalProperties": { "type": "string" }, "description": "Optional item_id -> domain label mapping.", "type": "object" }, "policy": { "additionalProperties": false, "description": "Explicit promotion policy. Omitted fields use the documented defaults.", "properties": { "confidence_alpha": { "default": 0.05, "exclusiveMinimum": 0, "maximum": 1, "type": "number" }, "max_regressions": { "default": 0, "minimum": 0, "type": "integer" }, "min_gains": { "default": 1, "minimum": 0, "type": "integer" }, "require_retained_probe": { "default": false, "type": "boolean" } }, "type": "object" }, "retained_probe": { "additionalProperties": false, "description": "Optional retained-capability result checked alongside the paired cohort.", "properties": { "base_verified": { "minimum": 0, "type": "integer" }, "candidate_verified": { "minimum": 0, "type": "integer" }, "items": { "minimum": 0, "type": "integer" } }, "required": [ "base_verified", "candidate_verified", "items" ], "type": "object" } }, "required": [ "baseline", "candidate" ], "type": "object" }, "name": "promotion_gate", "outputSchema": null }, { "description": "Turn reasoning-emulator control events into checkpoints, rewinds, notes, and a timeline. Full example: GET /api/examples key 'replay'.", "inputSchema": { "additionalProperties": false, "description": "Reconstruct checkpoints, rewinds, branches, and verifier outcomes from control events.", "properties": { "events": { "description": "Ordered reasoning-emulator events.", "items": { "additionalProperties": false, "properties": { "detail": { "type": "string" }, "kind": { "description": "Event class such as control, verifier, model, or observation.", "type": "string" }, "source": { "default": "native", "type": "string" }, "step": { "minimum": 0, "type": "integer" } }, "required": [ "kind", "detail" ], "type": "object" }, "maxItems": 5000, "minItems": 1, "type": "array" }, "notes": { "description": "Optional analyst notes.", "items": { "type": "string" }, "maxItems": 5000, "type": "array" } }, "required": [ "events" ], "type": "object" }, "name": "replay_trace", "outputSchema": null }, { "description": "TIER 1: start a disposable report-card session. Returns exam items (graph-repair prompts minted from the repository's public frontier) for THIS agent to answer. Answer every item, then call report_card_submit exactly once. Sessions are one-shot, expire in 15 minutes, and are strictly rate-limited. This demonstrates the promotion-gate mechanism on disposable items; it is not a private-bank credential.", "inputSchema": { "additionalProperties": false, "properties": { "challenge": { "description": "Caller nonce bound into the signed receipt for replay detection.", "maxLength": 128, "minLength": 8, "type": "string" } }, "type": "object" }, "name": "report_card_start", "outputSchema": null }, { "description": "TIER 1: submit answers for a report-card session and receive the graded report (per-item verdicts, per-domain totals, SHA-256 commitments). Grading is by checker spec: verified strict refinements are reported separately, and promotion grade requires at least 5% clean-support retention. No answer key exists. The session is destroyed by this call.", "inputSchema": { "additionalProperties": false, "properties": { "answers": { "additionalProperties": { "type": "string" }, "description": "item_id -> answer (a DSL predicate, or the JSON reply the prompt asked for)", "type": "object" }, "session_id": { "type": "string" } }, "required": [ "session_id", "answers" ], "type": "object" }, "name": "report_card_submit", "outputSchema": null }, { "description": "Apply a section-scoped Markdown patch under conservation checks (untouched sections stay byte-identical; protected tokens preserved). Full example: GET /api/examples key 'safepatch'.", "inputSchema": { "additionalProperties": false, "description": "Apply deterministic, section-scoped Markdown replacements under conservation checks.", "properties": { "document": { "description": "Complete Markdown document to patch.", "maxLength": 200000, "minLength": 1, "type": "string" }, "operations": { "items": { "additionalProperties": false, "properties": { "allow_token_changes": { "description": "Protected literal tokens that this operation may intentionally change.", "items": { "type": "string" }, "maxItems": 100, "type": "array" }, "find": { "minLength": 1, "type": "string" }, "replace": { "type": "string" }, "target_heading": { "description": "Markdown heading text without the leading # characters.", "minLength": 1, "type": "string" } }, "required": [ "target_heading", "find", "replace" ], "type": "object" }, "maxItems": 50, "minItems": 1, "type": "array" }, "reason": { "type": "string" } }, "required": [ "document", "operations" ], "type": "object" }, "name": "safe_patch", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:402242c1c6701ac15a824145d427817607bac39e5c2299ed128625711bbd3028 | sha256sum