Model Context Protocol · Official server

Let an AI agent wire up
your crypto payments

Put finality's real API inside Claude, Cursor, or Windsurf. The agent stops guessing — it reads the actual production implementation: endpoints, fields, webhook events, and the traps that are wrong the moment you guess them.

28 tools, from first payment to reconciliationWorks with Claude, Cursor, WindsurfCannot move your money, by design

Why this exists

“Add crypto payments to my store.” Without a source of truth, an AI writes code that demos fine and fails silently in production.

Without MCP
  • Field names are invented — plausible, nonexistent, and you find out at launch.
  • Webhook event types are made up — you listen for an event that never fires, and orders never ship.
  • Signature verification is written against parsed JSON instead of the raw bytes — intermittent failures, nearly impossible to reproduce.
With MCP
  • Endpoints and fields come from the live implementation, not an outdated version in training data.
  • Integration guides name the traps outright: verify raw bytes, fulfill only on payment.settled, echo both cursor fields together.
  • The agent can run a real sandbox payment end to end — instead of handing you code and hoping.

All you have to say

> Add USDC checkout to this Next.js store, test it in sandbox first

The agent reads the docs, checks whether your payout addresses are configured per chain, creates a sandbox order, simulates the payment, confirms the webhook landed — and only then hands you the integration code.

Install

Three steps, two minutes

MCP is an open protocol. Any client that speaks it works — the config shape is identical, only the file location differs.

  1. 1

    Grab a sandbox key

    Dashboard → API keys. Create one starting with sk_test_. Zero cost, never touches real money.

  2. 2

    Add it to your MCP config

    claude_desktop_config.json for Claude Desktop, .mcp.json in your project for Claude Code, or the MCP settings in Cursor and Windsurf. Same shape everywhere.

  3. 3

    Restart the client

    Then just tell the AI what you want. No npm install needed — npx fetches it.

claude_desktop_config.json
{
  "mcpServers": {
    "finality": {
      "command": "npx",
      "args": ["-y", "@finality/mcp"],
      "env": {
        "FINALITY_API_KEY": "sk_test_your_key_here"
      }
    }
  }
}

It works without FINALITY_API_KEY too — only the documentation tools are available, which is enough to let an AI understand our API before you commit.

★ Always start with an sk_test_ sandbox key. Every tool reports which mode it is in, so you and the agent always know whether an order is real money.

Capabilities

28 tools

Not a mechanical wrapper over REST. Each tool carries into the agent's context when to reach for it — and what goes wrong if it doesn't.

Zero to first payment: read the docs, confirm payout addresses are set, create an order, simulate a payment end to end.

finality_docs

Search the official docs and OpenAPI spec — the agent's source of truth.

finality_integration_guide

Scenario-specific integration plans that call out that scenario's traps.

finality_create_payment

Create a payment and get the address plus checkout link.

finality_simulate_payment

Simulate a sandbox payment to exercise the full flow at no cost.

finality_payout_status

Whether each chain's payout address is configured — the first thing to check. Never echoes the address itself.

finality_x402_supported

Live list of chains and tokens supporting x402 autonomous payment, read on-chain.

Security model

This MCP cannot move your money — that isn't a policy, it's a property of the system.

finality never custodies merchant funds and never holds a private key. So “could the AI drain my wallet” doesn't arise at the architecture level — it's not that we promise not to, it's that it can't.

Refunds and withdrawals: deliberately not tools

The backend only returns an unsigned transaction — your own wallet must sign and broadcast it. Letting an agent prepare a refund is meaningless and would wrongly suggest it can move funds.

Payout addresses: API keys are hard-rejected

Changing payout addresses or managing API keys requires a logged-in session plus a second factor — an email code or a wallet signature. Calling them with an MCP key is simply refused.

Keys never enter the conversation

The key is read from an environment variable only, never accepted as a tool parameter — otherwise it would enter the conversation context and could be logged or leaked.

★ What it can do falls into three buckets: create and read payments (no funds move), read-only reporting, and documentation lookup. Creating a payment is a write, but carries zero funds risk — it only generates an address, and the customer pays into your own wallet.

Give your AI a real understanding of your payment layer

Grab a sandbox key and connect in two minutes. Nothing costs money if it fails, and nothing touches real money if it works — until you swap in a live key yourself.