rzp-mcp
v1.0.0
Published
MCP server for the Razorpay API — payments, orders, refunds, settlements
Maintainers
Readme
rzp-mcp
An MCP (Model Context Protocol) server that exposes the Razorpay API as tools for Claude and other LLM clients. Interact with your Razorpay account using natural language.
"Check if payment pay_xyz went through"
"List my last 10 orders from this month"
"Issue a ₹200 partial refund on payment pay_abc"
"What was settled to my account last week?"Tools
| Tool | Description |
|------|-------------|
| razorpay_fetch_payment | Fetch full payment details by ID |
| razorpay_payment_status | Quick status check — status, amount, captured, method |
| razorpay_capture_payment | Capture an authorized payment |
| razorpay_create_order | Create a new order |
| razorpay_fetch_order | Fetch an order by ID |
| razorpay_list_orders | List orders with date/status filters |
| razorpay_issue_refund | Issue a full or partial refund |
| razorpay_fetch_refund | Check refund status |
| razorpay_fetch_settlement | Fetch a settlement by ID |
| razorpay_list_settlements | List settlements with date filters |
Setup
1. Get your Razorpay API keys
Go to Razorpay Dashboard → Settings → API Keys and generate a key pair.
Use test mode keys (rzp_test_...) while getting started.
2. Configure Claude Desktop
Add this to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"razorpay": {
"command": "npx",
"args": ["-y", "rzp-mcp"],
"env": {
"RAZORPAY_KEY_ID": "rzp_test_xxxxxxxxxxxx",
"RAZORPAY_KEY_SECRET": "your_secret_here"
}
}
}
}Restart Claude Desktop. You should see the Razorpay tools available.
Running as HTTP server
For remote/web clients, run in HTTP mode:
RAZORPAY_KEY_ID=rzp_test_xxx RAZORPAY_KEY_SECRET=yyy npx rzp-mcp httpThis starts:
- Streamable HTTP at
http://localhost:3000/mcp(MCP spec 2025-11-25) - Legacy SSE at
http://localhost:3000/sse(backwards-compatible)
Set PORT env var to change the port (default: 3000).
Auth
Credentials are passed exclusively via environment variables — never as tool arguments.
RAZORPAY_KEY_ID=rzp_live_xxxxxxxxxxxx
RAZORPAY_KEY_SECRET=your_secret_hereThe server validates credentials at startup and exits with a clear error message if they are missing.
Amount units
Razorpay uses the smallest currency unit for all amounts:
- INR: paise (₹500.00 =
50000) - USD: cents ($10.00 =
1000)
All tool descriptions explicitly document this to prevent mistakes.
Development
git clone https://github.com/hahahamid/razorpay-mcp
cd razorpay-mcp
npm install
npm test # run unit tests
npm run build # build to dist/License
MIT
