SETUP
Up and running in two minutes
One config block connects your assistant to the Bani API. Every request is signed with your merchant private key.
- 1
Get your API keys
In the Bani dashboard, go to Settings > API Keys and copy your access token, public key, private key and tribe reference.
- 2
Add Bani to your client
Paste the config for your client. There's nothing to install, because your client runs the server with npx.
- 3
Start in sandbox
BANI_ENV defaults to sandbox. Test everything there, then switch to live when you're ready.
claude mcp add bani \ -e BANI_ENV=sandbox \ -e BANI_ACCESS_TOKEN=your-access-token \ -e BANI_PUBLIC_KEY=your-public-key \ -e BANI_PRIVATE_KEY=your-merchant-private-key \ -e BANI_ACCOUNT_TRIBE_REF=your-account-tribe-ref \ -- npx -y bani-mcpRun this once from your terminal. It registers the Bani server with Claude Code.
SEE IT IN ACTION
Describe the task. Your assistant makes the calls.
The assistant picks the right Bani tools, chains them together and reports back. You don't have to look up endpoints or build request bodies.
Create a customer for Ada Obi (ada@example.com, +2348023123200) and give her a ₦25,000 bank transfer account that expires in 2 days.
Done. Ada Obi has been added as a customer, and she has a temporary account ready for payment:
Amount: ₦25,000 · Expires in 2 days
I'll check the payment status for you whenever you ask.
WHAT'S INCLUDED
72 tools across the whole Bani API
Tools are grouped into toolsets. Use BANI_TOOLSETS to load only the groups you need.
Customers
Create and update customers, and manage their metadata and delivery addresses.
Collections
Bank transfer virtual accounts, mobile money, crypto deposits, Bani Shopper e-wallet payments, and their status checks.
Payouts
Bank transfers in Nigeria, across Africa and internationally, plus mobile money and crypto payouts and account verification.
Bani Shopper
Payment requests, refunds, and the recurring auto-debit consent flow.
Verification
Nigerian BVN and phone (USSD) verification.
Bills
Airtime, mobile data, and bill payments such as electricity and cable TV.
Conversion
Currency and coin conversion rates, and swaps between your balances.
Account
Account and wallet balance lookups, and phone network lookup.
Docs
Fetch live Bani documentation, for work like the Bani Pop widget or webhooks that isn't an API call.
Super Agent
Opt-inOnboard and manage merchant sub-accounts. Only enabled when BANI_SUPER_AGENT_KEY is set.
SAFETY
Built for an API that moves real money
Confirmation on money moves
Payouts, purchases, refunds and other irreversible actions are flagged as destructive, so your MCP client can ask you before running them.
Read-only mode
Set BANI_READ_ONLY=true to register only lookups and status checks. Nothing can create, pay or move money.
Sandbox by default
The server starts in sandbox. You switch to live on purpose, only after you've tested your flows.
CONFIGURATION
Environment variables
Bearer token from your dashboard.
Public key from your dashboard.
Merchant private key, used to sign every request. Never share this.
Your account's tribe reference.
sandbox or live.
Set to true to register only read-only tools (lookups and status checks). Nothing can create, pay, or move money.
Comma-separated list that limits which tool groups are registered.
Only needed for the agent toolset, which manages merchant sub-accounts.
Override the API base URL.
Example: a read-only lookup connection
Give your support team an assistant that can check balances and payment statuses on live, but can't send a payout. Keys are left out here for brevity.
{ "mcpServers": { "bani-lookup": { "command": "npx", "args": ["-y", "bani-mcp"], "env": { "BANI_ENV": "live", "BANI_READ_ONLY": "true", "BANI_TOOLSETS": "account,collections,payouts" } } }}