https://github.com/cashfree/cashfree-mcp
https://github.com/cashfree/cashfree-mcp
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/cashfree/cashfree-mcp
- Owner: cashfree
- License: other
- Created: 2025-04-28T07:04:08.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-06-29T14:49:04.000Z (3 months ago)
- Last Synced: 2025-06-29T15:35:36.676Z (3 months ago)
- Language: JavaScript
- Size: 562 KB
- Stars: 8
- Watchers: 5
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Cashfree MCP Server
Cashfree MCP server allows AI tools and agents to integrate with [Cashfree](https://www.cashfree.com/) APIs (Payment Gateway, Payouts, and SecureID) using the [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction).
## Setup
### Clone the Repository
```bash
git clone https://github.com/cashfree/cashfree-mcp.git
cd cashfree-mcp
```### Install Dependencies
```bash
npm install
```(requires Node.js 14.x or higher)
## Configuration
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:
### Claude
Add the following configuration block to your `claude_desktop_config.json`
```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"
}
}
}
}
```### VS Code
Add the following configuration block to your VS Code settings
```json
{
"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"
}
}
}
}
}
```### API Credentials
Set the following environment variables for each service:
**Payment Gateway:**- `PAYMENTS_APP_ID`: Your Payment Gateway client ID
- `PAYMENTS_APP_SECRET`: Your Payment Gateway client secret**Payouts:**
- `PAYOUTS_APP_ID`: Your Payouts client ID
- `PAYOUTS_APP_SECRET`: Your Payouts client secret
- `TWO_FA_PUBLIC_KEY_PEM_PATH`: Path to your 2FA public key (required only if 2FA is enabled)**SecureID:**
- `SECUREID_APP_ID`: Your SecureID client ID
- `SECUREID_APP_SECRET`: Your SecureID client secret
- `TWO_FA_PUBLIC_KEY_PEM_PATH`: Path to your 2FA public key (required only if 2FA is enabled)### Environment
`ENV`: Set to `production` for production environment, `sandbox` for sandbox (default: `sandbox`)
### Tools Configuration
`TOOLS`: Comma-separated list of modules to enable. Available options:
- `pg`: Payment Gateway APIs
- `payouts`: Payouts APIs
- `secureid`: SecureID APIs## Tools
Cashfree MCP has the following tools available, grouped by the product category
### Payment Gateway (PG)
| 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 |### Payouts
| 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. |### SecureID
| Tool Name | Description |
| ------------------------------ | ------------------------------------------------- |
| **verify-name-match** | Verify names with variations. |
| **generate-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. |## License
This project is licensed under the terms of the MIT open source license. Please refer to LICENSE for the full terms.
## Documentation
For detailed API documentation, visit the [Cashfree API Documentation](https://docs.cashfree.com/reference/).
## Support
For support, contact [care@cashfree.com](mailto:care@cashfree.com) or raise an issue in the [GitHub repository](https://github.com/cashfree/cashfree-mcp).