The public contract
See. Check. Explain.
Each tool does one job and returns typed output plus read-only ads://resources. There is no generic shell tool hiding behind the protocol.
- 01
See
ads_renderRender the interface
Capture a local web address or root-confined component in a real browser, or call a configured native Apple snapshot adapter.
Inspect request and result
request { "target": { "type": "url", "url": "http://127.0.0.1:3000/mcp" }, "states": [ "default" ], "viewports": [ { "width": 390, "height": 844 }, { "width": 1280, "height": 800 } ], "waitFor": "main" }result { "status": "complete", "capturedStates": [ "default" ], "viewports": [ "390x844", "1280x800" ], "seriousAxeViolations": 0, "horizontalOverflowAt": [], "touchTargetsUnder48": [] } - 02
Check
ads_evaluateEvaluate the evidence
Normalize deterministic gates into a review packet, then keep judgment human-owned or call an explicitly configured visual judge.
Inspect request and result
request { "runId": "run_ms0ubiex_26ad1c244418", "judge": { "mode": "none" }, "rubric": { "task": "Make the ADS MCP understandable on mobile and desktop", "criteria": [ { "name": "Design Quality", "weight": 35 }, { "name": "Originality", "weight": 30 }, { "name": "Craft", "weight": 20 }, { "name": "Functionality", "weight": 15 } ] } }result { "status": "needs_human", "verdict": null, "scores": null, "blockers": [] } - 03
Explain
ads_traceTrace the decisions
When provenance was captured during render, verify that consequential decisions map to exact manifest skill rules, source constraints, implementation files, and evidence from the same run.
Inspect request and result
request { "runId": "run_ms0ubiex_26ad1c244418", "context": "ADS MCP public lab", "decisions": [ "semantic-contract-surface" ] }result { "valid": true, "errors": [], "resources": [ "trace", "trace-validation" ] }
Frozen verification
One client. One run.
Receipts all the way down.
This packet is generated through the compiled standard-input server and a real Model Context Protocol client. It is a local verification artifact, not a simulated dashboard feed.
run_ms0ubiex_26ad1c244418- 01
ads_rendercomplete2 viewports with 0 blocking gates - 02
ads_evaluateneeds_humandeterministic checks passed - 03
ads_tracevaliddecision provenance verified
Read-only evidence
The run stays inspectable.
Large artifacts remain outside the chat transcript. Agents can fetch only the known files recorded for a run; the server never becomes a general filesystem browser.
ads://runs/{runId}/manifestads://runs/{runId}/evidenceads://runs/{runId}/receiptads://runs/{runId}/reportads://runs/{runId}/traceads://runs/{runId}/trace-validationads://runs/{runId}/screenshots/{filename}
The honest boundary