{"name":"dev.agentdiet/assay","slug":"agentdiet-assay","title":"Assay A2A, MCP & x402 Pre-Flight Verifier & Observatory","description":"Live behavioral security verifier, schema auditor, and trust oracle for A2A, MCP & x402 agents.","url":"https://mcp.market/server/agentdiet-assay","rating":null,"grade":"A","score":91,"certified":false,"status":"active","category":"maps","tags":["maps","security"],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-10-17T08:54:05.000Z","license":"MIT"},"uptime":{"percent":100,"checks":26,"ok":26,"last_checked_at":"2026-11-02T10:45:46.781Z","last_ok_at":"2026-11-02T10:45:46.781Z","latency_ms":105},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/robertoyanguas-ops/assay","website":"https://assay.agentdiet.dev","version":"7.0.17","remotes":[{"type":"streamable-http","url":"https://assay.agentdiet.dev/mcp"}],"packages":[],"tools":[{"name":"assay_get_ledger_policy","description":"Retrieve historical conformance observations and manage pinned SHA-256 tools/list policy hashes in the Assay ledger for a target endpoint. When expected_tools_hash is provided, it pins that 64-hex digest as the target's baseline policy and compares it against the latest stored observation; when omitted, it returns the stored dossier and last 20 drift observations without network probing unless the target is unindexed. Idempotent; first 5 calls/IP are free. Use to audit historical drift or pin mcp-lock.json hashes; for live pre-execution gating use assay_preflight; for live re-indexing use assay_probe; for post-payment SLA receipts use assay_verify_delivery. Example: target='https://agentdiet-72343955726.us-central1.run.app/mcp'.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"target":{"type":"string","minLength":8,"maxLength":512,"examples":["https://agentdiet-72343955726.us-central1.run.app/mcp"],"description":"Public HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked."},"expected_tools_hash":{"type":"string","minLength":0,"maxLength":128,"description":"Optional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. Omit to read or auto-pin the current live digest; pass a 64-hex digest to enforce zero-drift gating."}},"required":["target"],"additionalProperties":false,"examples":[{"target":"https://agentdiet-72343955726.us-central1.run.app/mcp"}]}},{"name":"assay_preflight","description":"Gate a remote MCP, A2A, or x402 endpoint before calling or paying it by probing live JSON-RPC reachability, hashing tools/list (SHA-256), and scanning for prompt-injection poisoning. When expected_tools_hash is provided, any mismatch against the live tools/list digest forces verdict='deny' to block silent schema rug-pulls; when omitted, verdict reflects liveness and injection safety alone. Read-only gate; first 5 calls/IP are free and quota-exceeded calls return a 402 top-up prompt. Use before tool execution or payment; to register or refresh public leaderboard telemetry use assay_probe; to read or pin stored policy hashes use assay_get_ledger_policy; after payment use assay_verify_delivery. Example: target='https://agentdiet-72343955726.us-central1.run.app/mcp'.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"target":{"type":"string","minLength":8,"maxLength":512,"examples":["https://agentdiet-72343955726.us-central1.run.app/mcp"],"description":"Public HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked."},"expected_tools_hash":{"type":"string","minLength":0,"maxLength":128,"description":"Optional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. Omit to read or auto-pin the current live digest; pass a 64-hex digest to enforce zero-drift gating."}},"required":["target"],"additionalProperties":false,"examples":[{"target":"https://agentdiet-72343955726.us-central1.run.app/mcp"}]}},{"name":"assay_probe","description":"Register a new remote MCP, A2A, or x402 endpoint or refresh its public Assay Observatory dossier by running a live HTTP, agent-card, and JSON-RPC tools/list inspection without policy gating. Target must be a public HTTPS origin (private IPs are rejected with a 400 error); each call appends a timestamped observation and increments rug_pulls if tools_hash drifted since the prior stored observation. Writes to the public ledger; first 5 calls/IP are free and retries are idempotent on steady schemas. Use to onboard or re-index a server; for pre-call allow/deny gating use assay_preflight; for historical observations or hash pinning use assay_get_ledger_policy; for post-payment disputes use assay_verify_delivery. Example: target='https://agentdiet-72343955726.us-central1.run.app/mcp'.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"target":{"type":"string","minLength":8,"maxLength":512,"examples":["https://agentdiet-72343955726.us-central1.run.app/mcp"],"description":"Public HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked."}},"required":["target"],"additionalProperties":false,"examples":[{"target":"https://agentdiet-72343955726.us-central1.run.app/mcp"}]}},{"name":"assay_verify_delivery","description":"Audit a paid x402 or A2A provider after payment to confirm delivery or prove an SLA breach with an HMAC-SHA256 signed receipt. Passing status_code >= 500 forces verdict='sla_breach_confirmed' even if the live re-probe succeeds, while passing tx_hash cryptographically binds your Base or Solana payment signature into the receipt (omitting tx_hash still verifies liveness and issues a probe-bound receipt). Non-destructive; first 5 calls/IP are free and failed target connections do not throw tool errors. Use only after paying a provider; before payment use assay_preflight; for public indexing use assay_probe; for policy history use assay_get_ledger_policy. Example: target='https://agentdiet-72343955726.us-central1.run.app/mcp'.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"target":{"type":"string","minLength":8,"maxLength":512,"examples":["https://agentdiet-72343955726.us-central1.run.app/mcp"],"description":"Public HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked."},"tx_hash":{"type":"string","minLength":0,"maxLength":128,"description":"Optional on-chain payment transaction hash (0x Base USDC hash or base58 Solana signature) to bind into the signed SLA receipt. Omit to run an unsigned post-call SLA check."},"status_code":{"type":"string","minLength":0,"maxLength":8,"description":"Optional HTTP status code returned by the paid endpoint (e.g. '200', '502', '504'). Codes >= 500 force verdict='sla_breach_confirmed' even if a retry probe succeeds."}},"required":["target"],"additionalProperties":false,"examples":[{"target":"https://agentdiet-72343955726.us-central1.run.app/mcp"}]}}],"scan":{"score":91,"grade":"A","scanned_at":"2026-10-26T04:59:32.300Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-26T04:59:32.222Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 724ms"]},"poisoning":{"score":15,"max":15,"notes":["4 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":15,"max":15,"notes":["last push 9 days ago"]},"identity":{"score":8,"max":10,"notes":["endpoint served from the registry-verified namespace domain"]}},"findings":[],"inputs":{"probes":[{"url":"https://assay.agentdiet.dev/mcp","reachable":true,"authRequired":false,"latencyMs":724,"serverInfo":{"name":"assay","version":"0.7.31"}}],"packages":[],"repo":{"found":true,"owner":"robertoyanguas-ops","repo":"assay","archived":false,"pushedAt":"2026-10-17T08:54:05Z","stars":0,"forks":0,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/246869963?v=4","ownerCreatedAt":"2025-11-29T15:33:56Z","license":"MIT"},"icon":{"url":"https://assay.agentdiet.dev/logo.svg","source":"registry"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-10-17T08:54:05.000Z","score":23}}}},"grade_history":[],"reviews":[]}