All servers · Agent payments (x402) · Payments & accounting · APIs & integrations
Surface Contract: platform API behavior and x402 pre-payment checks
dev.workers.penny-mcamp.penny-surface-contract/surface-contract · v2026.10.22
New (7 days)
Measured by MCP Station
| Last check | Reachable |
|---|---|
| Checked at | — |
| Check success 7 / 30 days | — |
| First-try success 30 days | — |
| Median response | — |
| Lookups 30 days | — |
| Authentication | No auth |
| MCP version | 2025-06-18 |
| Rank score | — |
| Declared risk | Not declared (tools carry no read/destructive hints) |
| Capabilities declared | tools |
| Tool definitions | 7 tools · with description 100% · input schema is an object 100% · read/destructive hints 0% |
Description written by the publisher, not verified
Surface contracts: API behavior evidence, x402 pre-payment check, MCP server preflight
Connect
streamable-http · https://penny-surface-contract.penny-mcamp.workers.dev/mcp
claude mcp add --transport http surface-contract https://penny-surface-contract.penny-mcamp.workers.dev/mcp{
"mcpServers": {
"surface-contract": {
"url": "https://penny-surface-contract.penny-mcamp.workers.dev/mcp"
}
}
}Tools as reported by the server
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
Website · JSON · Text for agents · Registry updated 2026-10-22