A payments MCP server: USDC ↔ bank

FiatDock ships a Model Context Protocol server that gives any MCP host — Claude Desktop/Code, Cursor, VS Code, Windsurf, Gemini CLI, OpenAI Agents SDK, LangChain, CrewAI — four payment tools. Listed in the official MCP Registry as com.fiatdock/fiatdock-mcp.

ToolCostWhat it does
get_quotefreeLive rate + every fee itemised (incl. the 1% commission)
create_offramp_session$0.05 via x402Agent's USDC → owner's own bank account; one-time checkoutUrl
create_onramp_session$0.05 via x402Owner's own fiat → USDC to the agent's wallet (address locked)
get_order_statusfreeTrack an order by partnerOrderId

Local (auto-pays the x402 fee)

{
  "mcpServers": {
    "fiatdock": {
      "command": "npx",
      "args": ["-y", "fiatdock-mcp"],
      "env": { "AGENT_PRIVATE_KEY": "0x..." }
    }
  }
}

Same shape works in Claude Desktop, Cursor, Windsurf and Gemini CLI. AGENT_PRIVATE_KEY is optional — free tools work without it; use a dedicated low-balance wallet.

Remote (zero install)

https://fiatdock.com/mcp

Streamable HTTP, stateless, CORS-enabled, protocol versions 2024-11-05 through 2025-11-25. The remote endpoint cannot sign payments, so paid tools return the x402 402 challenge as tool output — agents that want auto-pay use the npm package. Try it:

curl -X POST https://fiatdock.com/mcp \
  -H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

No MCP host at all?

tools.json serves the same four tools as OpenAI/Gemini function-calling schemas mapped 1:1 to the REST API. Client-by-client setup: INTEGRATIONS.md · package: fiatdock-mcp on npm.

More guides: USDC to bank account API · How an AI agent cashes out crypto · x402 off-ramp explained · FAQ

Compliance (binding): own-account rule — the sending wallet and receiving bank account must belong to the same person (the agent's owner). 18+; Portugal + Transak-supported EU/EEA countries (not the UK — see Terms). Non-custodial: conversion, KYC and custody by Transak, a licensed provider.