Server data from the Official MCP Registry
Resolve, discover & pay pay: aliases for AI agents; returns a signed OFAC-screen attestation.
About
Resolve, discover & pay pay: aliases for AI agents; returns a signed OFAC-screen attestation.
Remote endpoints: streamable-http: https://api.dnsofmoney.com/mcp/rpc
Security Report
This is a financial address resolution SDK and payment client for DNS of Money, with API key authentication for write and send operations and non-custodial signing performed locally. The code I reviewed is well structured, with no exfiltration, obfuscation, or hardcoded secrets; the main caveats are the sensitivity of wallet seeds and mnemonics passed as function arguments, the use of a `require` call inside an ES-style TypeScript module, and that parts of the codebase were truncated so the full picture is incomplete. Network and wallet permissions match the stated purpose of a payment resolution server and SDK. Supply chain analysis found 5 known vulnerabilities in dependencies (0 critical, 1 high severity).
9 files analyzed · 10 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
How to Install & Connect
Available as Local & Remote
This plugin can run on your machine or connect to a hosted endpoint. during install.
Documentation
View on GitHubFrom the project's GitHub README.
dns://money — Financial Address Resolution for the Machine Economy
"In another time's forgotten space"
Live: dnsofmoney.com · Spec: dnsofmoney.com/fas-1/ · API: api.dnsofmoney.com · Free API key: request access
We are not a bank. We are the layer above it.
DNS of Money is a financial address resolution protocol and payment orchestration infrastructure for the machine economy. It resolves human-readable pay: identifiers to payment endpoints across multiple rails — without touching funds, holding deposits, or requiring a banking license.
What This Is
Just as DNS resolves example.com → IP address, FAS-1 resolves pay:vendor.alpha → complete payment instruction.
pay:agent.compute → { rail: "XRPL", address: "rXXX...", iso_hint: "pacs.008.001.08" }
pay:vendor.alpha → { rail: "FedNow", address: "021000021:1234567890", fee_estimate: "0.045" }
pay:contractor.jay → { rail: "ACH", routing: "...", account: "..." }
No raw wallet addresses. No routing numbers in UX. One identifier that works everywhere.
Why This Exists
The agent address resolution gap. AI agents can now transact autonomously — but there is no standard way to name them, register them, and convert those names into payment endpoints. As we read AP2, A2A and MCP, none of them defines how to name a payee and resolve that name to a payment endpoint. FAS-1 fills that gap.
DNS of Money is the naming and resolution layer for agentic commerce.
Architecture
┌─────────────────────────────────────────────────────────────┐
│ DNS of Money │
│ pay: Namespace Layer │
│ │
│ pay:agent.compute → Resolver → ResolutionResponse │
│ │ │
│ ┌────────────────────┼────────────────────┐ │
│ ▼ ▼ ▼ │
│ XRPL Adapter FedNow Adapter ACH Adapter │
│ (mainnet, live) (mock) (mock) │
└─────────────────────────────────────────────────────────────┘
│
▼
┌───────────────────────────────────────┐
│ Financial Autonomy Stack │
│ (execution layer) │
│ Payment routing · ISO 20022 · OFAC │
│ Agent wallets · Policy engine │
└───────────────────────────────────────┘
Four-Layer Stack
| Layer | Name | Purpose |
|---|---|---|
| 1 | DNS of Money | pay: alias registration and resolution |
| 2 | AI Orchestration Layer | Routing decisions, cost optimization, rail scoring |
| 3 | Multi-Rail Payment Router | Settlement execution (ACH, FedNow, XRPL, SWIFT) |
| 4 | Autonomous Agent Network | M2M commerce, agent-to-agent payment hooks |
MVP flow: alias → resolve → route → ISO 20022 hint → simulate settlement
The pay: URI Scheme
FAS-1 (Financial Address Standard 1) defines the pay: URI scheme for human-readable financial addresses.
pay:vendor.alpha # vendor namespace, alpha entity
pay:agent.compute # agent namespace, compute service
pay:contractor.jay # contractor namespace, individual
pay:bank.settlement # institutional namespace
Format
pay-uri = "pay:" label *("." label)
label = 1*63( ALPHA / DIGIT / "-" )
Rules:
- Lowercase only; NFC + Punycode for non-ASCII labels
- Dots are hierarchy separators, not name separators
- Max 63 characters per label, 128 total; min 3 total
- No leading/trailing hyphens; no consecutive dots
- v0.1 (current): at least one dot required —
pay:namespace.label - v0.2 (draft): single-label addresses for people and brands —
pay:elonmusk - Regex (v0.1):
^pay:[a-z0-9][a-z0-9\-]*(\.[a-z0-9][a-z0-9\-]*)+$ - Regex (v0.2 draft):
^pay:[a-z0-9][a-z0-9\-]*(\.[a-z0-9][a-z0-9\-]*)*$
Full spec: docs/FAS-1-spec.md · License: CC BY 4.0
Resolution Response
{
"alias": "pay:vendor.alpha",
"preferred_rail": "XRPL",
"endpoints": [
{
"rail": "XRPL",
"currency": "USD",
"address": "rXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"routing_metadata": { "destination_tag": 12345 },
"settlement_latency": "3-5s",
"fee_estimate": "0.0001"
},
{
"rail": "FedNow",
"currency": "USD",
"address": "021000021:1234567890",
"routing_metadata": { "routing_number": "021000021" },
"settlement_latency": "instant",
"fee_estimate": "0.045"
}
],
"iso20022_hint": "pacs.008.001.08",
"iso20022_map": { "cdtr_nm": "Alpha Vendors LLC", "cdtr_acct_tp": "CACC", "ccy": "USD" },
"compliance": { "sanctions_checked": true, "fatf_risk_rating": "low", "requires_purpose_code": false },
"ttl_seconds": 300,
"resolved_at": "2026-03-20T00:00:00Z"
}
Account and routing numbers are never returned at authorization levels 0–1. Full field list, authorization levels, and error codes:
docs/FAS-1-spec.md.
Quick Start
Resolve a pay: alias
curl https://api.dnsofmoney.com/api/v1/resolve/pay:vendor.alpha \
-H "X-API-Key: your_key"
Register a pay: alias (founding tier)
curl -X POST https://api.dnsofmoney.com/api/v1/aliases/register \
-H "X-API-Key: your_key" \
-H "Content-Type: application/json" \
-d '{
"alias": "pay:yourname.here",
"xrpl_address": "rYourXRPLAddress",
"payment_tx_hash": "VERIFIED_5XRP_TX_HASH",
"tier": "founding"
}'
Check availability
curl https://api.dnsofmoney.com/api/v1/aliases/available/yourname.here
# → { "status": "available" | "taken" | "reserved" }
Agent Integration
MCP / A2A
DNS of Money fills the agent payment discoverability gap described in FAS-1 spec §9.1. Any agent can advertise a pay: alias; any caller can resolve it to a ranked list of payment endpoints without prior knowledge of the agent's banking infrastructure.
# A2A-031 binding pattern
agent_card = {
"agent_id": "AGT-COMPUTE-001",
"payment_alias": "pay:agent.compute"
}
# Caller resolves before payment
resolution = await resolve("pay:agent.compute")
# → { rail, address, iso20022_hint }
Python
import httpx
async def resolve_payment_alias(alias: str, api_key: str) -> dict:
async with httpx.AsyncClient() as client:
r = await client.get(
f"https://api.dnsofmoney.com/api/v1/resolve/{alias}",
headers={"X-API-Key": api_key}
)
return r.json()
result = await resolve_payment_alias("pay:vendor.alpha", "your_key")
print(result["preferred_rail"]) # "XRPL"
print(result["iso20022_hint"]) # "pacs.008.001.08"
JavaScript / TypeScript
const resolve = async (alias: string): Promise<ResolutionResponse> => {
const res = await fetch(`https://api.dnsofmoney.com/api/v1/resolve/${alias}`, {
headers: { "X-API-Key": process.env.DNS_MONEY_API_KEY! }
});
return res.json();
};
const { preferred_rail, endpoints, iso20022_hint } = await resolve("pay:agent.compute");
Supported Payment Rails
| Rail | Type | Latency | Currency |
|---|---|---|---|
| XRPL | Blockchain | 3–5 seconds | XRP, IOUs |
| FedNow | Instant ACH | Instant | USD |
| ACH | Bank transfer | 1–3 days | USD |
| SWIFT | Wire | 1–5 days | Multi-currency |
| Solana/USDC | Blockchain | <1 second | USDC |
On-Chain Namespace Anchors
All root namespaces are immutably anchored on XRPL mainnet via FAS-1 memo transactions before publication of this spec. This is the moat: namespaces cannot be forked once registered on-chain.
Confirmed on-chain (March 2026):
Genesis TX — March 13, 2026 — first inter-AI payment on XRPL mainnet
pay:agent.* — March 17, 2026 — agent namespace root
pay:swift pay:fednow pay:fedreserve
pay:iso20022 pay:cbdc pay:treasury
pay:bis pay:imf pay:worldbank
pay:correspondent pay:nostro pay:vostro
pay:fedwire pay:chips pay:chaps
pay:target2 pay:cips pay:ripplenet
pay:odl pay:swift.usd pay:swift.eur
All memo transactions use the FAS-1 format:
{
"p": "FAS-1",
"v": "0.1",
"a": "pay:agent.*",
"t": "root_namespace",
"o": "dnsofmoney.com",
"d": "2026-03-17"
}
Founding Tier
The first 600 pay: names are priced by claim order, graduated from 0 up to 5 XRP, and permanently grandfathered at the price paid. The current band is served live by GET /api/v1/founding/status. One name per XRPL wallet. On-chain proof issued at registration.
Each founding name includes:
- A permanent
pay:alias on XRPL mainnet - A unique generative fractal flame identity NFT (XLS-20)
- IPFS-pinned art and metadata that outlives every server
- On-chain proof via FAS-1 memo protocol
Mint yours at dnsofmoney.com
- Founding tier encoded on XRPL mainnet via FAS-1 memo
- Permanent — cannot be revoked
- Hard cap enforced atomically:
SELECT ... FOR UPDATEinside the registration transaction
Check remaining spots: GET /api/v1/founding/status
Proof of Work
This is not vaporware. The transactions below are real. The XRPL ones are publicly verifiable by anyone — no login, no trust required.
XRPL Mainnet — Publicly Verifiable On-Chain
| TX | Time (UTC) | Direction | Amount | Ledger | Hash |
|---|---|---|---|---|---|
| TX1 | 09:16:40 Mar 13 2026 | Claude → GPT-4 | $0.69 USD (0.482517 XRP) | 102837427 | B92C23BA... |
| TX2 | 20:20:10 Mar 13 2026 | GPT-4 → Claude | $4.20 USD (3.0 XRP) | 102849264 | EB8F2C20... |
Click either hash. It's on the ledger. Permanent.
Bidirectional AI payment rail: proven on XRPL mainnet — publicly verifiable on-chain.
Agent Verification — AI-to-API Resolution Proven
| Step | Result | Date |
|---|---|---|
Resolve pay:genesis at tier 3 | Full response: entity_id, compliance, ISO hint, agent_commerce, identity block | Mar 24, 2026 |
| Verify NFT on-chain | NFTokenID confirmed, taxon 420069 (founding), IPFS metadata verified | Mar 24, 2026 |
| Witness 1 XRP payment | pay:architect → pay:genesis with memo DNS-OF-MONEY-PROOF | Mar 24, 2026 |
First external AI agent (Perplexity) to resolve a pay: alias, verify on-chain identity, and witness a real payment — end-to-end.
ISO 20022 Compatibility
All payment models are ISO 20022 compatible. The resolver returns iso20022_hint on every resolution response, enabling downstream systems to generate standards-compliant payment messages without any mapping work.
| Message | Usage |
|---|---|
pacs.008 | Credit transfer initiation |
pacs.002 | Payment status report |
pain.001 | Customer credit transfer |
camt.053 | Account statement |
camt.054 | Debit/credit notification |
What We Are Not
This protocol is explicit about scope:
✅ Payment address resolution
✅ Payment orchestration infrastructure
✅ Financial metadata layer
✅ Routing intelligence layer
✅ API gateway pattern for licensed banking infrastructure
(adapter interfaces only. No bank partner is live today.)
❌ Not a bank
❌ Not a deposit holder
❌ Not a settlement institution
❌ Not a card issuer
❌ Not a clearing network
No banking license required to use this protocol.
SDK
Official client libraries for the DNS of Money API. No external dependencies — stdlib only.
- Python:
pip install dnsofmoney(coming soon — install from source) - TypeScript:
npm install dnsofmoney(coming soon — build from source)
from dnsofmoney import resolve
result = resolve("pay:vendor.alpha")
print(result.endpoints[0].rail)
import { resolve } from "dnsofmoney";
const result = await resolve("pay:vendor.alpha");
console.log(result.endpoints[0].rail);
Repository Structure
dns-of-money/
├── docs/
│ ├── FAS-1-spec.md # Financial Address Standard 1 (CC BY 4.0)
│ ├── architecture.md # Full system architecture
│ └── integration-guide.md # Integration patterns (MCP, A2A, REST)
├── examples/
│ ├── python/ # Python integration examples
│ ├── typescript/ # TypeScript/JavaScript examples
│ └── curl/ # REST API examples
├── schemas/
│ ├── resolution-response.json # JSON Schema for resolution response
│ └── registration-request.json # JSON Schema for registration
├── sdk/
│ ├── python/ # Python SDK (pip install dnsofmoney)
│ └── typescript/ # TypeScript SDK (npm install dnsofmoney)
└── CHANGELOG.md
Related Repositories
| Repo | Purpose | License |
|---|---|---|
dnsofmoney/dns-of-money | FAS-1 spec, integration docs, schemas (this repo) | CC BY 4.0 (docs/), Apache-2.0 (sdk/), MIT (other code, schemas) |
dnsofmoney/a2a-protocol-core | A2A protocol core — agent-to-agent commerce | Apache 2.0 |
API Reference
Base URL: https://api.dnsofmoney.com
| Method | Endpoint | Description |
|---|---|---|
GET | /api/v1/resolve/{alias} | Resolve a pay: alias to payment endpoints |
GET | /api/v1/aliases/available/{name} | Check alias availability |
POST | /api/v1/aliases/register | Register a new pay: alias |
GET | /api/v1/aliases/founding/remaining | Founding tier spots remaining |
GET | /health | API health check |
Full API docs: api.dnsofmoney.com/docs
Authentication: X-API-Key header required for all write operations. Read-only OAuth (resolve:read) works on /resolve and /mcp. See the integration guide.
Current State vs. Roadmap
Live Today ✅
pay:alias registration and resolution (7-stage pipeline with identity evolution)- NFT identity system: generative fractal flame art per alias, IPFS-pinned
- Identity block in resolve response (image, metadata, explorer link)
- Founding mint page with live counter at dnsofmoney.com
- Claim page: wallet connect via Xaman, burn option
- XRPL payment rail (mainnet, proven)
- ACH adapter (mock / not yet live — no real ACH settlement to date)
- OFAC sanctions screening
- ISO 20022 hint generation
- Founding tier (600-name hard cap, on-chain proof)
- 41 root namespaces anchored on XRPL mainnet
- Agent verification: first AI agent resolved + verified + witnessed payment
- Marketing site live at dnsofmoney.com with SSL
- Rate limiting + IPFS proxy at the edge
- Managed secrets + HTTPS API live (
api.dnsofmoney.com) - MCP server (remote, streamable HTTP) listed in the official MCP registry
- x402 agent payments: multi-network challenge, paid counterparty screening,
discovery manifest at
/.well-known/x402 - 4,297 tests passing in CI on the reference implementation (2026-11-02)
Roadmap 🗺️
- FedNow and ACH production integration (pending a banking partner. Both are mock today.)
- AP2 mandate layer on the public API (mapping published in spec §9.6)
- SDK packages (Python, TypeScript, Go)
- LangChain / CrewAI / AutoGPT integration modules
- Subdomain delegation (hierarchical namespace tree)
- Resolution fee pricing
- Token economics and governance
FAS-1 Spec
The Financial Address Standard 1 (FAS-1) is the open protocol specification underlying pay: URIs. It is licensed under CC BY 4.0 — free to implement, extend, and build on.
Key properties:
- Rail-agnostic: one alias resolves to N endpoints, ordered by policy
- ISO 20022 aligned: every resolution carries a message family hint
- On-chain anchored: namespace ownership is verifiable on XRPL mainnet
- A2A, MCP and x402: live surfaces, not aspirations (see the spec, §9.4 and §9.5)
- AP2: the three-mandate mapping is published in §9.6. Implemented as a spike, not yet exposed on the public API
Read the spec: docs/FAS-1-spec.md
Contributing
This repo is the public home of the FAS-1 specification and integration documentation. We welcome:
- Issues: spec clarifications, edge cases, implementation questions
- PRs: integration examples, documentation improvements, schema refinements
- Discussions: use cases, protocol extensions, competing approaches
For protocol-level proposals, open an issue with the [RFC] prefix.
License
- Protocol specification and documentation (
docs/): CC BY 4.0. The root MIT License does not apply todocs/. - SDKs (
sdk/): Apache-2.0. - Other code, code examples and schemas: MIT, except where a directory has its own license file.
Community
- Reddit: r/DNSofMoney
- Twitter/X: @dnsofmoney
- Website: dnsofmoney.com
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Rea
Freeby Morluto · Developer Tools
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Paperclip
Freeby Paperclipai · Developer Tools
Trending hip-hop artist momentum scores across four cultural dimensions.
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
