Home / MCP registry index / dev.workers.penny-mcamp.penny-surface-contract/surface-contract
Surface Contract: how platform APIs really behave
dev.workers.penny-mcamp.penny-surface-contract/surface-contract in the official MCP registry.
Endpoint https://penny-surface-contract.penny-mcamp.workers.dev/mcp.
The registry describes it as: Evidence-cited machine-readable contracts for how agent platform APIs really behave
We read its 7 tools on 2026-10-22. Nothing in them matched our tool-poisoning rules. It also sets server instructions, text a client puts in front of the model on connect; those were read too.
A clean read means these rules found nothing, not that the server is harmless. A server can change its tools at any time, which is why the index reads it again every week.
Tools it advertises
list_surface_contracts get_surface_contract verify_surface contribute_discrepancy get_integration_recipe preflight_mcp_server prepay_check
Run this server? Show the check in your README
The badge reflects the latest weekly read:
[](https://lazaretto.dev/mcp-registry/dev-workers-penny-mcamp-penny-surface-contract-surface-contract)How this was checked
Lazaretto connects to the endpoint the way any MCP client does, asks the server to introduce itself and list its tools, and reads every name, description, parameter schema and server instruction for tool poisoning: hidden directive blocks, orders to read local secrets, parameters built to carry secrets or the conversation out, orders that redirect another server's tools, and invisible characters. It never calls a tool. What we found across the registry.
To run the same check every time Claude Code adds a server, install the free lazaretto-guard plugin. Browse every server in the index.