Skip to main content
Glama

IDPHANTOM MCP Server

@phantomid/mcp-server exposes IDPHANTOM payments as standard MCP tools so an AI agent can quote, authorize, submit, and verify agent-to-agent payments through IDPHANTOM.

Production defaults to:

https://pay.idphantom.com

Install

npx @phantomid/mcp-server

For MCP clients, configure the server command and environment:

{
  "mcpServers": {
    "phantom-id": {
      "command": "npx",
      "args": ["@phantomid/mcp-server"],
      "env": {
        "PHANTOM_API_URL": "https://pay.idphantom.com",
        "PHANTOM_API_KEY": "pk_live_..."
      }
    }
  }
}

PHANTOM_API_URL is optional when using production. PHANTOM_API_KEY is required for normal paid API usage after registration.

Self-serve tools environment (AGP-100)

The MCP tools phantom_register and phantom_authorize_budget read their signing keys only from the environment (never from command-line flags — argv leaks into shell history and process listings):

Variable

Used by

Purpose

PHANTOM_PAYER_PRIVATE_KEY

phantom_register (auto mode)

Pays the $2 USDC registration; signs locally, never leaves the process.

PHANTOM_FUNDER_PRIVATE_KEY

phantom_authorize_budget

Human funder's key for the EIP-712 AgentWalletAuthorization.

PHANTOM_ROUTER_ADDRESS

both

PhantomRouter verifying contract of the EIP-712 domain.

PHANTOM_FUNNEL_SOURCE

funnel

internal for dogfood/QA traffic (reported separately — wash volume prohibited); default external.

Without PHANTOM_PAYER_PRIVATE_KEY, phantom_register runs in manual mode: pass payer_wallet and it returns the registration challenge plus step-by-step signing instructions.

Funnel events (AGP-100 F1.4)

The server emits one JSON line per event on stderr, prefixed with [funnel]:

[funnel] {"event":"install","ts":"...","source":"external",...}

Events: install → register_start → register_complete → first_pay → repeat. Scrape these lines to build the onboarding funnel (install → register → first pay → repeat). Traffic tagged PHANTOM_FUNNEL_SOURCE=internal must be aggregated separately from external volume.

Related MCP server: cardzero-mcp

Connect Your Agent In 5 Minutes

Registration is self-serve and costs $2 USDC on Base mainnet. The CLI signs locally and never prints the private key.

export PHANTOM_PAYER_PRIVATE_KEY="0x..."
export PHANTOM_ROUTER_ADDRESS="0x..."
npx @phantomid/mcp-server init --name my-agent

The init flow calls:

  1. POST /v1/register

  2. POST /v1/intents/:id/authorize

  3. POST /v1/intents/:id/submit

  4. GET /v1/register/:reference

  5. POST /v1/register/:reference/claim

On success it prints the account id and the API key once. Store the returned key as PHANTOM_API_KEY.

Flags are supported for non-sensitive options. The payer key is environment-only (never a flag — command lines leak into shell history and process listings):

export PHANTOM_PAYER_PRIVATE_KEY="0x..."
npx @phantomid/mcp-server init \
  --api-url https://pay.idphantom.com \
  --router-address 0x... \
  --name my-agent

Tools

The server supports newline-delimited JSON-RPC over stdio.

quote_payment

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "quote_payment",
    "arguments": {
      "payer_wallet": "0x...",
      "recipient_wallet": "0x...",
      "asset_contract": "0x...",
      "amount": "1000000",
      "chain_id": 8453,
      "idempotency_key": "quote-001",
      "payer_agent_id": "buyer-agent",
      "recipient_agent_id": "seller-agent"
    }
  }
}

authorize_payment

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "authorize_payment",
    "arguments": {
      "payment_intent_id": "pi_...",
      "payer_signature": "0x..."
    }
  }
}

submit_payment

{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "submit_payment",
    "arguments": {
      "payment_intent_id": "pi_..."
    }
  }
}

verify_payment

{
  "jsonrpc": "2.0",
  "id": 4,
  "method": "tools/call",
  "params": {
    "name": "verify_payment",
    "arguments": {
      "payment_intent_id": "pi_...",
      "receipt_id": "rcpt_..."
    }
  }
}

Limits

Default production policy limits are:

  • 50 USD maximum per payment

  • 500 USD maximum per day

Payments above those limits are rejected by the PHANTOM ID API.

Publish

npm publish --access public

Available Tools

4 tools
authorize_paymentAuthorize a paymentA
Idempotent
Inspect

Attach the payer's EIP-712 PaymentAuthorization signature to a quoted payment intent. The signature is produced locally by the payer's wallet; it authorizes up to maximumTotalAuthorized, expiring at expiresAt. No funds move until submit_payment.

Inputs: payer_signature (required), payment_intent_id (required). Returns: content, isError

quote_paymentQuote a paymentA
Idempotent
Inspect

Create an IDPHANTOM payment quote with transparent platform fee (0.5%, min $0.01 USDC). Returns a payment intent ready for the payer's EIP-712 signature. Free: quoting never moves funds.

Inputs: amount (required), chain_id (required), payer_wallet (required), asset_contract (required), +5 more. Returns: content, isError

submit_paymentSubmit a paymentA
DestructiveIdempotent
Inspect

Broadcast an authorized payment intent through IDPHANTOM. The platform relays the on-chain transaction; exactly one broadcast per intent is enforced server-side (retries return the already-submitted transaction hash). This is the step that settles funds.

Inputs: payment_intent_id (required). Returns: content, isError

verify_paymentVerify a payment receiptA
Read-onlyIdempotent
Inspect

Verify an IDPHANTOM payment receipt: cryptographic checks (EIP-712 signature, payer recovery), expiry, and the on-chain state of the authorization (free/used/cancelled). Free for receipts of payments the caller participated in; paid via the receipt-verifier for third-party receipts.

Inputs: payment_intent_id (required), receipt_id. Returns: content, isError

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool maps to a distinct phase of the payment lifecycle (quote, authorize, submit, verify) with no overlapping responsibilities. The descriptions clearly delineate when funds move and what each step requires.

    Naming Consistency5/5

    All four names follow a consistent snake_case verb_noun pattern. The verbs are precise and parallel (quote_, authorize_, submit_, verify_).

    Tool Count5/5

    Four tools form a minimal, well-scoped set for the payment flow; each tool is necessary and no tool feels redundant or missing at the count level.

    Completeness4/5

    The core quote→authorize→submit→verify lifecycle is covered, but there is no explicit cancel/refund tool despite verify tracking a cancelled state, and no payment history or listing operation. These are minor gaps an agent can likely work around for single payments.

    Maintenance

    ActivityMaintained
    ResponsivenessLimited data

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables AI agents to discover and pay for monetized services such as PDF processing and DeFi operations using USDC on the Base blockchain. It provides automatic payment processing and secure local wallet management for seamless integration with MCP-compatible clients.
      16 npm
      -
    • A
      license
      A
      quality
      D
      maintenance
      Gives AI agents a smart-contract wallet on Base (USDC) with 10 stdio tools: create wallets, send USDC payments, pay x402-protected HTTP resources, and run ERC-8183 escrow Jobs for A2A service delivery.
      10
      10 npm
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI agents to send and receive USDC stablecoin payments on Base and Solana blockchains through MCP tools for wallet operations, balance checks, payment requests, and transfers.
      31 npm
      7
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      An MCP server for USDC payments on Base, enabling AI agents to check balances, send payments, generate payment requests, and view transaction history.
      4
      2
      MIT