Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
MCP Server to interact with Flutterwave APIs.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
FLW_SECRET_KEYAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"flutterwave": {
"command": "npx",
"args": [
"-y",
"mcp-flutterwave"
],
"env": {
"FLW_SECRET_KEY": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add flutterwave --env FLW_SECRET_KEY=your-value -- npx -y mcp-flutterwaveTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"flutterwave": {
"command": "npx",
"args": [
"-y",
"mcp-flutterwave"
],
"env": {
"FLW_SECRET_KEY": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"flutterwave": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-flutterwave"
],
"env": {
"FLW_SECRET_KEY": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 6. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto bajoski34 bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: FLW_SECRET_KEY
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.2.0) kam vor 13 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, Zoo MCP
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
An MCP server that provides access to the Zoo API for various CAD operations and tools.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
An MCP (Model Context Protocol) server that enables AI assistants to interact with the Flutterwave API — create payment links, charge customers directly, manage transfers, collect via virtual accounts, pay bills, and more.
Note: This server currently targets the Flutterwave v3 API. Support for v4 is coming soon.
Also ships with a built-in web app that connects to the MCP server and lets you talk to a Claude-powered Flutterwave assistant directly in your browser.
npm install -g mcp-flutterwave
npx mcp-flutterwave --tools=all
Pull the image:
docker pull ghcr.io/bajoski34/mcp-flutterwave:latest
The server communicates over stdio, so it must be launched by an MCP client — not run standalone. Configure Claude Desktop to use the Docker image as the MCP server:
{
"mcpServers": { "flutterwave": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "FLW_SECRET_KEY=YOUR_SECRET_KEY", "-e", "FLW_ENCRYPTION_KEY=YOUR_ENCRYPTION_KEY", "ghcr.io/bajoski34/mcp-flutterwave:latest" ] } } }
The -i flag keeps stdin open so Claude Desktop can communicate with the server over stdio.
Requirements: Node.js 20 or later (for npm/npx).
| Tool | Description |
|---|---|
create_checkout | Create a hosted Flutterwave payment link |
disable_checkout | Disable an existing payment link |
| Tool | Description |
|---|---|
charge_card | Directly charge a debit or credit card — handles PIN, AVS, 3DS, and OTP flows |
charge_bank_account | Debit a bank account (NGN / GHS) |
charge_mobile_money | Mobile money — Ghana, Uganda, Rwanda, Zambia, Francophone Africa |
charge_mpesa | M-Pesa charge (KES) |
charge_ussd | USSD charge (NGN) |
validate_charge | Validate a pending charge using OTP |
| Tool | Description |
|---|---|
read_transaction | Get transaction details by ID |
read_transaction_with_reference | Get transaction details by tx_ref |
read_transaction_timeline | View the event timeline for a transaction |
resend_transaction_webhook | Resend a failed webhook |
| Tool | Description |
|---|---|
create_transfer | Initiate a bank transfer |
create_beneficiary | Save a new transfer beneficiary |
list_beneficiaries | List all saved beneficiaries |
| Tool | Description |
|---|---|
create_payment_plan | Create a recurring payment plan |
get_payment_plans | List payment plans with optional filters |
| Tool | Description |
|---|---|
create_virtual_account | Create a dedicated bank account number for a customer (NGN or GHS) |
get_virtual_account | Retrieve a virtual account's status and details by order_ref |
update_virtual_account | Link or update the BVN on an NGN virtual account |
list_virtual_account_bulk | List all accounts created in a bulk batch |
| Tool | Description |
|---|---|
get_bill_categories | List available bill categories (AIRTIME, CABLEBILLS, UTILITYBILLS, etc.) |
get_bill_providers | List billers/providers for a category |
get_bill_items | List payable items for a specific biller |
validate_bill_customer | Validate a customer account before payment (meter number, smartcard, etc.) |
pay_bill | Submit a bill payment |
get_bill_status | Check payment status and retrieve prepaid tokens (electricity) |
| Tool | Description |
|---|---|
request_fx_quote | Submit a Request For Quote (RFQ) for a currency conversion |
get_fx_quote | Poll the quote status — wait for READY before trading |
initiate_fx_trade | Lock in a READY quote and execute the trade |
get_fx_trade | Poll trade status until SETTLED or FAILED |
| Tool | Description |
|---|---|
initiate_bvn_verification | Begin a BVN identity check — returns a single-use customer consent URL |
get_bvn_details | Retrieve full BVN identity data after consent is given |
resolve_bank_account | Look up the account holder name for a bank account number |
verify_card_bin | Look up card brand, type, issuer, and country from the first 6 digits |
| Tool | Description |
|---|---|
get_stablecoin_fee | Get the transfer fee before sending — shows net amount the recipient receives |
send_stablecoin | Send USDC or USDT to a Polygon wallet address |
convert_to_stablecoin | Convert NGN or USD fiat balance into USDC or USDT |
Direct card charges are multi-step. The charge_card tool handles every stage automatically and tells Claude what to do next.
1. charge_card(card details)
│ ├─ mode: "pin" → ask customer for PIN │ charge_card(same params + authorization: { mode: "pin", pin: "..." }) │ │ │ ├─ mode: "otp" → validate_charge(flw_ref, otp) │ └─ mode: "redirect" → send customer to 3DS URL │ ├─ mode: "avs_noauth" → ask customer for billing address │ charge_card(same params + authorization: { mode: "avs_noauth", city, address, ... }) │ │ │ ├─ mode: "otp" → validate_charge(flw_ref, otp) │ └─ mode: "redirect" → send customer to 3DS URL │ ├─ mode: "redirect" → send customer to 3DS URL, then read_transaction to verify │ └─ (none) → charge complete — read_transaction to verify
When a second call is needed, pass authorization alongside the original card details:
// PIN flow
{ "authorization": { "mode": "pin", "pin": "3310" } }
// AVS flow { "authorization": { "mode": "avs_noauth", "city": "Lagos", "address": "12 Victoria Island", "state": "LA", "country": "NG", "zipcode": "100001" } }
American Express transactions require the card_holder_name field in addition to standard card details.
Card payloads are encrypted with 3DES-ECB using your FLW_ENCRYPTION_KEY before they are sent to Flutterwave (PCI DSS requirement). The encryption is handled automatically — set the environment variable and the server does the rest.
Virtual accounts give each customer a dedicated bank account number to make transfers into. Flutterwave notifies your webhook when a payment arrives.
| Feature | NGN | GHS |
|---|---|---|
| Dynamic (one-time) | ✓ — set amount, expires in ~1 hr | ✓ — use frequency and duration |
| Static (reusable) | ✓ — is_permanent: true, BVN required | ✓ — is_permanent: true |
| BVN required | Static accounts only | No |
{
"email": "customer@example.com", "currency": "NGN", "tx_ref": "VA-NGN-001", "is_permanent": true, "bvn": "22415929481" }
{
"email": "customer@example.com", "currency": "GHS", "tx_ref": "VA-GHS-001", "amount": 500, "frequency": 5, "duration": 7 }
After creation, save the order_ref — it is the key for retrieving or updating the account via get_virtual_account and update_virtual_account.
Bill payments follow a 6-step discovery flow. Skip validate_bill_customer for airtime and mobile data.
1. get_bill_categories
↓ choose a category (e.g. UTILITYBILLS)
| Code | Description |
|---|---|
AIRTIME | Mobile airtime top-up |
MOBILEDATA | Data bundle purchase |
CABLEBILLS | Cable TV (DSTV, GOTV, StarTimes) |
INTSERVICE | Internet service subscriptions |
UTILITYBILLS | Electricity (prepaid & postpaid) |
TAX | Government tax payments |
DONATIONS | Charitable donations |
TRANSLOG | Transport / logistics |
DEALPAY | Deal payments |
RELINST | Religious institutions |
SCHPB | School / education payments |
Bill payments are available for Nigeria only (
country: NG).
Currency conversion uses a two-step quote-then-trade flow. Quotes are valid for 5 minutes and available weekdays only (Monday–Friday).
1. request_fx_quote(base_currency, target_currency, quantity)
↓ returns quote_id, status: NEW
Nur der Anfang wird gezeigt; den Rest findest du im Repo