{"audit":{"version":"1.3","generated_at":"2026-07-21T16:24:36.567155+00:00","generated_by":"Agenstry","report_url":"https://agenstry.com/agents/api.dnsofmoney.com","methodology_url":"https://agenstry.com/methodology","verifier_jwks_url":"https://agenstry.com/.well-known/jwks.json","subject":{"domain":"api.dnsofmoney.com","name":"DNS of Money — Financial Address Resolution Agent","url":"https://api.dnsofmoney.com/.well-known/agent-card.json"}},"identity":{"provider":{"organization":"DNS of Money","url":"https://dnsofmoney.com"},"registry_verification":null,"signature":{"signed":false,"signature_valid":null}},"protocol":{"version":"0.3.0","supports_streaming":false,"supports_push_notifications":false},"operational":{"live_state":"live","live_responds":true,"last_status_code":200,"last_elapsed_ms":105,"last_error":null},"track_record":{"first_seen":"2026-07-21T06:20:53.608812+00:00","last_checked":"2026-07-21T06:20:53.608812+00:00","last_seen_ok":"2026-07-21T06:20:53.608812+00:00","checks_total":1,"checks_ok":1,"uptime_pct":100.0,"archived":false,"archived_reason":null},"conformance":{"score":62,"grade":"C","summary":"C-grade: usable but has clear conformance issues, review the breakdown below.","criteria":[{"key":"valid_card","label":"Valid AgentCard","points":10,"max_points":10,"status":"pass","detail":"Schema-validated A2A AgentCard returned by the well-known endpoint."},{"key":"live_responds","label":"Live JSON-RPC","points":25,"max_points":25,"status":"pass","detail":"Endpoint responds to message/send with valid JSON-RPC (answers in ~105 ms)."},{"key":"protocol_version","label":"Protocol version","points":5,"max_points":10,"status":"partial","detail":"Declares pre-1.0 A2A 0.3.0 (Google preview). Upgrade to v1.x for full points."},{"key":"signature","label":"JWS signature","points":0,"max_points":10,"status":"info","detail":"Card is unsigned (most published agents are)."},{"key":"uptime","label":"Uptime track record","points":0,"max_points":15,"status":"info","detail":"Only 1 probe so far, need ≥5 for an uptime grade."},{"key":"skills","label":"Skill declaration","points":10,"max_points":10,"status":"pass","detail":"Declares 4 skills with structured metadata."},{"key":"verified_identity","label":"Verified Identity","points":5,"max_points":10,"status":"partial","detail":"Provider declared: DNS of Money (https://dnsofmoney.com). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit."},{"key":"freshness","label":"Freshness + modern flags","points":5,"max_points":5,"status":"pass","detail":"declares 1 modern capability flag(s) (x402); seen in upstream source within 0d"},{"key":"security","label":"Security declaration","points":2,"max_points":5,"status":"partial","detail":"Declares 1 security scheme(s) but none use PKCE or mTLS."}]},"skills":[{"id":"resolve_alias","name":"resolve_alias","description":"Resolve a human-readable financial alias (pay: address) to payment endpoints and routing metadata. Call this before initiating any payment to a pay: address. Returns the preferred rail, fallback endpoints, an ISO 20022 hint, and a compliance signal. Field visibility depends on the caller's API-key tier (anonymous callers see status only). Example: resolve_alias('pay:acme.user').","tags":["resolution","discovery","payments"],"examples":["{\"tool\": \"resolve_alias\", \"arguments\": {\"alias_uri\": \"pay:acme.user\"}}"],"inputModes":["application/json","text/plain"],"outputModes":["application/json"]},{"id":"discover_agent","name":"discover_agent","description":"Get the AP2/A2A agent-commerce block for a pay: address — the DNS of Money equivalent of an A2A agent-card lookup. Use this during agent discovery before initiating a mandate flow. Returns agent capabilities only; NO payment credentials. Example: discover_agent('pay:acme.user').","tags":["discovery","agent-commerce"],"examples":["{\"tool\": \"discover_agent\", \"arguments\": {\"alias_uri\": \"pay:acme.user\"}}"],"inputModes":["application/json","text/plain"],"outputModes":["application/json"]},{"id":"get_payment_requirements","name":"get_payment_requirements","description":"Get x402 PaymentRequirements for paying a pay: alias. Returns the 402 `accepts` block (scheme, network, payTo, asset, amount, invoiceId) an x402 agent needs to construct and submit the payment. currency='XRP' settles on the XRP Ledger (amount in drops); currency='USDC' settles USDC on Algorand via the GoPlausible facilitator (amount in atomic micro-USDC, feePayer in `extra`). The deterministic resolver chooses the rail; this tool never moves money. Example: get_payment_requirements('pay:acme.user', amount='1.5').","tags":["payments","x402","quoting"],"examples":["{\"tool\": \"get_payment_requirements\", \"arguments\": {\"alias_uri\": \"pay:acme.user\", \"currency\": \"USDC\"}}"],"inputModes":["application/json","text/plain"],"outputModes":["application/json"]},{"id":"get_agent_registration_info","name":"get_agent_registration_info","description":"Learn how to self-register a FREE pay:agent.<label> alias for your agent. Returns the registration endpoint, the AgentAuthorityCredential verifiable-presentation requirements (intent binding + domain), the rate limit, and the Merkle anchor-proof endpoint. Read-only — registration itself is the credential-gated POST this tool points at. Example: get_agent_registration_info().","tags":["registration","onboarding"],"examples":["{\"tool\": \"get_agent_registration_info\", \"arguments\": {}}"],"inputModes":["application/json","text/plain"],"outputModes":["application/json"]}],"provenance":[{"source":"mcp_registry","first_seen":"2026-07-21T06:20:53.608812+00:00"}],"recent_probes":[{"fetched_at":"2026-07-21T06:20:53.608812+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":105,"live_responds":true}],"catalog_attestation":null,"verification_history":[]}