loading…
Search for a command to run...
loading…
A unified interface for major African payment providers including M-Pesa, Paystack, and MTN MoMo. It enables users to process payments, request funds, and manag
A unified interface for major African payment providers including M-Pesa, Paystack, and MTN MoMo. It enables users to process payments, request funds, and manage transactions across the continent using natural language commands.
The missing piece for African fintech. One MCP server. Every major African payment provider. Natural language payments.
CI Security codecov npm version Downloads License: MIT Built by Africans
# "Send KES 5,000 to Mary via M-Pesa"
# "Request $100 from a customer in Nigeria"
# "Check if that MTN MoMo payment came through"
# "Process a refund for order #12345"
No more wrestling with 5 different APIs. No more juggling documentation.
Just natural language that works across M-Pesa, Paystack, MTN MoMo, and more.
See it in action with Claude, ChatGPT, Cursor, and any MCP client
| Demo with Claude | Demo with Cursor |
|---|---|
![]() |
![]() |
Africa has the world's most innovative payment systems—M-Pesa, Paystack, Flutterwave, MTN MoMo, Chipper Cash—but integrating them is a nightmare:
One MCP server. Every provider. Natural language.
// Instead of this...
const mpesa = new MpesaAPI({ consumerKey, consumerSecret, passkey });
await mpesa.authenticate();
const result = await mpesa.stkPush({ phone, amount, accountRef });
// Just say this:
"Send KES 5,000 to 254712345678 via M-Pesa"
curl -fsSL https://raw.githubusercontent.com/kenyaclaw/africa-payments-mcp/main/scripts/install.sh | bash
Or with wget:
wget -qO- https://raw.githubusercontent.com/kenyaclaw/africa-payments-mcp/main/scripts/install.sh | bash
npm install -g @kenyaclaw/africa-payments-mcp
Interactive wizard (recommended):
africa-payments-mcp init
# Beautiful interactive setup with emoji and progress indicators
Auto-detect existing credentials:
africa-payments-mcp detect --output config.json
# Automatically finds MPESA_*, PAYSTACK_* env vars and config files
Add to your MCP client configuration:
{
"mcpServers": {
"africa-payments": {
"command": "africa-payments-mcp",
"env": {
"MPESA_CONSUMER_KEY": "your_key",
"PAYSTACK_SECRET_KEY": "your_key"
}
}
}
}
Open Claude, ChatGPT, Cursor, or any MCP client and just ask:
"Send KES 5,000 to Mary via M-Pesa"
Run with Docker (no Node.js installation required):
# Pull the latest image
docker pull kenyaclaw/africa-payments-mcp:latest
# Run with a config file
docker run -v $(pwd)/config.json:/app/config/config.json \
kenyaclaw/africa-payments-mcp:latest
# Or run with environment variables
docker run -e MPESA_CONSUMER_KEY=xxx \
-e MPESA_CONSUMER_SECRET=xxx \
-e PAYSTACK_SECRET_KEY=xxx \
kenyaclaw/africa-payments-mcp:latest
version: '3.8'
services:
africa-payments:
image: kenyaclaw/africa-payments-mcp:latest
volumes:
- ./config.json:/app/config/config.json:ro
environment:
- NODE_ENV=production
ports:
- "3000:3000" # For webhook support
restart: unless-stopped
| Provider | Countries | Status | Features |
|---|---|---|---|
| M-Pesa | 🇰🇪 Kenya, 🇹🇿 Tanzania, 🇲🇿 Mozambique, 🇨🇩 DRC, 🇪🇬 Egypt | ✅ Ready | STK Push, B2C, B2B, C2B, Reversal |
| Paystack | 🇳🇬 Nigeria, 🇬🇭 Ghana, 🇿🇦 South Africa, +4 more | ✅ Ready | Cards, Bank Transfer, Mobile Money |
| MTN MoMo | 🇳🇬 Nigeria, 🇬🇭 Ghana, 🇺🇬 Uganda, +12 more | ✅ Ready | Collections, Disbursements, Remittances |
| Flutterwave | 🇳🇬 Nigeria, 🇰🇪 Kenya, 🇿🇦 South Africa, +30 more | 🚧 Beta | Cards, Mobile Money, Bank Transfer |
| Chipper Cash | 🇳🇬 Nigeria, 🇬🇭 Ghana, 🇰🇪 Kenya, +7 more | 🚧 Beta | P2P Transfers, Payments |
💡 Want to add a provider? See our contribution guide
┌─────────────────────────────────────────────────────────────┐
│ Your AI Agent │
│ (Claude, ChatGPT, Cursor, etc.) │
└─────────────────────┬───────────────────────────────────────┘
│ MCP Protocol
┌─────────────────────▼───────────────────────────────────────┐
│ Africa Payments MCP Server │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────────┐ │
│ │ M-Pesa │ │ Paystack │ │ MTN MoMo │ │
│ │ Adapter │ │ Adapter │ │ Adapter │ │
│ └─────────────┘ └─────────────┘ └─────────────────────────┘ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────────┐ │
│ │ Flutterwave │ │ ChipperCash │ │ More Coming... │ │
│ │ Adapter │ │ Adapter │ │ │ │
│ └─────────────┘ └─────────────┘ └─────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
"Integrated M-Pesa in 10 minutes. Took me 3 weeks the old way."
— David O., Fintech Developer, Lagos
"Finally, payments that work the way I think about them."
— Grace W., Startup Founder, Nairobi
"The USB-C of African payments. One connection, everything works."
— Kofi A., Full Stack Engineer, Accra
We built this for Africa's developers. Help us make it better:
git checkout -b feature/amazing-feature)MIT License — use it, modify it, build the future of African fintech.
Built with ❤️ in Nairobi, Lagos, Accra, and across the continent
🇰🇪 🇳🇬 🇬🇭 🇹🇿 🇺🇬 🇿🇦 🇪🇬 🇲🇦 🇷🇼 🇪🇹 🇸🇳 🇨🇮
Ready to launch? Check out our complete launch kit: 📋 LAUNCH.md - Twitter, HN, Dev.to, LinkedIn, Product Hunt templates
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"africa-payments-mcp": {
"command": "npx",
"args": []
}
}
}