Home / MCP / Flutterwave MCP Server

Flutterwave MCP Server

Provides tools to manage Flutterwave transactions, generate payment links, retry failed transactions, and query histories.

javascript
Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
    "mcpServers": {
        "flutterwave": {
            "command": "mcp-flutterwave",
            "args": [
                "--tools=create_checkout,disable_checkout,read_transaction,resend_transaction_webhook"
            ],
            "env": {
                "FLW_SECRET_KEY": "YOUR_SECRET_KEY"
            }
        }
    }
}

You have a dedicated MCP server that lets your AI assistants interact with Flutterwave. It provides tools to confirm transactions, retry failed ones, fetch histories, generate payment links, and manage transfers and beneficiaries, all through a simple MCP interface.

How to use

You connect an MCP-compatible client to this server to perform Flutterwave-related actions. Start by ensuring you have a running MCP client that can talk to an MCP server using standard tools and commands. Once connected, you can ask for transaction status, generate checkout links for customers, resend failed webhooks, or retrieve the history and timelines of transactions. The available tools let you confirm transactions, retry recoverable errors, and fetch beneficiary and transfer information.

How to install

Prerequisites You need Node.js and npm installed on your system. Node enables you to run the MCP server and build or execute local versions if you choose to run it from source.

Step 1 Install the MCP Flutterwave package globally on your system.

npm install -g mcp-flutterwave

Step 2 Obtain your Flutterwave secret key. This key authorizes the MCP server to perform actions against your Flutterwave account.

Step 3 Configure your MCP client with the Flutterwave MCP server. Use the standard client config to point to the server and supply your secret key.

Step 4 Start using with your MCP client. You can interact with Flutterwave transactions, payments, and related features once the server is running.

Configuration and running the server locally

If you run the server from a local build, you can start it with the compiled index file and pass the required tools.

node /path/to/mcp-flutterwave/build/index.js --tools=create_checkout,disable_checkout,read_transaction,resend_transaction_webhook

Security notes

Keep your Flutterwave secret key secure. Do not expose your secret key in client-side code or logs. Use environment variables to supply sensitive credentials and limit access to the MCP server. Rotate keys as recommended by Flutterwave and monitor webhook activity for any anomalies.

Available tools

get-transactions

Fetch the final status of a transaction by its ID and return the result with details such as status, amount, and timestamp.

read_transaction

Read the current status and timeline of a specific transaction to understand its progress and events.

resent-failed-webhook

Resend a previously failed webhook for a given transaction to trigger retry handling or notifications.

create_checkout

Create a customer payment link (checkout) that you can share with customers to start a Flutterwave payment flow.

disable-checkout

Disable an active checkout link so it can no longer be used for new payments.

retry-transaction

Analyze a failed transaction and provide guidance or actions to retry with recoverable errors.

get-transaction-timeline

Retrieve the full event timeline for a transaction to analyze the sequence of steps and status changes.

get-beneficiaries

List the beneficiaries associated with transfers for a given customer.

get-transfers

Fetch a list of transfers for a customer, including statuses and totals.

create-transfer

Create a new transfer for a customer, including amount, recipient, and related metadata.

create-beneficiary

Create a new beneficiary profile to use in future transfers.