MCP Tools Reference
Complete reference for all 58 MCP tools available to AI agents.
Overview
The Wallgent MCP server exposes 58 tools that AI agents can use to manage finances through the Model Context Protocol. These tools wrap the Wallgent REST API, so agents don't need to construct HTTP requests.
See the MCP Guide for setup instructions.
Wallet Management (9 tools)
wallgent_create_wallet
Create a new Wallgent wallet for an AI agent.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Wallet name |
agentName | string | No | Agent identifier |
wallgent_get_wallet
Get details for a specific Wallgent wallet including balance, name, and environment.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
wallgent_list_wallets
List all wallets accessible with the current API key.
No parameters required.
wallgent_check_balance
Check the balance of a Wallgent wallet.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
wallgent_fund_wallet
Fund a Wallgent wallet with a specified amount.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
amount | string | Yes | Amount to fund |
wallgent_freeze_wallet
Freeze a wallet to prevent any outgoing payments or funding. Balance reads remain available.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
wallgent_unfreeze_wallet
Unfreeze a previously frozen wallet, re-enabling payments and funding.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
wallgent_deposit_wallet
Deposit funds into a wallet via an external rail (ACH, wire, FedNow, or USDC).
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
amount | string | Yes | Amount to deposit |
currency | string | Yes | USD or USDC |
bankAccountId | string | No | Linked bank account ID |
wallgent_withdraw_wallet
Withdraw funds from a wallet to an external destination (ACH, wire, FedNow, or USDC).
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
amount | string | Yes | Amount to withdraw |
currency | string | Yes | USD or USDC |
bankAccountId | string | No | Linked bank account ID |
Payments (3 tools)
wallgent_send_payment
Send a payment between Wallgent wallets.
| Parameter | Type | Required | Description |
|---|---|---|---|
fromWalletId | string | Yes | Source wallet ID |
toWalletId | string | Yes | Destination wallet ID |
amount | string | Yes | Payment amount |
description | string | No | Payment description |
wallgent_batch_payment
Send multiple payments in a single batch. Each payment succeeds or fails independently (partial success is possible).
| Parameter | Type | Required | Description |
|---|---|---|---|
payments | array | Yes | Array of payment objects |
wallgent_get_transactions
Get recent transactions for a Wallgent wallet.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
limit | number | No | Number of transactions |
Transfers (2 tools)
wallgent_get_transfer
Get the status of a deposit or withdrawal transfer.
| Parameter | Type | Required | Description |
|---|---|---|---|
transferId | string | Yes | Transfer ID |
wallgent_list_transfers
List external rail transfers (deposits and withdrawals) for the organization, with optional filters.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | No | Filter by wallet ID |
direction | string | No | DEPOSIT or WITHDRAWAL |
status | string | No | Filter by status (PENDING, COMPLETED, FAILED, etc.) |
limit | number | No | Number of results (max 100) |
Policies (4 tools)
wallgent_get_policies
Get spending policies for a Wallgent wallet.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet ID |
wallgent_create_policy
Create a spending policy for a wallet to control when and how funds can be used.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | The wallet to attach the policy to |
name | string | Yes | A descriptive name for the policy |
maxTransactionAmount | string | No | Maximum amount per transaction (e.g. "100.00") |
dailySpendingLimit | string | No | Maximum total spend per day (e.g. "500.00") |
requireHumanApproval | boolean | No | Require human approval for all transactions |
approvedRecipients | string[] | No | Allowlist of wallet IDs or addresses |
wallgent_update_policy
Update an existing spending policy on a wallet.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | The wallet that owns the policy |
policyId | string | Yes | The ID of the policy to update |
name | string | No | New name for the policy |
enabled | boolean | No | Enable or disable the policy |
maxTransactionAmount | string | null | No | New max transaction amount (null to remove) |
dailySpendingLimit | string | null | No | New daily spending limit (null to remove) |
requireHumanApproval | boolean | No | Toggle human approval requirement |
wallgent_delete_policy
Delete a spending policy from a wallet.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | The wallet that owns the policy |
policyId | string | Yes | The ID of the policy to delete |
Approvals (3 tools)
wallgent_list_approvals
List pending payment approvals that require human review before execution.
No parameters required.
wallgent_approve_payment
Approve a pending payment that requires human approval. The payment will be executed immediately.
| Parameter | Type | Required | Description |
|---|---|---|---|
approvalId | string | Yes | Approval ID |
wallgent_reject_payment
Reject a pending payment that requires human approval. The payment will not be executed.
| Parameter | Type | Required | Description |
|---|---|---|---|
approvalId | string | Yes | Approval ID |
reason | string | No | Rejection reason |
Delegations (2 tools)
wallgent_list_delegations
List all wallet delegations granted by or to this organization.
No parameters required.
wallgent_create_delegation
Delegate wallet access to another organization with specific permissions.
| Parameter | Type | Required | Description |
|---|---|---|---|
granteeOrgId | string | Yes | Organization to grant access |
walletId | string | Yes | Wallet to delegate |
permissions | string[] | Yes | Permissions to grant |
expiresAt | string | No | Expiry date (ISO 8601) |
Cards (4 tools)
wallgent_create_card
Create a virtual card (persistent or single-use) linked to a Wallgent wallet. Returns card number and CVC for immediate use.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Wallet to link the card to |
type | string | Yes | PERSISTENT or SINGLE_USE |
wallgent_list_cards
List virtual cards, optionally filtered by wallet ID.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | No | Filter by wallet |
wallgent_freeze_card
Freeze a virtual card to temporarily prevent spending.
| Parameter | Type | Required | Description |
|---|---|---|---|
cardId | string | Yes | Card ID |
wallgent_unfreeze_card
Unfreeze a virtual card to resume spending.
| Parameter | Type | Required | Description |
|---|---|---|---|
cardId | string | Yes | Card ID |
Payment Links (3 tools)
wallgent_create_payment_link
Create a payment link to send money to anyone. Returns a URL that recipients can use to claim the funds via bank transfer, USDC, or another Wallgent wallet.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Funding wallet |
amount | string | Yes | Amount to send |
description | string | No | Link description |
wallgent_list_payment_links
List payment links with optional filters.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | No | Filter by wallet |
status | string | No | Filter by status |
wallgent_cancel_payment_link
Cancel a pending payment link and release held funds back to the wallet.
| Parameter | Type | Required | Description |
|---|---|---|---|
paymentLinkId | string | Yes | Payment link ID |
Customers (2 tools)
wallgent_create_customer
Create a customer record for billing. Saves their info so you can send invoices and charge their saved payment method later.
| Parameter | Type | Required | Description |
|---|---|---|---|
email | string | Yes | Customer email |
name | string | Yes | Customer name |
wallgent_list_customers
List all customers you have created for billing.
No parameters required.
Invoices (6 tools)
wallgent_create_invoice
Create an invoice for a customer. Optionally finalize it immediately to get a payment link. Funds settle into your wallet when paid.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Receiving wallet |
customerId | string | Yes | Customer to bill |
lineItems | array | Yes | Line items |
memo | string | No | Invoice memo |
wallgent_list_invoices
List invoices with optional filters by wallet, customer, or status.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | No | Filter by wallet |
customerId | string | No | Filter by customer |
status | string | No | Filter by status |
wallgent_finalize_invoice
Finalize a draft invoice so it can be paid. Returns a checkout URL you can send to the customer.
| Parameter | Type | Required | Description |
|---|---|---|---|
invoiceId | string | Yes | Invoice ID |
wallgent_charge_customer
Charge a customer's saved payment method for work completed. Creates an invoice, charges the card, and deposits funds into your wallet in one step. Optionally set recurring to auto-charge on a schedule.
| Parameter | Type | Required | Description |
|---|---|---|---|
walletId | string | Yes | Receiving wallet |
customerId | string | Yes | Customer to charge |
amount | string | Yes | Amount to charge |
description | string | Yes | Charge description |
recurring | object | No | Recurring schedule |
wallgent_void_invoice
Void a finalized invoice that has not been paid. The invoice can no longer be collected.
| Parameter | Type | Required | Description |
|---|---|---|---|
invoiceId | string | Yes | Invoice ID |
wallgent_refund_invoice
Refund a paid invoice. Returns the funds to the customer and debits your wallet.
| Parameter | Type | Required | Description |
|---|---|---|---|
invoiceId | string | Yes | Invoice ID |
Compliance (2 tools)
wallgent_compliance_status
Get real-time PCI-DSS compliance status of all security controls.
No parameters required.
wallgent_compliance_evidence
Get summary of recent compliance audit evidence bundles and their pass/fail status.
No parameters required.
Agents (8 tools)
wallgent_create_agent
Create a new AI agent with its own wallet and a wallet-scoped API key. Returns the agent ID, API key secret (shown once), and initial balance.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Agent display name |
permissions | string[] | No | Permissions for the agent key (defaults to wallets + payments read/write) |
wallgent_list_agents
List all agent budgets for the current organization.
No parameters required.
wallgent_get_agent
Get details of a specific agent budget including balance, status, and API key info.
| Parameter | Type | Required | Description |
|---|---|---|---|
agentId | string | Yes | The agent (wallet) ID to retrieve |
wallgent_adjust_budget
Adjust an agent budget allocation. Positive amounts increase the budget (fund from org wallet); negative amounts decrease it (return to org wallet).
| Parameter | Type | Required | Description |
|---|---|---|---|
agentId | string | Yes | The agent (wallet) ID to adjust |
amount | number | Yes | Amount to adjust (positive = increase, negative = decrease) |
wallgent_pause_agent
Pause an agent budget. Freezes the agent wallet so no outgoing payments can be made.
| Parameter | Type | Required | Description |
|---|---|---|---|
agentId | string | Yes | The agent (wallet) ID to pause |
wallgent_resume_agent
Resume a paused agent budget. Unfreezes the agent wallet to allow payments again.
| Parameter | Type | Required | Description |
|---|---|---|---|
agentId | string | Yes | The agent (wallet) ID to resume |
wallgent_rotate_agent_key
Rotate an agent's API key. Revokes the current key and issues a new one.
| Parameter | Type | Required | Description |
|---|---|---|---|
agentId | string | Yes | The agent (wallet) ID whose key to rotate |
wallgent_delete_agent
Delete an agent, deallocate remaining funds back to the org wallet, and revoke all API keys.
| Parameter | Type | Required | Description |
|---|---|---|---|
agentId | string | Yes | The agent (wallet) ID to delete |
Agent Network (2 tools)
wallgent_pay_agent
Pay another agent by their Wallgent address (wg_...). Instant, zero fees. Uses the internal Wallgent payment network instead of external rails.
| Parameter | Type | Required | Description |
|---|---|---|---|
toAddress | string | Yes | The recipient Wallgent address (starts with wg_) |
amount | string | Yes | The amount to send (e.g. "50.00") |
description | string | No | Optional payment description |
wallgent_search_directory
Search the Wallgent agent directory to find other agents you can pay. Returns agent names and their Wallgent addresses.
| Parameter | Type | Required | Description |
|---|---|---|---|
search | string | No | Search by agent name or address |
Webhooks (3 tools)
wallgent_create_webhook
Create a webhook endpoint to receive real-time event notifications.
| Parameter | Type | Required | Description |
|---|---|---|---|
url | string | Yes | The HTTPS URL to receive webhook events |
events | string[] | Yes | Event types to subscribe to (e.g. ["payment.posted", "wallet.frozen"]) |
wallgent_list_webhooks
List all configured webhook endpoints for the organization.
No parameters required.
wallgent_delete_webhook
Delete a webhook endpoint by ID.
| Parameter | Type | Required | Description |
|---|---|---|---|
webhookId | string | Yes | The ID of the webhook to delete |
API Keys (3 tools)
wallgent_create_api_key
Create a new API key with specific permissions for programmatic access. The secret is shown only once.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | A descriptive name for the API key |
permissions | string[] | Yes | Permissions to grant (e.g. ["wallets:read", "payments:write"]) |
environment | string | No | SANDBOX or PRODUCTION (defaults to SANDBOX) |
wallgent_list_api_keys
List all API keys for the organization, including their status, environment, and permissions.
No parameters required.
wallgent_revoke_api_key
Permanently revoke an API key, preventing any further use.
| Parameter | Type | Required | Description |
|---|---|---|---|
keyId | string | Yes | The ID of the API key to revoke |
Bank Accounts (2 tools)
wallgent_list_bank_accounts
List linked bank accounts for deposits and withdrawals.
No parameters required.
wallgent_create_bank_account
Link a new bank account for ACH deposits and withdrawals.
| Parameter | Type | Required | Description |
|---|---|---|---|
accountNumber | string | Yes | The bank account number |
routingNumber | string | Yes | The 9-digit ABA routing number |
accountName | string | Yes | Name on the bank account |
accountType | string | Yes | CHECKING or SAVINGS |
Audit Logs (1 tool)
wallgent_query_audit_logs
Query the audit log to see all actions taken on the organization (API calls, config changes, etc.).
| Parameter | Type | Required | Description |
|---|---|---|---|
action | string | No | Filter by action type (e.g. "wallet.created") |
resource | string | No | Filter by resource type (e.g. "wallet", "policy") |
from | string | No | Start date (ISO 8601, e.g. "2025-01-01T00:00:00Z") |
to | string | No | End date (ISO 8601) |
limit | number | No | Number of results (max 100) |