@uqpay/mcp-server
v0.2.0
Published
MCP server for the UQPAY API
Keywords
Readme
@uqpay/mcp-server
The UQPAY Model Context Protocol server gives AI assistants direct access to UQPAY's banking, issuing, and payment APIs through 84 tools.
npx -y @uqpay/mcp-server --api-key YOUR_API_KEY --client-id YOUR_CLIENT_ID --env sandboxSetup
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"uqpay": {
"command": "npx",
"args": [
"-y", "@uqpay/mcp-server",
"--api-key", "YOUR_API_KEY",
"--client-id", "YOUR_CLIENT_ID",
"--env", "sandbox"
]
}
}
}Gemini CLI
Add to ~/.gemini/settings.json:
{
"mcpServers": {
"uqpay": {
"command": "npx",
"args": [
"-y", "@uqpay/mcp-server",
"--api-key", "YOUR_API_KEY",
"--client-id", "YOUR_CLIENT_ID",
"--env", "sandbox"
]
}
}
}OpenAI Codex CLI
Add to ~/.codex/config.toml:
[mcp_servers.uqpay]
command = "npx"
args = [
"-y", "@uqpay/mcp-server",
"--api-key", "YOUR_API_KEY",
"--client-id", "YOUR_CLIENT_ID",
"--env", "sandbox"
]VS Code (GitHub Copilot)
Add to .vscode/mcp.json in your workspace:
{
"servers": {
"uqpay": {
"type": "stdio",
"command": "npx",
"args": [
"-y", "@uqpay/mcp-server",
"--api-key", "YOUR_API_KEY",
"--client-id", "YOUR_CLIENT_ID",
"--env", "sandbox"
]
}
}
}Configuration
| Argument | Env var | Default | Description |
|----------|---------|---------|-------------|
| --api-key | UQPAY_API_KEY | — | UQPAY API key (required) |
| --client-id | UQPAY_CLIENT_ID | — | UQPAY client ID (required) |
| --env | UQPAY_ENV | sandbox | sandbox or production |
| --transport | — | stdio | stdio, sse, or http |
| --port | — | 18080 | Port for sse and http transports |
Transports
stdio (default) — for Claude Desktop and most MCP clients.
SSE — for browser-based or remote clients. Connect at http://localhost:18080/sse.
Streamable HTTP — stateless mode, one request per call. POST to http://localhost:18080/mcp.
Security note: The SSE and HTTP transports have no built-in authentication. Any process that can reach the bound port can invoke all tools, including destructive operations, using your credentials. Only use these transports on trusted networks or behind an authenticated reverse proxy. The
stdiotransport (default) does not expose a network port and is not affected.
Available Tools
| Domain | Count | Capabilities |
|--------|-------|-------------|
| banking_* | 26 | Virtual accounts, balances, transfers, conversions, beneficiaries, payouts, exchange rates |
| issuing_* | 26 | Card programs, cardholders, cards, transfers, reports, secure iframe |
| payment_* | 22 | Payment intents, attempts, refunds, payouts, balances, bank accounts, settlements |
| connect_* | 5 | Account creation and KYC document management |
| supporting_* | 2 | File upload and download |
| simulator_* | 3 | Sandbox-only: simulate card authorizations and deposits |
simulator_*tools are only registered when--env sandbox(the default).
Getting Your Credentials
- Sign up or log in at docs.uqpay.com
- Navigate to API Keys in your dashboard
- Copy your API Key and Client ID
- Use
--env sandboxfor testing,--env productionfor live transactions
Sub-accounts
All tools accept an optional on_behalf_of parameter. Pass the short account ID (e.g. "CB4488338944") to operate on a sub-account; omit to operate on the master account.
Disclaimer
@uqpay/mcp-server provides access to AI-generated content that may be inaccurate or incomplete. Users are responsible for independently verifying any information before relying on it. UQPAY makes no guarantees regarding output accuracy and is not liable for any decisions, actions, or consequences resulting from its use.
License
MIT
