Skip to content

bajoski34/mcp-flutterwave

Repository files navigation

mcp-flutterwave

An MCP (Model Context Protocol) server that enables AI assistants to interact with Flutterwave, providing tools for confirming transactions, send failed hooks, and more.

✨ MCP-UI Support

This server now includes beautiful, interactive UI components powered by MCP-UI! Get rich, branded visualizations for transactions, payment links, and transfers directly in your MCP client.

Flutterwave MCP-UI Components

UI Features

  • 🎨 Flutterwave-branded components with signature orange (#F5A623) gradient
  • 💳 Transaction details with status badges and formatted amounts
  • 🔗 Payment links with copy-friendly display and direct links
  • 💸 Transfer details with beneficiary information
  • 📊 Transaction timeline visualization
  • 📱 Responsive design that works across different screen sizes

Features

  • Confirm Transactions (Already included)
  • Retry Failed Transactions (Automatically retry transactions with recoverable errors) [✓]
  • Retrieve Transaction History (Fetch and analyze past transactions) [✓]
  • Send Failed Hooks (Already included)
  • Generate Payment Links [✓]
  • Automated Customer Support (AI chatbot integrated with Flutterwave for transaction inquiries) [✓]
  • Manage Transfers and Beneficiaries (Already included)[✓]
  • Rich UI Components for transaction, checkout, and transfer visualizations [✓]

Available Tools

All tools now return rich UI components in addition to text responses for an enhanced user experience:

  • get-transactions: Get the final status of a transaction with a transaction ID (includes UI card)
  • resent-failed-webhook: Resend failed webhook for a transaction
  • create-checkout: Create a payment link for customers (includes UI card with clickable link)
  • disable-checkout: Disable a checkout transaction link
  • retry-transaction: Analyze and provide guidance for retrying a failed transaction
  • get-transaction-timeline: Get the timeline/history of events for a transaction (includes UI timeline)
  • get-beneficiaries: Get the list of beneficiaries for a transfer
  • get-transfers: Get the list of transfers for a customer
  • create-transfer: Create a transfer for a customer (includes UI card)
  • create-beneficiary: Create a beneficiary for transfers

Installation

Via npm (Recommended)

npm install -g mcp-flutterwave

Via GitHub

git clone https://github.com/bajoski34/mcp-flutterwave.git
cd mcp-flutterwave
npm install
npm run build

Usage with Claude Desktop

Add the following to your claude_desktop_config.json. See here for more details.

Using npm installation

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

Using local build

{
  "mcpServers": {
    "flutterwave": {
      "command": "node",
      "args": [
        "/path/to/mcp-flutterwave/build/index.js",
        "--tools=create_checkout,disable_checkout,read_transaction,resend_transaction_webhook"
      ],
      "env": {
        "FLW_SECRET_KEY": "YOUR_SECRET_KEY"
      }
    }
  }
}

Setup Steps

  1. Install the package

    npm install -g mcp-flutterwave
  2. Get your Flutterwave secret key

    • Log into your Flutterwave dashboard
    • Go to Settings > API Keys
    • Copy your Secret Key
  3. Configure Claude Desktop

    • Add the configuration to your claude_desktop_config.json
    • Replace YOUR_SECRET_KEY with your actual Flutterwave secret key
  4. Start using with Claude

    • Open Claude Desktop
    • Ask questions related to Flutterwave transactions, payments, etc.
    • Enjoy rich UI visualizations for transaction details, payment links, and transfers!

MCP-UI Compatibility

This server uses @mcp-ui/server to provide rich UI components. The UI resources are compatible with:

  • MCP Inspector: View and test UI components during development
  • Claude Desktop: (Support may vary - check MCP-UI documentation for latest compatibility)
  • Other MCP clients: Any MCP client that supports the UI resource type

UI Resource Types

The server returns UI resources with type: "resource" containing HTML content that can be rendered by compatible MCP clients. The components feature:

  • Flutterwave's brand colors and design language
  • Responsive layouts that adapt to different screen sizes
  • Interactive elements like clickable payment links
  • Status indicators with appropriate colors (success: green, pending: orange, failed: red)

Contributing

We welcome contributions! Please read our Contributing Guide for details on how to get started, development guidelines, and how to submit changes.

About

MCP Server to interact with flutterwave

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •