paymongo-mcp
Allows creating GCash/GrabPay sources, processing payments, refunds, and managing checkout sessions through the PayMongo payment gateway for the Philippines.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@paymongo-mcpCreate a payment intent for 100 PHP"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
paymongo-mcp
MCP server for PayMongo — the Philippine payment gateway. Exposes payment intents, sources, payments, refunds, checkout sessions, payment links, webhooks, payment methods, and customers as MCP tools via Basic Auth.
Tools (24)
Payments
Tool | Description |
| Create a payment intent |
| Get a payment intent by ID |
| Create a GCash/GrabPay source |
| Get a source by ID |
| Charge a source to create a payment |
| List payments (cursor pagination) |
Refunds
Tool | Description |
| Refund a payment |
| Get a refund by ID |
| List refunds (cursor pagination) |
Checkout & Links
Tool | Description |
| Create a hosted checkout session |
| Get a checkout session by ID |
| Create a no-code Payment Link |
| Get a link by ID or reference number |
| Archive / unarchive a link |
Webhooks
Tool | Description |
| Register a webhook endpoint |
| List webhooks |
| Get a webhook by ID |
| Update URL/events, enable/disable |
| Verify the |
Payment Methods & Customers
Tool | Description |
| Create a payment method (e.g. a card) |
| Get a payment method by ID |
| Create a customer |
| Get a customer by ID |
| List customers (cursor pagination) |
Related MCP server: vnpay-mcp
Quick Start
{
"mcpServers": {
"paymongo": {
"command": "npx",
"args": ["-y", "@theyahia/paymongo-mcp"],
"env": {
"PAYMONGO_SECRET_KEY": "<YOUR_PAYMONGO_SECRET_KEY>"
}
}
}
}Environment Variables
Variable | Required | Description |
| Yes | Secret API key from the PayMongo dashboard ( |
| No | Must be |
The server reads the secret key lazily — it can start and list its tools without a key set, so a missing key surfaces as a tool-call error rather than a startup crash.
Amounts
All amounts are integers in centavos (the smallest currency unit):
10000 = ₱100.00. PayMongo's minimum is typically 2000 (₱20.00) and varies by
method.
Safety: test vs live keys
PayMongo keys are either test (sk_test_…) or live (sk_live_…). To
prevent an AI agent from accidentally moving real money, the money-moving tools
(create_payment, create_refund, create_payment_intent, create_source,
create_checkout, create_link, create_payment_method) are refused when a
live key is configured unless you opt in with:
PAYMONGO_ALLOW_LIVE=trueRead-only tools (get_*, list_*) always work. Tools are also tagged with MCP
annotations (readOnlyHint / destructiveHint) so clients can auto-approve
reads and warn on destructive actions.
Webhooks
Create a webhook to receive async payment events (e.g. source.chargeable,
payment.paid):
create_webhook { "url": "https://your.app/paymongo/hook", "events": ["payment.paid", "source.chargeable"] }The response includes a per-webhook signing secret (whsk_…). Store it. When
PayMongo POSTs an event, verify the Paymongo-Signature header before
trusting the body — pass the raw request body, the header value, and the signing
secret to verify_webhook_signature:
verify_webhook_signature {
"payload": "<raw request body, exactly as received>",
"signature_header": "t=...,te=...,li=...",
"webhook_signing_secret": "whsk_...",
"mode": "test"
}It computes HMAC-SHA256(timestamp + "." + body) and compares it (timing-safe)
against the te (test) or li (live) segment. This tool runs entirely locally
and needs no API key. Pass tolerance_seconds to also reject stale timestamps
(replay protection).
Demo Prompts
"Create a payment intent for 100 PHP"
"Create a GCash source for 50 PHP with success/fail redirect URLs"
"Create a payment link for 250 PHP for 'Consulting fee'"
"List recent payments"
"Refund 25 PHP from payment pay_123"
"Register a webhook at https://example.com/hook for payment.paid"
Development
npm ci
npm run typecheck # tsc --noEmit
npm run build # tsc -> dist/
npm test # vitest
npm run dev # run from source with tsxLicense
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityBmaintenanceMCP server for Xendit payment APIs. Invoices, disbursements, balance checks, and bank transfers across Southeast Asia.6594MIT
- AlicenseBqualityDmaintenanceMCP server for VNPay payment gateway (Vietnam). Supports payment URL generation, transaction queries, refunds, tokenized payments, and IPN verification with HMAC-SHA512 signing.810MIT
- AlicenseAqualityDmaintenanceMCP server for MAIB e-commerce payments (Moldova). Supports payments, refunds, recurring billing, one-click payments, and transaction status via OAuth 2.0.813MIT
- AlicenseBqualityDmaintenanceMCP server for Payme payment system (Uzbekistan). Supports transactions, statements, payment links, and balance queries via JSON-RPC 2.0.811MIT
Related MCP Connectors
A basic MCP server to operate on the Postman API.
MCP server integrating with Stripe - tools for customers, products, payments, and more.
MCP Server for agents to onboard, pay, and provision services autonomously with InFlow
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/theYahia/paymongo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server