paystack-mcp-server
README.md
# MCP Paystack Server
This project is a **ModelContextProtocol (MCP)** compatible server for Paystack, enabling you to interact with your Paystack account using MCP tools and LLMs. It is built with **Node.js**, **TypeScript*
## 🔧 Features
- **`get-total-transactions`**: Get the total number and amount of all your Paystack transactions.
- **`create-checkout-link`**: Instantly generate a Paystack payment link for a customer to pay a specified amount.
- **`verify-transaction`**: Verify the status of a transaction using its reference code.
## 📦 Installation
```bash
git clone "https://github.com/JohnnieEmmanuel/paystack-mcp-server.git"
cd <project-folder>
npm install
```
## 🚀 Usage
### Build the project:
```bash
npm run build
```
### Run the server:
```bash
node build/index.js
```
> Ensure the MCP consumer you're connecting to is set up to use STDIO transport.
## 🛠 Tools
### 1️⃣ `get-total-transactions`
Fetches the total number and amount of all your Paystack transactions.
**Input:**
```json
{
"apiKey": "sk_test_xxx"
}
```
**Output (MCP):**
* Text block summarizing total transactions and total amount.
---
### 2️⃣ `create-checkout-link`
Generates a Paystack payment link for a customer.
**Input:**
```json
{
"apiKey": "sk_test_xxx",
"amount": 5000,
"email": "customer@email.com",
"metadata": { "orderId": "1234" }
}
```
*Amount is in Naira (₦).*
**Output (MCP):**
* The payment/checkout link URL.
---
### 3️⃣ `verify-transaction`
Verifies a transaction by its reference code.
**Input:**
```json
{
"apiKey": "sk_test_xxx",
"reference": "transaction_ref"
}
```
**Output (MCP):**
* Status and details of the transaction.
---
## 🧱 Tech Stack
* **Node.js** + **TypeScript**
* **Zod** for schema validation
* **node-fetch** for HTTP requests
* **MCP SDK** for server integration and transport
---
## 📄 License
MIT License
---
## 🧠 Credits
Built by [John Emmanuel || Red John || https://github.com/JohnnieEmmanuel]
---
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues