Touchstone
Connect Live on-chain → x402 · Algorand
The assay layer for agent payments

Every endpoint claims to be gold.

A touchstone tells real gold from fool's gold by the trace it leaves. Touchstone does the same for services — your agent rubs each one against Algorand's on-chain ground truth and reads the verdict before a cent moves.

your agent the stone reads the trace
Connect your agent → See it live →
trace reading on-chain · LocalNet
Atlas Geocode genuine · 0.87
QuickPin base metal · 0.19

Same claim. Different trace. The stone can't be argued with.

the first real strike 0.01 USDC settled live on Algorand Mainnet through the real GoPlausible facilitator — the payment and our trust-gate cleared in one atomic group. view the proof →
Connect your agent

One MCP entry, and your agent checks who it's paying.

Touchstone is a drop-in MCP server. Add it to any MCP client — Claude Desktop, Claude Code, any host — and your agent gets four tools: rank x402 services by their on-chain trust trace, and pay through the atomic gate while keeping its own signing key. Touchstone only proposes; the agent verifies and signs.

Add it — one mcpServers entry

{
  "mcpServers": {
    "touchstone": {
      "command": "python",
      "args": [".../mcp_server.py"],
      "env": { "ALGOD_URL": "https://your-algorand-node" }
    }
  }
}

Four tools your agent gets

find_service — rank x402 endpoints by the on-chain trust trace, filtered to your bar + budget.
get_trust — an endpoint's trace + its on-chain attestation (wash-z, provenance).
propose_call — an unsigned [pay, gate] group you verify + sign with your own key.
route_and_call — pay-and-settle through the gate: a wash endpoint reverts on-chain.
Early access The server, the gate, and a real Mainnet USDC settlement are built and proven. Self-host the server against your own Algorand node today; a one-line hosted install is being stood up now.
What Touchstone is

The oldest trust test, rebuilt on the newest substrate.

A touchstone is a slab of black stone. Rub gold across it and the color of the trace reveals its purity — instantly, with no paperwork and no one's word to take. We do exactly that for services: rub each candidate against Algorand's permanent record, and read the truth off the trace.

A layer, not a platform

Bolt it onto the agents you already run.

A drop-in MCP server — no migration, no marketplace to join. Your agent calls four tools and gets back signed evidence it checks itself, while keeping its own signing key. Touchstone only proposes; the agent verifies and signs.

find_service · rank x402 endpoints by the on-chain trust trace get_trust · an endpoint's trace + its on-chain attestation propose_call · an unsigned [pay, gate] group you verify + sign yourself route_and_call · pay-and-settle: revert a wash endpoint on-chain
Atomic ground truth

The verdict isn't ours to assert — it's the chain's to enforce.

We compute the trace off-chain, then hand the power to Algorand. The check rides inside the payment as one atomic group — so there's no seam, no instant where money moves but the check doesn't.

01Enforced — below your bar, it reverts on-chain. Δ = 0.
02Recorded — every attestation written on-chain, permanent and public.
03Recomputable — frozen math over public receipts. Re-run it, get the same trace.
How it works, end to end

From "who can do this?" to a trace that never fades.

01

Ask & discover

Your agent needs a service. Touchstone pulls live x402 listings from the GoPlausible discovery API — real Algorand endpoints, today — and fetches each candidate's on-chain payment history, the gold to be tested.

02

Rub against the stone

Is the demand real, or wash-traded to fake popularity? The chain is the stone; the trace is the trust score — published with the limits of what it can't catch.

03

Decide & settle, atomically

Your rule decides — pay only if the trace beats your bar. Payment, rule-check and record settle as one indivisible group. If it would fail, nothing moves.

04

The trace stays

The receipt is now a permanent, public fact — and it feeds the next test. Every honest call darkens the record and sharpens the stone.

Under the hood

Is the demand real, or manufactured?

A faker can pay itself to look popular — that's wash trading. Counting payments can't catch it: a fake ring and a real hit both look busy. So we don't count. We ask: could innocent luck explain this timing? Shuffle the real history thousands of times, then measure how far the true pattern sits from that innocent cloud. That distance is the trace.

How far from "innocent luck"?

the wash-trade trace · real LocalNet runs
flag beyond here
innocent range
Atlas −0.8
MapRush −2.3
QuickPin +7.5

QuickPin's self-paying ring lands at +7.5 — miles outside anything luck produces. Caught by timing. Atlas, a real service, sits at −0.8, right inside the innocent range.

Channel 1 · Timing

Catches bursts and coordination. But a patient faker can spread payments thin to look natural. MapRush did — timing alone scores it −2.3, a miss.

one trace is not enough →

Channel 2 · Who funded whom

Follow the money backwards. If one wallet quietly seeded every "customer," it shows no matter how the timing is spread. MapRush's provenance: 0.77 — caught.

two independent signals, one verdict

And we publish the floor — the smallest fake we could still miss.

blind test · synthetic traffic
~6%
clean conditions
~10%
under a market flash
~25%
flash + attacker effort
>25%
max-effort wide lock — not certified

In a blind test on synthetic wash/honest traffic the detector scored 0% false alarms, 100% precision. Sub-floor and max-effort fakes are reported as not certified, never "caught" — a bounded, falsifiable claim, still to be validated on a real on-chain split.

What others can't do

A crowded field — and one structural difference.

Plenty of projects now score agents. Almost all produce a number you check on a server and then choose to obey. Touchstone is the only one that puts the check inside the payment, over a trace you can recompute yourself.

Approach
What it scores
When it acts
Recompute it?
Touchstone
The service you're about to pay
Inside the payment — reverts on-chain
Yes — frozen math, public receipts
Reputation scores
e.g. ACHIVX
The paying agent, for discounts
Advisory, before — provider decides
No — server-side model
Trust-oracle scores
e.g. AgentRadar
Any agent address, composite
Advisory; verdict written on-chain
Partly — score stays off-chain
Escrow + arbitration
e.g. PayCrow, Arbitova
The transaction — funds in escrow
After — hold, then dispute
n/a — a judge / LLM jury rules
On-chain reviews
e.g. ERC-8004
The agent, via paid-customer reviews
Advisory, before payment
Reviews public; score is yours to build

Reflects each project's public materials as of mid-2026 and its design approach — not a head-to-head benchmark.

The assay bench · try it

Set the rule. Assign your agents. Read the traces.

A rule is just the limits Touchstone enforces for you. Use a preset or build your own, then give each agent a rule and watch which sample it would pay — and the trace that sample leaves on the stone.

illustrative — synthetic samples chosen to show how the rules behave; the trace colors mirror the real wash-detector verdict.

The presets

Build your own rule

assign it to any agent below
Minimum trust0.55

How pure the trace must be before you'll pay.

Hidden-fraud tolerance20%

Reject if fakes could hide below this share of volume.

Max price / call$0.010

The most you'll spend on a single request.

On-chain bondroadmap

Planned: require a stake that's slashed if the evidence proves false.

Four samples on the stone

Your agents — tap to reassign a rule

Drop an agent to Adventurous and it pays a base-metal sample — the stone still showed the dull trace, but a low bar lets it through. The rule is yours; the chain enforces exactly the one you set.

The safety net

What if a bad link tricked your agent?

Suppose something forced your agent to pay QuickPin — the base-metal sample — even though it fails the bar.

Because the trace-check rides inside the payment, Algorand refuses the whole transaction. It reverts on-chain — not a cent moves. The agent is protected even from its own mistake.

atomic group ✕ rejected
1 pay QuickPin  $0.002
2 check trace ≥ bar  → fails
REVERTED on-chain
balance change · Δ = 0

Verified on Algorand — in the live agent run, 5 agents: 3 settled, 2 protected (one reverted by the gate on-chain, one declined at discovery; a low-bar agent settled a wash by its own choice).

Live on-chain

The first marks in the stone — real, and on a real network.

Touchstone settles in USDC through GoPlausible, the live Algorand x402 facilitator. The same gate rides straight to Mainnet. Here's what's already real.

loading on-chain proof…

Real x402 endpoints we can audit

via GoPlausible discovery

Pulled live from the facilitator's discovery API — a neutral registry, not yet Touchstone-scored. Settlements shown are facilitator-wide (all operators), not Touchstone volume.

Algorand-native today Cross-chain grading coming soon — the same trace, with the proof anchored on Algorand.

The 30-second version

Every other oracle hands your agent a verdict to trust. Touchstone gives it a signal anyone can recompute from public on-chain receipts, then wires your own pass-or-fail rule into the payment itself — so the chain settles a good service and reverts a bad one in the same transaction. It even tests itself, in public.

Touchstone
The assay layer for agentic payments · Algorand