Africa Payments MCP
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.
README
🌍 Africa Payments MCP
The missing piece for African fintech. One MCP server. Every major African payment provider. Natural language payments.
✨ What if accepting payments was as easy as sending a message?
# "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.
<p align="center"> <img src="docs/assets/demo.gif" alt="Africa Payments MCP Demo" width="800"/> <br> <em>See it in action with Claude, ChatGPT, Cursor, and any MCP client</em> </p>
🎬 See It In Action
| Demo with Claude | Demo with Cursor |
|---|---|
![]() |
![]() |
💡 Why Africa Payments MCP?
The Problem 😤
Africa has the world's most innovative payment systems—M-Pesa, Paystack, Flutterwave, MTN MoMo, Chipper Cash—but integrating them is a nightmare:
- 🔀 Fragmented APIs: M-Pesa uses SOAP. Paystack uses REST. MTN MoMo uses something entirely different.
- 📚 Scattered Documentation: Hours spent hunting for the right docs
- 🔧 Different Auth Methods: API keys, OAuth, basic auth—each one unique
- 🐛 Edge Cases Everywhere: Each provider has quirks that break your code
- ⏱️ Weeks of Integration Time: Before you process a single payment
The Solution 🎯
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"
The Impact 🚀
- ⚡ Ship in hours, not weeks — Your first payment working today
- 🧠 AI-native from day one — Built for the era of AI agents
- 🌍 Truly Pan-African — One integration covers the continent
- 🔓 Open Source — MIT licensed, community-driven
- 🛠️ Developer-First — Built by Africans who understand the pain
🚀 Quick Start
One-Line Installer (Recommended)
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
Manual Installation
1. Install
npm install -g @kenyaclaw/africa-payments-mcp
2. Configure
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
3. Connect to Your AI
Add to your MCP client configuration:
{
"mcpServers": {
"africa-payments": {
"command": "africa-payments-mcp",
"env": {
"MPESA_CONSUMER_KEY": "your_key",
"PAYSTACK_SECRET_KEY": "your_key"
}
}
}
}
4. Start Accepting Payments
Open Claude, ChatGPT, Cursor, or any MCP client and just ask:
"Send KES 5,000 to Mary via M-Pesa"
🐳 Docker Quick Start
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
Docker Compose
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
🔌 Supported Providers
| 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
📖 Documentation
🏗️ Architecture
┌─────────────────────────────────────────────────────────────┐
│ 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 │ │ │ │
│ └─────────────┘ └─────────────┘ └─────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
🌟 What Developers Are Saying
"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
🤝 Contributing
We built this for Africa's developers. Help us make it better:
- 🍴 Fork the repo
- 🌿 Create your branch (
git checkout -b feature/amazing-feature) - 💻 Make your changes
- ✅ Add tests
- 📝 Update documentation
- 🔀 Submit a PR
📜 License
MIT License — use it, modify it, build the future of African fintech.
💬 Join the Community
<p align="center"> <strong>Built with ❤️ in Nairobi, Lagos, Accra, and across the continent</strong> <br> <em>🇰🇪 🇳🇬 🇬🇭 🇹🇿 🇺🇬 🇿🇦 🇪🇬 🇲🇦 🇷🇼 🇪🇹 🇸🇳 🇨🇮</em> </p>
<p align="center"> <img src="docs/assets/africa-payments-logo.svg" alt="Africa Payments MCP" width="200"/> </p>
🚀 Launch Materials
Ready to launch? Check out our complete launch kit: 📋 LAUNCH.md - Twitter, HN, Dev.to, LinkedIn, Product Hunt templates
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

