Cashfree MCP server allows AI tools and agents to integrate with Cashfree APIs (Payment Gateway, Payouts, and SecureID) using the Model Context Protocol (MCP).
git clone https://github.com/cashfree/cashfree-mcp.git
cd cashfree-mcp
npm install
(requires Node.js 14.x or higher)
You will need a Cashfree account with API credentials (we support both sandbox and production keys). You can use Cashfree MCP in your favorite client, some sample configurations are shown below:
Add the following configuration block to your claude_desktop_config.json
{
"mcpServers": {
"cashfree": {
"command": "node",
"args": ["/path/to/cashfree-mcp/src/index.js"],
"env": {
"PAYMENTS_APP_ID": "YOUR_PG_CLIENT_ID",
"PAYMENTS_APP_SECRET": "YOUR_PG_CLIENT_SECRET",
"PAYOUTS_APP_ID": "YOUR_PAYOUTS_CLIENT_ID",
"PAYOUTS_APP_SECRET": "YOUR_PAYOUTS_CLIENT_SECRET",
"TWO_FA_PUBLIC_KEY_PEM_PATH": "/path/to/public_key.pem",
"SECUREID_APP_ID": "YOUR_SECUREID_CLIENT_ID",
"SECUREID_APP_SECRET": "YOUR_SECUREID_CLIENT_SECRET",
"TOOLS": "pg,payouts,secureid",
"ENV": "sandbox"
}
}
}
}
Add the following configuration block to your VS Code settings
{
"mcp": {
"inputs": [],
"servers": {
"cashfree": {
"command": "node",
"args": ["/path/to/cashfree-mcp/src/index.js"],
"env": {
"PAYMENTS_APP_ID": "YOUR_PG_CLIENT_ID",
"PAYMENTS_APP_SECRET": "YOUR_PG_CLIENT_SECRET",
"PAYOUTS_APP_ID": "YOUR_PAYOUTS_CLIENT_ID",
"PAYOUTS_APP_SECRET": "YOUR_PAYOUTS_CLIENT_SECRET",
"TWO_FA_PUBLIC_KEY_PEM_PATH": "/path/to/public_key.pem",
"SECUREID_APP_ID": "YOUR_SECUREID_CLIENT_ID",
"SECUREID_APP_SECRET": "YOUR_SECUREID_CLIENT_SECRET",
"TOOLS": "pg,payouts,secureid",
"ENV": "sandbox"
}
}
}
}
}
Set the following environment variables for each service: Payment Gateway:
PAYMENTS_APP_ID
: Your Payment Gateway client IDPAYMENTS_APP_SECRET
: Your Payment Gateway client secret
Payouts:
PAYOUTS_APP_ID
: Your Payouts client IDPAYOUTS_APP_SECRET
: Your Payouts client secretTWO_FA_PUBLIC_KEY_PEM_PATH
: Path to your 2FA public key (required only if 2FA is enabled)
SecureID:
SECUREID_APP_ID
: Your SecureID client IDSECUREID_APP_SECRET
: Your SecureID client secretTWO_FA_PUBLIC_KEY_PEM_PATH
: Path to your 2FA public key (required only if 2FA is enabled)
ENV
: Set to production
for production environment, sandbox
for sandbox (default: sandbox
)
TOOLS
: Comma-separated list of modules to enable. Available options:
pg
: Payment Gateway APIspayouts
: Payouts APIssecureid
: SecureID APIs
Cashfree MCP has the following tools available, grouped by the product category
Tool Name | Description |
---|---|
search | Search across the Cashfree Payments Developer Documentation. |
create-payment-link | Create a new payment link. |
fetch-payment-link-details | View all details and status of a payment link. |
cancel-payment-link | Cancel an active payment link. No further payments can be done against cancelled links |
get-orders-for-a-payment-link | View all order details for a payment link. |
create-order | Create orders with Cashfree to get a payment_sessions_id for transactions |
get-order | Fetch order details using order_id |
get-order-extended | Get extended order data like address, cart, offers, customer details etc |
get-eligible-payment-methods | Get eligible payment methods for a given order amount and ID |
get-payments-for-an-order | View all payment details for an order. |
get-payment-by-id | View payment details of an order for a Payment ID. |
create-refund | Initiate refunds. |
get-all-refunds-for-an-order | Fetch all refunds processed against an order. |
get-refund | Fetch a specific refund processed on your Cashfree Account. |
get-all-settlements | Get all settlement details by specifying the settlement ID, settlement UTR, or date range. |
get-split-and-settlement-details-by-order-id-v2-0 | Get split and settlement details, including settled/unsettled transactions for vendors in an order |
get-settlements-by-order-id | View all the settlements of a particular order. |
get-disputes-by-order-id | Get all dispute details by Order ID |
get-disputes-by-payment-id | Get all dispute details by Payment ID |
get-disputes-by-dispute-id | Get dispute details by Dispute ID |
accept-dispute-by-dispute-id | Accept a dispute by its Dispute ID |
submit-evidence-to-contest-the-dispute-by-dispute-id | Submit evidence to contest a dispute |
simulate-payment | Simulate payment for testing. Requires prior order creation |
fetch-simulation | Fetch simulated payment details |
Tool Name | Description |
---|---|
standard-transfer-v2 | Initiate an amount transfer at Cashfree Payments. |
get-transfer-status-v2 | Get the status of an initiated transfer. |
batch-transfer-v2 | Initiate a batch transfer request at Cashfree Payments. |
get-batch-transfer-status-v2 | Get the status of an initiated batch transfer. |
authorize | Authenticate with the Cashfree system and obtain the authorization bearer token. |
create-cashgram | Create a Cashgram. |
deactivate-cashgram | Deactivate a Cashgram. |
get-cashgram-status | Get the status of a created Cashgram. |
Tool Name | Description |
---|---|
verify-name-match | Verify names with variations. |
ge 765B nerate-kyc-link | Generate a verification form for KYC information. |
get-kyc-link-status | Get the status of a KYC verification form. |
generate-static-kyc-link | Generate a static KYC link. |
deactivate-static-kyc-link | Deactivate a static KYC link. |
This project is licensed under the terms of the MIT open source license. Please refer to LICENSE for the full terms.
For detailed API documentation, visit the Cashfree API Documentation.
For support, contact care@cashfree.com or raise an issue in the GitHub repository.