Dokimo Mcp

io.github.ypratap11Published by GitHub account ypratap11v0.1.0Updated Nov 2, 2026

Verify AI-agent revenue: recompute a Merkle proof and check it against an on-chain anchor.

VerifiedStreamable HTTPWeb executableFinanceSecurity & Monitoring

Overview

AI-generated overview

Dokimo MCP lets an assistant recompute a Merkle proof locally and check an evidence package's commitment against an on-chain anchor on Base.

What you can do
  • Recompute a dokimo-merkle-v1 root locally from a leaf and proof path, with no network call
  • Verify one record of an evidence package against the on-chain anchor on Base via Dokimo's public A2A endpoint
  • Fetch Dokimo's public A2A agent card describing what it can verify
When to use it
Useful when an assistant needs to check whether an AI agent's revenue or payment figures are backed by a tamper-evident, on-chain-anchored commitment, or to independently recompute a Merkle root before trusting a claimed value.
Requirements
A remote endpoint at dokimo.augaster.com; the README also describes a local Python package (pip install dokimo-mcp) run over stdio, or HTTP mode via MCP_TRANSPORT=http on PORT. No accounts, API keys or headers are declared. Network access is needed for the verification and agent-card tools; local recompute needs none.
Before you install
The verify tool sends the evidence package to Dokimo's public A2A endpoint, so package contents leave your machine; the README advises asking before sending anything. The returned verdict is Dokimo's own answer and is not signed, so it should not be treated as independent proof. It checks one record only and says nothing about whether a business number is good.

Installation

In SourceWeft

  1. Open Dokimo Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.ypratap11%2Fdokimo-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "dokimo": {
      "type": "http",
      "url": "https://dokimo.augaster.com/mcp"
    }
  }
}

README

dokimo-mcp

Give an AI agent the ability to verify another agent's revenue claims.

An MCP server exposing Dokimo's evidence checks as tools any MCP client (Claude Desktop, IDE agents, custom agents) can call. It's the "agent that audits agents" — as tools.

Live, clickable version of what these tools do: https://dokimo.augaster.com/agent-audits-agents.html

This is a thin, self-contained client: it calls Dokimo's public endpoints and implements the public dokimo-merkle-v1 hashing scheme. It contains no proprietary code. MIT-licensed.

Tools

ToolWhat it doesNetwork?
recompute_merkle_root(leaf, proof_path)Local recompute — hash a leaf under dokimo-merkle-v1 and replay the proof path to a root, in this process, with no network call. Compare it to a package's claimed root yourself. It does not check the on-chain anchor.none
verify_evidence_package(package)Dokimo's check of one record, via its public A2A endpoint: recompute and check the anchored commitment (root + rule version, plus the close summary for v2 closes) against the on-chain anchor on Base. Returns verified: true only if both hold. The verdict is Dokimo's answer and is not signed — to avoid relying on it, recompute locally and read the anchor yourself (e.g. /verify.html).Dokimo A2A
dokimo_agent_card()Fetch Dokimo's public A2A agent card — what it can verify.Dokimo

Verification model: there is no path to verified: true without (1) the caller's (leaf, proof_path) recomputing to the claimed root, and (2) the commitment of (root, rule_version_commitment) — and, for a dokimo-anchor-v2 close, its summary — being anchored on-chain. Tamper one byte → recompute fails. Swap the rule version → the commitment changes → not anchored. A package without summary and binding is checked as legacy v1, which verifies only closes anchored before the v2 cutover.

Honest scope: for one record, checks that its proof reaches the root and that the commitment is anchored on-chain. It does not recompute the close's figures from all its records (that needs the full package, e.g. in /verify.html), and it says nothing about whether a business number is "good." Non-custodial; reads public on-chain state only.

Install & run

bash
pip install dokimo-mcpdokimo-mcp                 # runs over stdio# or, from a clone:pip install .python -m dokimo_mcp

Add to an MCP client

Claude Desktop — add to claude_desktop_config.json:

json
{  "mcpServers": {    "dokimo": {      "command": "dokimo-mcp"    }  }}

If dokimo-mcp isn't on PATH, use the module form:

json
{  "mcpServers": {    "dokimo": {      "command": "python",      "args": ["-m", "dokimo_mcp"]    }  }}

Then ask the agent: "Use Dokimo to verify this evidence package" (paste one), or "recompute this Merkle root and tell me if it matches."

Agent skill

skills/dokimo-verify/SKILL.md tells an agent when and how to use these tools: check the package shape, recompute locally first, ask before sending anything to Dokimo, and report the result for one record without overstating it. Drop the dokimo-verify folder into your agent's skills directory (e.g. ~/.claude/skills/ for Claude Code). It is also listed, free, on Agensi.

Try it

The live demo page embeds a real, anchored evidence package. Fetch it and verify:

python
import re, json, urllib.requestimport dokimo_mcp as dhtml = urllib.request.urlopen(urllib.request.Request(    "https://dokimo.augaster.com/agent-audits-agents.html",    headers={"User-Agent": d._UA})).read().decode()pkg = json.loads(re.search(r"const PKG\s*=\s*(\{.*?\})\s*;", html, re.S).group(1))print(d.verify_evidence_package(pkg)["verified"])   # True# tamper one unit -> Falsepkg["leaf"] = pkg["leaf"].replace("1001190933933115", "1001190933933116")print(d.verify_evidence_package(pkg)["verified"])   # False

Hosted / HTTP mode

The default transport is stdio (local use). Set MCP_TRANSPORT=http to serve MCP Streamable HTTP at /mcp on $PORT (default 8081) with CORS — the shape hosted platforms like Smithery require. The included Dockerfile + smithery.yaml (runtime: container) are set up for exactly this, so Smithery can build and host it from this repo.

bash
MCP_TRANSPORT=http PORT=8081 dokimo-mcp     # or: docker run -p 8081:8081 <image>

What is Dokimo?

Verifiable revenue infrastructure for autonomous commerce — audit-ready, independently reproducible books for AI-agent machine payments (x402 / AP2 / Stripe), with each figure tamper-evidently committed and anchored on-chain. https://dokimo.augaster.com

License

MIT — see LICENSE.

Source: README.md at commit 25683a1

Tools

3

recompute_merkle_root

Recompute Merkle root (local)

Recompute a dokimo-merkle-v1 root locally — no network call, no anchor check. Hash ``leaf`` in the leaf domain (H(0x00 ‖ leaf)) and replay ``proof_path`` — a list of ``[sibling_hash, side]`` where side is "L" or "R" — hashing internal nodes as H(0x01 ‖ left ‖ right). Compare the returned root to the ``root`` in an evidence package yourself; if it differs, the package was tampered with. Returns ``{recomputed_root, merkle_scheme, steps}``.

Parametersleafrequiredproof_pathrequired

verify_evidence_package

Verify evidence package (on-chain)

Ask Dokimo to check one record of an evidence package against the on-chain anchor. Sends the package to Dokimo's public A2A endpoint, which recomputes the Merkle proof AND checks the anchored commitment (root + rule version, plus the close summary for v2) against the anchor on Base. The verdict is Dokimo's answer and is not signed. ``package`` must contain: ``leaf`` (str), ``root`` (str), ``proof_path`` (list of [sibling_hash, "L"|"R"]), and ``rule_version_commitment`` (str); for a v2 close also ``summary`` and ``binding``; ``close_id`` is optional/echoed. Returns the verdict: ``{verified, checks:{recompute, onchain_anchor, rule_version_bound}, ...}``. ``verified`` is true only if the proof recomputes AND the commitment is anchored on-chain. It covers this one record only.

Parameterspackagerequired

dokimo_agent_card

Fetch Dokimo agent card

Fetch Dokimo's public A2A agent card — the discovery document describing what it can verify (skills, endpoints, supported A2A versions).

Takes no parameters.

Version history

1
  1. v0.1.0LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts