stillos-notary-mcp
Use this server to submit signed, externally grounded verification claims and manage/verify receipts, plus pay-gated entity screening and financial distress scoring.
claim_verdict: submit an agent claim with a resolver (GitHub PR, on-chain tx, URL JSON, HTTP status, or Kalshi market) and get a CONFIRMED/REFUTED/ERROR verdict, Ed25519-signed and hash-chained.verify_receipt: verify any receipt by hash to confirm hash-chain integrity and signature validity (free, read-only).file_dispute: file a bonded dispute on a receipt within 48 hours; triggers immediate re-resolution with the same resolver, and upheld disputes slash the notary bond. Paid $1 USDC (Base) via x402.screen_entity: OFAC SDN sanctions name screen with freshness timestamp and Ed25519 signature; free tier then $0.001 USDC (Base) via x402 (schema lists it as paid).distress_score: Altman Z-score corporate distress ranker for a ticker from SEC XBRL, Ed25519-signed; free tier then $0.15 USDC (Base) via x402 (schema lists it as paid).Payment-capable clients can satisfy x402 requirements via a custom fetch, viem account, or
STILLOS_NOTARY_WALLET_KEY; unpaid paid-tool calls return actionable payment requirements rather than dead ends.
Allows verifying claims against GitHub pull requests, returning signed verdicts.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@stillos-notary-mcpVerify that https://example.com returns status 200"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
stillos-notary-mcp
Verification infrastructure for the agentic economy. An agent submits a claim; the notary returns an Ed25519-signed, hash-chained verdict, settled against real external ground truth, not model output. Free tier, no account, no card.
Every tool call in this package settles against the live public notary over
HTTPS (stillosdigitalholdings.com/notary). No local or internal-only code path
exists — behavior is identical regardless of runtime.
Install
npx stillos-notary-mcp mcpOr add to an MCP client config:
{
"mcpServers": {
"stillos-notary": { "command": "npx", "args": ["-y", "stillos-notary-mcp", "mcp"] }
}
}Related MCP server: Recommend Agentic Trust Layer
Tools
claim_verdict
Submits a claim and a resolver specification. Returns CONFIRMED, REFUTED, or ERROR — never a forced guess — signed and hash-chained.
Supported resolver types: github_pr, onchain_tx, url_json, http_status,
kalshi_market.
stillos-notary-mcp claim "your-agent" "example.com returns 200" \
'{"type":"http_status","url":"https://example.com","expect_code":200}'verify_receipt
Independently verifies any receipt by hash: confirms the hash chain is intact and the signature is valid.
stillos-notary-mcp verify <receipt_hash>file_dispute
Files a bonded dispute against a verdict receipt. The disputed verdict is re-resolved immediately, against the identical resolver specification that produced it — independent re-run, not a re-vote, not a human appeal queue. An upheld dispute overturns the verdict and queues a slashable payout against the notary's on-chain correctness bond ($10 USDC, Base). Dispute window: 48 hours from the original receipt's timestamp.
Paying for a paid tool (1.3.0)
Through 1.2.2 this package could only report the paywall: every paid tool returned
{ payment_required: true } and the call ended there. There was no way, anywhere in the
package, to attach a payment and retry — the CLI told you to "attach payment and retry"
using a mechanism that did not exist. 1.3.0 implements it.
Supply a credential and the 402 is crossed automatically — one 402, one payment, one retry, then the paid result:
const { callTool } = require('stillos-notary-mcp');
// 1. Preferred: your own payment-capable fetch. We never see a key.
const r = await callTool('screen_entity', { agent: 'me', entity: 'Acme Corp' },
{ fetch: myX402Fetch });
// 2. Or a viem account / signer object.
await callTool('screen_entity', args, { account: myViemAccount });
// 3. Or, as a documented fallback, a raw key in the environment.
// export STILLOS_NOTARY_WALLET_KEY=0x...
await callTool('screen_entity', args);With no credential you get an actionable requirement rather than a dead end:
{
"ok": false, "paid": false, "code": "PAYMENT_REQUIRED",
"payment": { "amount_usd": 0.001, "network": "base", "pay_to": "0x…", "scheme": "exact" },
"remediation": "Pass a payment-capable fetch as opts.fetch, a viem account as opts.account, or set STILLOS_NOTARY_WALLET_KEY, then call again."
}What it refuses to pay. A 402 is untrusted input. The client will not sign for a
network or scheme it does not expect (base / exact only), will not pay a malformed
requirement missing payTo or an amount, and will not exceed a per-call ceiling
($1.50 default, STILLOS_NOTARY_MAX_USD or opts.maxUsd to change). It never retries
more than once — a second 402 is a hard stop, not a backoff loop, so a rejected payment
can never be re-signed into a double spend. Supplying no credential never spends
anything. No key is received, logged, persisted, or placed in an error message.
Covered by test/payment-continuation.test.cjs (17 cases, local mocks, no real
settlement).
Paid: $1.00 USDC (Base) via x402 — no free tier. A call without an
attached x402 payment returns the payment requirement (price, payTo, asset),
not a verdict. This package holds no wallet and executes no payment itself;
the calling agent's own client bears that capability.
stillos-notary-mcp dispute "your-agent" <receipt_hash>screen_entity
OFAC SDN sanctions name screen, with a source_as_of freshness timestamp,
Ed25519-signed.
Free up to 5/agent/day, then $0.001 USDC (Base) via x402.
stillos-notary-mcp screen "your-agent" "Acme Corp"distress_score
Balance-sheet corporate distress ranker for a single equity ticker: Altman Z-score from live SEC XBRL filings, held-out AUC 0.769 on 178 real Chapter 11 filings vs 71 date-matched controls. ~3% precision at a 2% base rate: a ranking input for ordering a review queue, NOT an alarm on a single name. The prior "71% sensitivity / 100% specificity" claim (n=14) is withdrawn. Ed25519-signed.
Free up to 3/agent/day, then $0.15 USDC (Base) via x402.
stillos-notary-mcp distress "your-agent" AAPLWhy
Most verification is one model checking another model's output — the same failure mode, with no independence introduced. This architecture settles every claim against a source neither counterparty controls, signs the outcome regardless of direction, and publishes confirmed and refuted verdicts to the same ledger. Fail-closed: an unresolvable claim returns ERROR, never a plausible-sounding guess.
Available Tools
5 toolsclaim_verdictAInspect
Submits a claim and returns a signed verdict: settled against real external ground truth (GitHub PR, on-chain tx, HTTP status, JSON field, Kalshi market, or multi-exchange price consensus), Ed25519-signed, hash-chained. Free tier — no account, no card. Returns CONFIRMED, REFUTED, or ERROR — never a forced guess.
| Name | Required | Description | Default |
|---|---|---|---|
| agent | Yes | who is asking (shown on the public reputation ledger) | |
| claim | Yes | the claim in plain language, e.g. "PR #42 on owner/repo is merged" | |
| resolver | Yes | which external source resolves this claim |
distress_scoreAInspect
Validated corporate distress-foresight score for a single equity ticker: Altman Z-score computed from live SEC XBRL filings, backtested 71% sensitivity / 100% specificity with a ~109-day median lead time, Ed25519-signed. Paid: $0.15 USDC (Base) via x402 — no free tier. A call without an attached x402 payment returns the payment requirement, not a verdict.
| Name | Required | Description | Default |
|---|---|---|---|
| agent | Yes | who is asking (shown on the public reputation ledger) | |
| ticker | Yes | equity ticker to score, e.g. "AAPL" |
file_disputeAInspect
Files a bonded dispute against a verdict receipt: the disputed verdict is re-resolved immediately against the identical resolver specification that produced it — independent re-run, not a re-vote. An upheld dispute overturns the verdict and queues a slashable payout against the notary's on-chain correctness bond. Paid: $1.00 USDC (Base) via x402 — no free tier. A call without an attached x402 payment returns the payment requirement (price, payTo, asset), not a verdict.
| Name | Required | Description | Default |
|---|---|---|---|
| agent | Yes | who is filing the dispute (shown on the public reputation ledger) | |
| receipt_hash | Yes | the receipt_hash of the verdict being disputed — must be under 48 hours old |
screen_entityAInspect
OFAC SDN sanctions name screen: matches a legal name against the OFAC Specially Designated Nationals list, with a source_as_of freshness timestamp, Ed25519-signed. Paid: $0.001 USDC (Base) via x402 — no free tier. A call without an attached x402 payment returns the payment requirement, not a verdict.
| Name | Required | Description | Default |
|---|---|---|---|
| agent | Yes | who is asking (shown on the public reputation ledger) | |
| entity | Yes | legal name to screen against the OFAC SDN list |
verify_receiptAInspect
Independently verifies any StillOS notary receipt by its hash: confirms the hash chain is intact and the Ed25519 signature is valid. Read-only, free, no auth.
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | the receipt_hash returned by claim_verdict or commit |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
claim_verdict - First observed
distress_score - First observed
file_dispute - First observed
screen_entity - First observed
verify_receipt
TDQS
Scored across 5 tools
Each tool targets a distinct action—general claim resolution, specialized scoring, OFAC screening, dispute filing, and receipt verification. The overlapping 'signed verdict' outputs are clearly differentiated by resolver type, pricing model, and lifecycle role.
Most tools follow a clear verb_noun pattern: claim_verdict, file_dispute, screen_entity, verify_receipt. distress_score breaks that pattern as a noun phrase, making it the one inconsistent name in an otherwise coherent set.
Five tools is well-scoped for a notary-style service. The set covers creation, specialized verdict types, dispute handling, and verification without unnecessary redundancy.
The core lifecycle is covered: create verdicts, dispute them, and verify receipts. A minor gap is the lack of a general receipt-listing or lookup tool, though verify_receipt by hash mitigates this.
Maintenance
Related MCP Connectors
One-stop claim verification for AI agents: verdicts with confidence, evidence, signed receipts.
Sealed prediction-market verdicts, graded in public across Polymarket and Kalshi. No auth required.
Verify claims with verdict, confidence & cited sources; batch verify, source checks, daily brief.
Market evidence with receipts: every claim resolves to a real stored record you can fetch back.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables defining and verifying evidence contracts for claims in READMEs, releases, or product pages using constrained verifiers and generating hash-chained receipts and reports.10 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables agents to verify claims with evidence-based truth scores and confidence levels by running a deterministic pipeline of evidence lanes and adversarial checks.26MIT
- AlicenseAqualityCmaintenanceEnables agents and clients to fact-check factual claims against live web sources, returning citable verdicts with source details and cryptographically signed receipts for downstream verification.178 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI applications to submit claims, decisions, and evidence so it maintains a typed state model of beliefs, conflicts, changes, and next actions, preserving claim lineage and semantic evidence across versioned persistence.MIT