Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AIFire in da houseCheck it out free

paystack-mcp

MCP.Pizza Chef: kohasummons

The Paystack MCP server enables AI agents to interact with Paystack's payment platform through standardized MCP clients. It supports managing products, customers, transactions, authorizations, and bank data, allowing seamless integration of Paystack services into AI workflows. This server facilitates payment processing, customer validation, and transaction data export, streamlining financial operations within AI-driven applications.

Use This MCP server To

Create and manage products in Paystack stores Handle customer creation, listing, and validation Initialize and verify payment transactions Charge payment authorizations securely Access bank and country information for payments Export transaction data for financial analysis View transaction totals for reporting

README

Paystack MCP Server

The Paystack Model Context Protocol (MCP) server allows AI agents to interact with Paystack through standardized MCP clients via tool calling. This protocol supports various tools to interact with different Paystack services.

smithery badge

Features

  • Create and manage products in your Paystack store
  • Handle customer management (create, list, update, validate)
  • Process transactions (initialize, verify, charge authorization)
  • Manage authorizations and payments
  • Access bank information and country data
  • Export transaction data and view transaction totals

Setup

Make sure to replace your_paystack_secret_key_here with your actual Paystack secret key.

Installing via Smithery

To install Paystack MCP for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @kohasummons/paystack-mcp --client claude

Manual Installation

npm install -g @kohasummons/paystack-mcp

Usage

Start the server by running:

paystack-mcp

Or use with npx in your MCP configuration:

{
  "mcpServers": {
    "paystack-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@kohasummons/paystack-mcp"
      ],
"env": {
        "PAYSTACK_SECRET_KEY": "your_paystack_secret_key_here"
      }
    }
  }
}
Using with Claude Desktop

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

{
  "mcpServers": {
    "paystack-mcp": {
      "command": "npx",
      "args": ["-y", "@kohasummons/paystack-mcp"],
      "env": {
        "PAYSTACK_SECRET_KEY": "your_paystack_secret_key_here"
      }
    }
  }
}
Using with Goose

Copy and paste the link below into a browser address bar to add this extension to goose desktop:

goose://extension?cmd=npx&arg=-y&arg=@kohasummons/paystack-mcp&id=paystack-mcp&name=Paystack%20MCP&description=process%20payments%20with%20Paystack

After installation, set your Paystack secret key in the extension settings.

Using with CLI

Install the package globally:

npm install -g @kohasummons/paystack-mcp

Set your Paystack secret key as an environment variable:

export PAYSTACK_SECRET_KEY=your_paystack_secret_key_here  # For macOS/Linux
# OR
set PAYSTACK_SECRET_KEY=your_paystack_secret_key_here     # For Windows

Start the server by running:

paystack-mcp

Or use with NPX directly:

PAYSTACK_SECRET_KEY=your_paystack_secret_key_here npx -y @kohasummons/paystack-mcp
Using with Cursor

Add this to your Cursor MCP configuration:

{
  "mcpServers": {
    "paystack-mcp": {
      "command": "npx",
      "args": ["-y", "@kohasummons/paystack-mcp"],
      "env": {
        "PAYSTACK_SECRET_KEY": "your_paystack_secret_key_here"
      }
    }
  }
}
Using with Docker

You can run the Paystack MCP server via Docker:

Build the image

docker-compose build

Run as a standalone server

docker-compose up -d

Use with Cursor

Add to your .cursor/mcp.json:

{
  "mcpServers": {
    "paystack-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e", 
        "PAYSTACK_SECRET_KEY=your_paystack_secret_key_here",
        "kohasummons/paystack-mcp"
      ]
    }
  }
}

Use with Claude Desktop

{
  "mcpServers": {
    "paystack-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e", 
        "PAYSTACK_SECRET_KEY=your_paystack_secret_key_here",
        "kohasummons/paystack-mcp"
      ]
    }
  }
}

See DOCKER.md for detailed Docker instructions.

Tools

Products

Tool Description Example Prompt
create_product Create a new product "Create a new product called 'Premium Plan' with a price of 5000 naira"
list_products List all products "Show me all the products in my Paystack store"
get_product Get details of a specific product "Get the details of product ID 12345"
update_product Update an existing product's details "Update the price of product ID 12345 to 6000 naira"

Customers

Tool Description Example Prompt
create_customer Create a new customer "Create a new customer with email john@example.com"
list_customers List all customers "Show me all my customers"
get_customer Get details of a specific customer "Get the details for customer with email john@example.com"
update_customer Update a customer's details "Update John Doe's phone number to +2341234567890"
validate_customer Validate a customer's identity with their bank account "Verify customer CUS_123 with their bank account details"
set_customer_risk_action Whitelist or blacklist a customer "Blacklist customer CUS_123 from making transactions"

Transactions

Tool Description Example Prompt
initialize_transaction Initialize a payment transaction "Start a new payment of 5000 naira for customer john@example.com"
verify_transaction Verify the status of a transaction "Check the status of transaction with reference TR_123456"
fetch_transaction Get details of a transaction "Get details of transaction ID 12345"
list_transactions List transactions with various filters "Show me all successful transactions in the last month"
charge_authorization Charge a previously authorized card "Charge customer john@example.com 5000 naira using their saved card"
partial_debit Charge a partial amount from authorized card "Charge a partial amount of 3000 naira from john@example.com's saved card"
deactivate_authorization Deactivate a payment authorization "Remove the saved card with authorization code AUTH_123"
transaction_totals Get total amount received on your account "What's the total amount received in my account last month?"
export_transactions Export a list of transactions "Export all my transactions from January 2023"

Banking Information

Tool Description Example Prompt
list_banks Get a list of banks supported by Paystack "Show me all supported banks in Nigeria"
list_countries Get a list of countries supported by Paystack "Which countries does Paystack support?"
list_states Get a list of states for a country "List all states in Nigeria for address verification"

Contributing

We welcome contributions to help improve this project and implement the remaining Paystack API endpoints! There are many more Paystack features that could be added as tools, including:

  • Payment Pages
  • Subaccounts
  • Plans
  • Subscriptions
  • Apple Pay
  • Virtual Accounts
  • Invoices
  • Refunds
  • And more!

See CONTRIBUTING.md for detailed instructions on how to contribute, including:

  • Setting up your development environment
  • Guide for implementing new tools
  • Code style guidelines
  • Pull request process

Development

To work on this project:

  1. Clone the repository
  2. Install dependencies: npm install
  3. Build the project: npm run build
  4. Run the Inspector: npm run dev:debug

You'll need to set up your Paystack secret key as an environment variable:

# Create a .env file in the project root
echo "PAYSTACK_SECRET_KEY=your_paystack_secret_key_here" > .env

Debugging

To debug your server, you can use the MCP Inspector.

First build the server

npm run build

Run the following command in your terminal:

# Start MCP Inspector and server
npm run dev:debug

Add your PAYSTACK_SECRET_KEY to the enviroment variable in the Inspector UI. Debug away!

Docker Support

See DOCKER.md for details on building and running with Docker.

License

MIT

paystack-mcp FAQ

How do I authenticate the Paystack MCP server?
You authenticate by providing your Paystack secret key in the server configuration.
Can the Paystack MCP server handle customer management?
Yes, it supports creating, listing, updating, and validating customers.
Does the server support transaction verification?
Yes, it can initialize, verify, and charge payment transactions.
How do I install the Paystack MCP server?
You can install it via Smithery or manually by following the GitHub instructions.
Can I export transaction data using this MCP server?
Yes, it supports exporting transaction data for analysis or reporting.
Is it possible to access bank and country data through this server?
Yes, the server provides access to bank information and country data relevant to payments.
What tools does the Paystack MCP server support?
It supports various tools for product management, customer handling, transaction processing, and payment authorizations.
How does the Paystack MCP server integrate with AI agents?
AI agents interact with Paystack services via standardized MCP clients using tool calling.