Runs on your machine from its package; the steps are below.
At most: moves money, runs code or commands, deletes data, or sends messages for you.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y payfast-mcp
MCP client config
{
"mcpServers": {
"payfast": {
"command": "npx",
"args": [
"-y",
"payfast-mcp"
]
}
}
}A Model Context Protocol (MCP) server for PayFast, South Africa's leading payment gateway. Enables AI assistants like Claude to securely interact with your PayFast merchant account.
| Tool | Description | Risk |
|---|---|---|
ping | Test API connectivity | Low |
transaction_fetch | Get transaction by ID | Low |
transaction_history | Query transaction history | Low |
transaction_charge | Charge a stored token | Medium |
subscription_fetch | Get subscription details | Low |
subscription_pause | Pause a subscription | High |
subscription_unpause | Resume a subscription | Medium |
subscription_cancel | Cancel a subscription | High |
subscription_update | Update subscription terms | High |
subscription_adhoc | Ad-hoc subscription charge | High |
refund_create | Process a refund | High |
refund_fetch | Get refund details | Low |
creditcard_fetch | Query card transaction | Low |
High-risk operations require human approval before execution.
npm install -g payfast-mcp
Or run directly with npx:
npx payfast-mcp
Set the following environment variables:
| Variable | Required | Description |
|---|---|---|
PAYFAST_MERCHANT_ID | Yes | Your PayFast Merchant ID |
PAYFAST_MERCHANT_KEY | Yes | Your PayFast Merchant Key |
PAYFAST_PASSPHRASE | Yes | Your PayFast API Passphrase |
PAYFAST_ENVIRONMENT | No | sandbox (default) or production |
You can also create a .env file in your working directory.
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"payfast": {
"command": "npx",
"args": ["-y", "payfast-mcp"],
"env": {
"PAYFAST_MERCHANT_ID": "your-merchant-id",
"PAYFAST_MERCHANT_KEY": "your-merchant-key",
"PAYFAST_PASSPHRASE": "your-passphrase",
"PAYFAST_ENVIRONMENT": "sandbox"
}
}
}
}
Add to your Claude Code settings:
claude mcp add payfast \
-e PAYFAST_MERCHANT_ID=your-merchant-id \
-e PAYFAST_MERCHANT_KEY=your-merchant-key \
-e PAYFAST_PASSPHRASE=your-passphrase \
-e PAYFAST_ENVIRONMENT=sandbox \
-- npx -y payfast-mcp
Add to your Cursor MCP config (.cursor/mcp.json for project-level, or ~/.cursor/mcp.json for global):
{
"mcpServers": {
"payfast": {
"command": "npx",
"args": ["-y", "payfast-mcp"],
"env": {
"PAYFAST_MERCHANT_ID": "your-merchant-id",
"PAYFAST_MERCHANT_KEY": "your-merchant-key",
"PAYFAST_PASSPHRASE": "your-passphrase",
"PAYFAST_ENVIRONMENT": "sandbox"
}
}
}
}
Add via the Codex CLI:
codex mcp add payfast \
--env PAYFAST_MERCHANT_ID=your-merchant-id \
--env PAYFAST_MERCHANT_KEY=your-merchant-key \
--env PAYFAST_PASSPHRASE=your-passphrase \
--env PAYFAST_ENVIRONMENT=sandbox \
-- npx -y payfast-mcp
Or add directly to ~/.codex/config.toml:
[mcp_servers.payfast]
command = "npx"
args = ["-y", "payfast-mcp"]
[mcp_servers.payfast.env]
PAYFAST_MERCHANT_ID = "your-merchant-id"
PAYFAST_MERCHANT_KEY = "your-merchant-key"
PAYFAST_PASSPHRASE = "your-passphrase"
PAYFAST_ENVIRONMENT = "sandbox"
# Clone the repo
git clone https://github.com/jpbester/payfast-mcp.git
cd payfast-mcp
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Run with MCP Inspector
npm run inspect
MIT