Surface Contract: how platform APIs really behave
dev.workers.penny-mcamp.penny-surface-contract/surface-contract · v2026.10.13
Evidence-cited machine-readable contracts for how agent platform APIs really behave
MCPremoteno credentials
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 7 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
A 92/100
What it does: 7 tools · 4 read, 0 write
Test call list_surface_contracts: worked (1,048 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +7
- Read/write annotations: 0
- Safe test call: +20
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://penny-surface-contract.penny-mcamp.workers.dev/mcpTools
7 tools listed at last check
list_surface_contractsList the platform surface contracts published in Penny's free registry, with claim counts.get_surface_contractGet the machine-readable surface contract for a platform host (read/write semantics, pending states, rate limits, limits, idempotency, pagination completeness, data portability), each claim carrying its evidence and its verification status.verify_surfaceRun the anonymous conformance checks for a contract now and return verified / failed / unknown / manual / unsupported per claim.contribute_discrepancyReport a platform behaviour that contradicts a published claim, or a new claim, with evidence. One-line call: POST /v1/contribute with {contractId, kind, statement, evidence[], reporter, observedAt}. Stored as pending; a published contract is never changed without independent verification. A contracget_integration_recipeGet a plain-text integration recipe for a platform: the order of operations to use it, and a guard clause for every behaviour we measured going wrong, each naming the contract claim behind it. Derived from the contract, so it cannot drift from it.preflight_mcp_serverRun the anonymous MCP handshake against ANY https MCP endpoint you name, right now, and get back a verdict (open / refused / unreachable / initialize-transport-error), the shape of any refusal body, whether the server is stateful (sets Mcp-Session-Id), how many tools tools/list returns, and the guarprepay_checkCheck an x402 route BEFORE you pay it. GET /v1/prepay?url=<the route> makes ONE unpaid GET with no payment header and no credential, and returns one row: the measured HTTP status, the parsed x402 v2 challenge (scheme / network / asset / amount / payTo), whether that challenge is schema-valid exact-o
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/dev.workers.penny-mcamp.penny-surface-contract/surface-contract)