Skip to main content

MCP Tools Reference

The Proxy MCP server provides 29 tools organized into logical categories. Each tool has specific authentication requirements and parameters.

Authentication Requirements

Tools are restricted based on authentication type:

Onboarding

Tools for initializing customer accounts.

onboarding.start

Create or link a customer account and return KYC status.
string
Customer email address
string
Customer first name
string
Customer last name
string
Customer type: consumer or corporate
Auth: User only Response:

onboarding.status

Fetch the current onboarding and KYC status. Auth: User only Parameters: None Response:

KYC

Tools for identity verification. Return a hosted KYC verification link for the current user. Auth: User only Parameters: None Response:

kyc.status

Return the current KYC verification status. Auth: User only Parameters: None Response:

Agents

Tools for managing autonomous agents.

agent.create

Create a new agent for the customer.
string
required
Human-readable agent name
string
Your unique identifier for the agent
string
Initial status: active, paused, or disabled
number
Spending limit amount (in cents)
string
Spending limit currency (default: usd)
object
Policy overrides (see Cards for policy options)
object
Custom metadata key-value pairs
Auth: User only Response:

agent.list

List all agents for the customer.
number
Maximum results to return (default: 50)
Auth: User only Response:

agent.update

Update agent metadata, limits, or policy.
string
required
Agent public ID
string
New agent name
string
New external identifier
number
New spending limit amount
string
New spending limit currency
object
Policy overrides
object
Custom metadata
Auth: User only

agent.pause

Temporarily pause an agent. Paused agents cannot access cards or make purchases.
string
required
Agent public ID
Auth: User only Response:

agent.disable

Permanently disable an agent. Disabled agents cannot be reactivated.
string
required
Agent public ID
Auth: User only Response:

agent.token.issue

Create a new authentication token for an agent.
string
required
Agent public ID
string
Token name for identification
Auth: User only Response:
The token value is only returned once. Store it securely immediately after creation.

agent.token.revoke

Revoke an agent token, immediately invalidating it.
string
required
Token public ID
Auth: User only Response:

Cards

Tools for managing virtual cards.

card.create

Create a new virtual card. Requires completed KYC verification.
string
Agent to assign the card to
string
Card display name (default: “Virtual Card”)
string
Card usage type: single (one-time) or multi (reusable)
object
Spending limit configuration
object
Policy overrides
Auth: User only Response:

card.list

List cards. Scoped to assigned cards when using agent authentication.
number
Maximum results to return (default: 50)
Auth: Both (User or Agent) Response:

card.lock

Temporarily lock a card, preventing all transactions.
string
required
Card public ID
Auth: User only Response:

card.unlock

Unlock a previously locked card.
string
required
Card public ID
Auth: User only Response:

card.cancel

Permanently cancel a card. This action cannot be undone.
string
required
Card public ID
Auth: User only Response:

card.policy.update

Update per-card policy overrides.
string
required
Card public ID
object
Policy configuration. Available options:
  • requireIntent: Require intent declaration before access
  • requireApproval: Require explicit approval for intents
  • autoApproveBelow: Auto-approve intents below this amount (cents)
  • allowedMccs: Array of allowed merchant category codes
  • blockedMccs: Array of blocked merchant category codes
  • limits: Per-auth, daily, or monthly limits
string
Card usage type: single or multi
number
Card expiration timestamp (milliseconds)
Auth: User only Response:

Intents

Tools for declaring spending intents. Agent authentication only.

intent.create

Create a new spending intent before making a purchase.
string
required
Card public ID
string
required
Description of the intended purchase
string
Client-provided intent ID for idempotency
number
Expected transaction amount (in cents)
string
Expected currency (default: usd)
string
Expected merchant name
array
Expected merchant category codes
number
Allowed amount variance (in cents)
number
Allowed percentage variance
number
Intent time-to-live in minutes
object
Custom metadata
Auth: Agent only Response:

intent.list

List intents for the agent’s cards.
string
Filter by card ID
number
Maximum results to return (default: 50)
Auth: Agent only Response:

intent.autoApprove.configure

Configure auto-approval thresholds at the customer, agent, or card level.
string
Configure for a specific agent
string
Configure for a specific card
boolean
Whether to require approval
number
Auto-approve intents below this amount (cents)
Auth: User only Response:

Access

Tools for requesting card credentials. Agent authentication only.

access.request

Request access to card credentials for an approved intent.
string
required
Card public ID
string
Intent public ID or client-provided ID
string
Access request summary
number
Expected amount (cents)
string
Expected currency
string
Merchant name
string
Reason for access
object
Client context
Auth: Agent only Response (granted):
Response (denied):
Card credentials are sensitive. The card object is only returned when access is granted and should be used immediately.

access.events.list

List access events for the agent’s cards.
string
Filter by card ID
number
Maximum results to return (default: 50)
Auth: Agent only Response:

Transactions

Tools for viewing transaction history.

transaction.list

List transactions. Scoped to agent’s cards when using agent authentication.
string
Filter by card ID
number
Maximum results to return (default: 50)
Auth: Both (User or Agent) Response:

transaction.get

Fetch details of a single transaction.
string
required
Transaction public ID
Auth: User only Response:

Disputes

Tools for managing transaction disputes.

dispute.create

File a dispute for a transaction.
string
required
Transaction public ID
string
Dispute reason (e.g., unauthorized, duplicate, not_received)
string
Detailed description of the dispute
object
Custom metadata
Auth: User only Response:

dispute.list

List all disputes for the customer.
number
Maximum results to return (default: 50)
Auth: User only Response:

dispute.update

Update a dispute with additional evidence or information.
string
required
Dispute public ID
object
Evidence to add
string
Updated description
object
Custom metadata
Auth: User only Response:

Funding

Tools for managing account funding.

funding.instructions.get

Get deposit instructions for funding the account. Auth: User only Parameters: None Response:

funding.history.list

List funding events (deposits, withdrawals, transfers).
number
Maximum results to return (default: 50)
Auth: User only Response:

Balance

Tools for checking account balance.

balance.get

Get the current available balance. Auth: Both (User or Agent) Parameters: None Response:
  • available: Funds available for spending
  • held: Funds temporarily held for pending authorizations
  • All amounts are in cents