Connect AI agents with @vexpay/mcp
Official MCP server: let Claude Code, Claude Desktop, Cursor and other agents read balances, payments and payouts and create checkout sessions and payment links. Nothing in it moves money.
Install
Use your Test key while you try it out. The server runs locally over stdio and needs Node.js 20 or newer.
claude mcp add vexpay --env VEXPAY_API_KEY=your_test_key -- npx -y @vexpay/mcp{
"mcpServers": {
"vexpay": {
"command": "npx",
"args": ["-y", "@vexpay/mcp"],
"env": { "VEXPAY_API_KEY": "your_test_key" }
}
}
}| Variable | Required | Description |
|---|---|---|
| VEXPAY_API_KEY | Yes | Your API key. Never shown in tool output or logs. |
| VEXPAY_BASE_URL | No | API origin. Defaults to https://api.pay.vexwallet.co. |
| VEXPAY_MCP_ALLOW_LIVE | No | Set to 1 to enable write tools on a live account. |
Test and live accounts
On startup the server asks VEXPay whether the key belongs to a test or a live account. On a test account every tool is available. On a live account only read tools are available unless you set VEXPAY_MCP_ALLOW_LIVE=1. If the mode cannot be determined, the server assumes live.
Tools
| Tool | Type | What it does |
|---|---|---|
vexpay_get_balance | Read | VES platform balance |
vexpay_get_stablecoin_balances | Read | USDT and USDC balances |
vexpay_list_banks | Read | Venezuelan banks and supported services |
vexpay_get_fx_quote | Read | USD → VES at your Bolívar rate |
vexpay_get_payment | Read | One payment by id or externalRef |
vexpay_list_payouts / vexpay_get_payout | Read | Payouts (paged) and one payout by id or externalRef |
vexpay_list_conversions / vexpay_get_conversion | Read | VES → USDT conversions |
vexpay_get_cop_payment / vexpay_get_cop_balance | Read | Colombian peso payments and balance |
vexpay_list_stablecoin_networks | Read | Enabled networks, fees and availability |
vexpay_get_checkout_session | Read | One checkout session |
vexpay_list_products / vexpay_list_payment_links | Read | Products and their hosted payment links |
vexpay_list_webhook_endpoints | Read | Your webhook endpoints |
vexpay_create_checkout_session | Write | Checkout session with a hosted payment URL |
vexpay_create_product / vexpay_create_payment_link | Write | Product and its hosted payment link |
vexpay_create_deposit_address | Write | Stablecoin deposit address for a customer |
vexpay_quote_conversion | Write | VES → USDT rate locked 60 s (nothing executes) |
vexpay_send_test_webhook | Write | notification.test delivery to your endpoints |
Write tools accept an optional idempotencyKey. Reuse it when retrying so the record is created only once. Failed calls return the HTTP status, error code, message and request id.