Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Added "agent_pass", "agent_pattern", "blast_radius" and 4 more; changed the definition of "ranked_agents" (18 tools before, 25 now)
⟨2 unchanged words⟩ "items":{"properties":{"declared_name":{"properties":{"cleaned":{"type":["boolean"},"original_length":{"type":"integer"},"source":{"type":"string"},"text":{"type":"string"},"truncated":{"type":"boolean"},"untrusted":{"const":true}},"required":["untrusted","source","text"],"type":["object","null"]},"id":{"type" ⟨39 unchanged words⟩
The Agent Pass: eight checks on an agent at one moment (free, shadow) — What the ledger measured about one registration at its last evaluation under agent.pass.v2, valid three hours: published level L7+, no open harm-kind incident, a counted payment in the last 30 days, its newest payment in character, no issuer freeze on a bound wallet, no unlimited approval to a plain key, no harm-kind incident in 90 days, and a month without a payment out of character. Answers holds or not, which checks failed, which could not be taken (listed, never written as 0), when it was checked and when it expires, with the issuer's public key. In shadow mode nothing is signed yet. A Pa…
Is an agent's newest payment in character (free, shadow) — The out-of-character score of an agent's newest counted payment against its own earlier payments (behaviour.out_of_character.v2: amount out of its distribution, a new payee at a new size, a never-paid plain key, a probe then a large payment, a look-alike address, an approval change, off its rhythm), with the reasons that fired, how many of its last 30 days of payments scored notable or major, and the market's rates. Levels are none / notable / major; a level is a pattern for a human to read, never a verdict, and in shadow mode nothing is blocked from it. Every figure carries its measurement t…
What a stolen key would control: an agent's wallets at one block (free) — For an agent (L8 or above) or one of its bound wallets: priced stablecoin and token balances and ETH in USD at one block, the EIP-7702 delegate if any with its code hash and known sweeper family, and the open ERC-20 allowances the wallet granted, confirmed on chain and capped at the balance per token (agent.blast_radius.v1). Read every six hours from free public nodes. A measurement of exposure at one block, not a prediction; unpriced tokens are listed by symbol.
Register a canary (operator session required) — Register the public part of a decoy you planted: kind address|key|url|apikey|tool|x402 with exactly one target (address, url_sha256, key_sha256, tool_name or resource_path), a label, the triggers to watch (nonce, code, permit, siwe, inbound_transfer, http_hit, api_use, tool_call, x402_request) and planted_at. Needs Authorization: Bearer <Desk session>; the session's wallet is the operator. Private material is refused before validation; a bait key must be fresh (nonce 0, no code). A canary is a decoy you plant where only an intruder or a misled agent would read it: a bait key that never holds …
Your canaries, their state and their fires (operator session required) — Every canary you registered, with the watcher's last reading (nonce, code, balance, checks) and the newest 20 events per canary (trigger, severity, evidence, whether you declared it a test, the reading in plain words and what to do). Needs Authorization: Bearer <Desk session>. Labels are your own text and come back in the untrusted envelope.
Can this agent pay this address, now, this much? (free, log-only) — One call before an agent pays: the payee facts, the agent's own context from our ledger (what it paid in the period, how often, whether and when it first paid this payee, how many new payees today), the out-of-character score of this payment as the agent's next, and a decision under a policy written in the AP2 mandate vocabulary (allowed_payees, amount_range, budget {max, period: daily|rolling_24h|rolling_7d}, agent_recurrence, execution_date) plus ours: new_payee {max, window_hours, max_new_per_day, step_up_ratio, step_up_days}, refuse_conditions {fact: block|warn|log|ignore} and signal {v2:…
Seven facts about an address before paying it (free) — What the chain and our ledger say about an address an agent is about to pay (payee.facts.v1): its code kind (plain key, contract, EIP-7702 delegated) and whether the delegate matches a known sweeper or the tiny-forwarder shape; whether it forwards most of what it receives within minutes (relay shape); whether its stablecoin outflow goes to swap venues; who funds it and where it exits (7 days of Transfer logs); whether a contract exposes a claim-on-proof selector; an issuer freeze; how many registered agents pay it; and, given the paying agent and the amount, whether it is a never-paid destina…
Certificate recorded, valid to 2026-12-03
Authorization not required
Added "agent_independence", "agent_stability", "ladder_dynamics" and 1 more; changed the definition of "evidence_pack_quote" (14 tools before, 18 now)
⟨85 unchanged words⟩ money went next; candidates, never verdicts), trace (where did the money go: its exits followed live up to three hops, with each hop's issuer freeze, swap out of a freezable token and Tron activity), bundle, reval (a live re-probe) or statement ⟨62 unchanged words⟩
⟨23 unchanged words⟩ liveness","paygraph","drain","exit","trace","incidents","peer","builders","bundle"," ⟨26 unchanged words⟩
Changed the definition of "evidence_pack_quote" and "ranked_agents"
⟨55 unchanged words⟩ (which apps build its transactions, ERC-8021), exit (did its wallet empty out: every window in which a new payee took most of its outflow in 72 hours, with where the money went next; candidates, never verdicts), bundle, reval (a live re-probe) or statement ⟨62 unchanged words⟩
⟨22 unchanged words⟩ precheck","liveness","paygraph","drain","exit","incidents","peer","builders","bundle"," ⟨26 unchanged words⟩
Changed the definition of "pay_check"
⟨19 unchanged words⟩ its detections in the last 72 hours, the token approvals its wallet has given (unlimited ones, and any to a plain account), its last counted payment, and its payments seen ⟨51 unchanged words⟩
Added "list_metrics", "pay_check" and "payer_set"; changed the definition of "agent_record", "agent_statement", "detections" and 3 more (11 tools before, 14 now)
before
—after
{"properties":{"agent":{"description":"The record: rank with evidence, bindings, the 25 newest payments","type":"object"},"as_of":{"type":["string","null"]},"note":{"type":"string"},"ranked":{"description":"false when the id is not among ranked agents","type":"boolean"},"url":{"type":"string"}},"type":"object"}⟨54 unchanged words⟩ is false, or if flags is notempty.empty; then call find_agent and refuse if open_incidents is above zero. A statement covers a closed 3-hour window and publishes a few hours after it closes, so it cannot show the last few hours.
Changed the definition of "evidence_pack_quote"
⟨6 unchanged words⟩ dated evidence pack over x402 (USDC on Base, 1 to 25 cents). About one agent: precheck (the routine check before you pay or hire it: level, last payment, live incidents, statement freshness, and with payto what that address is), liveness, paygraph (where it pays), drain, incidents, peer, builders (which apps build its transactions, ERC-8021), bundle, reval (a live re-probe) or statement (its last 24 statements with proofs). About onereceivingaddress: counterparty (which ranked agents paid it) or venue (what the address is: label, contract or key, who pays it, poisoning look-alike or not, live 48-hour flow). This tool does not pay; an x402-capable ⟨18 unchanged words⟩
⟨5 unchanged words⟩ Agent token id, slug or wallet; for counterparty
Changed the definition of "detections"
Anomalies our detectors logged, newest first: drain-shaped payments (each with the share of the wallet's balance it took), retry storms, mint bursts, fleet-funding fan-outs (layering_fan), owner changes under a binding, delegation to ⟨16 unchanged words⟩
Unknown → Live
First tool surface recorded: 11 tools (server version 1.1.0)
https://agenticfinancegraph.com/mcp (mcp_streamable_http) — from mcp_registry, with the record
Showing the latest 12 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
Does an agent's rank rest on demand outside its own operator set (free) — For one ranked agent: its independence score (1 if it paid, in 30 days, an address with demand from three or more operator sets; else half the best score of an agent outside its set that paid one of its payees, best path, at most three hops), the path, its L9 counterparty count under the published rule and under the cluster-aware rule, the inflation ratio between them, and the size of its operator set (same bound wallet, owner, minter or first funder, each link capped at 50). Definitions rank.independence.v1, rank.inflation.v1, cluster.ratio.v1.
How long an agent has behaved the same way (free) — The behaviour clock for one ranked agent: run_days (complete UTC days since the last break in its own payment behaviour, by a CUSUM on payments, USD, payees and new-payee share against its own history), the last break's date and feature, and its heartbeat over 30 days (scheduled, irregular, bursty or sparse, with the dispersion index and the gap CV). A break is a change, not a harm; the measured false-break rate is published in the document. Definitions stability.run_length.v1 and stability.heartbeat.v1.
How ranked agents end, and which platforms drain more than the market (free) — The whole-cohort document: cumulative incidence of the four competing exits (drained, abandoned, dormant, none) at 30, 60, 90 and 180 days with the numbers at risk and the restricted mean time without an exit (ladder.exit_incidence.v1); the Standardised Drain Ratio per minting address with 30 or more ranked agents, with 95% intervals (platform.sdr.v1); the day-to-day transition matrix between L7, L8, L9 and out (ladder.transition.v1); and the landmark re-check of the published survival figures (survival.landmark.v1).
Verify our published total and our statement log (skeptical client) — Trust nothing you did not recompute. Verifies the Ed25519 signature on the current sum-log head (the Merkle-sum root over every counted payment and the total it commits to), optionally climbs one agent's proof from its leaf to the root and the whole total, reports how many of the previous head's leaves the current head declares unchanged, changed, removed and added, and verifies the statement log's signed tree head and, given the head you kept (tree_size, root_hash), the consistency proof that our statement history was not rewritten. Keep the heads it returns and pass them next time. Definiti…
⟨6 unchanged words⟩ above: a bound wallet was seen payingamoneydifferentoutaddressof the agent's control after registration). Sorted by level first ( ⟨48 unchanged words⟩
⟨37 unchanged words⟩ a shape with evidence, never a verdict.OptionallyFilterforbyoneagent,agent.kind, severity, time or live incidents only; compact drops the glossaries.
⟨10 unchanged words⟩ token id)","type":"string"},"compact":{"description":"Leave out the glossaries and tier notes","type":"boolean"},"kind":{"enum":["drain_pattern","retry_storm","mint_burst","layering_fan","uri_timeout_streak","bind_closed_after_nft_transfer","god_key_unknown_7702"],"type":"string"},"limit":{"default":10,"maximum":25,"minimum":1,"type":"integer"},"live_only":{"description":"Only detections that are live incidents","type":"boolean"},"severity":{"enum":["info","notable","major"],"type":"string"},"since":{"description":"ISO time; only detections at or after it","type":"string"}},"type":"object"}
Look uponean ERC-8004 agent by token id on Base, slug,orwallet address (0x...).or the name it declares. Returns whether it is ranked, its liveness level ⟨3 unchanged words⟩ , stablecoin float, payment totals and open incidents. Up to 25 ids at once, separated by commas. A name is matched among ranked agents only, and a declared name is the agent's own claim, not verified.
⟨3 unchanged words⟩ {"query":{"description":"Token id (e.g.57657), slug (8004-base-57657)or, walletaddress(0x...), a declared name, or up to 25 ids separated by commas","type":"string"}},"required": ⟨3 unchanged words⟩
{"additionalProperties":false,"properties":{"compact":{"description":"Leave out the reading notes and the previous-sample block (figures, data quality and licence stay)","type":"boolean"}},"type":"object"}
before
—after
{"properties":{"as_of":{"type":"string"},"chain":{"type":"string"},"data_quality":{"type":"object"},"days_still_scanning":{"type":["object","null"]},"figures":{"additionalProperties":{"properties":{"as_of":{"type":["string","null"]},"definition_id":{"type":["string","null"]},"stale":{"type":"boolean"},"unit":{"type":["string","null"]},"value":{"type":["number","null"]}},"required":["value"],"type":"object"},"type":"object"},"reading":{"type":"string"},"since":{"type":["object","null"]},"source":{"type":"string"}},"required":["as_of","figures"],"type":"object"}⟨10 unchanged words⟩ was seen paying a different address after registration). Sorted by level first (L9,sortedthen L8, then L7), then by lifetime counted USD; sort_by changes theledger'sseconddefaultkeyorder.to distinct counterparties or number of payments. A high place means a large counted spender at that level, not a working service: read agent_record before relying on one. Free tier: up to 25.
⟨23 unchanged words⟩ 9,"minimum":7,"type":"integer"},"sort_by":{"default":"usd","description":"Order within each level: lifetime counted USD (default), distinct counterparties, or number of counted payments","enum":["usd","counterparties","payments"],"type":"string"}},"type":"object"}
before
—after
{"properties":{"agents":{"items":{"properties":{"declared_name":{"type":["string","null"]},"id":{"type":"string"},"liveness":{"type":"integer"},"pay":{"type":"object"},"slug":{"type":"string"},"token_id":{"type":"string"},"url":{"type":"string"}},"required":["slug","liveness"],"type":"object"},"type":"array"},"as_of":{"type":"string"},"returned":{"type":"integer"},"total_ranked":{"type":"integer"},"withheld_by_tier":{"type":"integer"}},"required":["agents"],"type":"object"}List the measured metrics — Every metric the ledger measures or archives: key, unit, definition id, whether it is a headline figure, its first stored sample, and the date from which its history compares across our own changes (comparable_since). Use a filter (part of a key, a definition id or a word from its note) to get the notes too.
Check an agent before paying it (free) — One free call before your agent pays or hires another: its latest statement (stale, age, chain_ok, flags), live incidents, its detections in the last 72 hours, its last counted payment, and its payments seen after the statement window closed (from its 25 newest payments, so the hours a statement cannot show are not blind). Returns facts and which of the documented refuse conditions are met; the decision stays with you. The paid precheck pack adds what the address you were given to pay is.
Who paid an agent, and whether its reviews come from payers (free) — The wallets observed paying one agent (income into its bound wallets, plus counted payments from other registered agents), up to 250, with payments, USD and first and last paid; and how much of its ERC-8004 feedback is payment-grounded (the reviewer paid the agent before rating it). Pass the addresses as clientAddresses to the Reputation Registry's getSummary to read only reviews from wallets that paid. Observed payers are a lower bound, and payment-grounded is not independent: a payer under the same operator grounds its own reviews.