Skip to main content
Glama
theYahia

paymongo-mcp

by theYahia

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_payment_intent

Create a payment intent

get_payment_intent

Get a payment intent by ID

create_source

Create a GCash/GrabPay source

get_source

Get a source by ID

create_payment

Charge a source to create a payment

list_payments

List payments (cursor pagination)

Refunds

Tool

Description

create_refund

Refund a payment

get_refund

Get a refund by ID

list_refunds

List refunds (cursor pagination)

Tool

Description

create_checkout

Create a hosted checkout session

get_checkout

Get a checkout session by ID

create_link

Create a no-code Payment Link

get_link

Get a link by ID or reference number

archive_link

Archive / unarchive a link

Webhooks

Tool

Description

create_webhook

Register a webhook endpoint

list_webhooks

List webhooks

get_webhook

Get a webhook by ID

update_webhook

Update URL/events, enable/disable

verify_webhook_signature

Verify the Paymongo-Signature header locally (no API call)

Payment Methods & Customers

Tool

Description

create_payment_method

Create a payment method (e.g. a card)

get_payment_method

Get a payment method by ID

create_customer

Create a customer

get_customer

Get a customer by ID

list_customers

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

PAYMONGO_SECRET_KEY

Yes

Secret API key from the PayMongo dashboard (sk_test_… or sk_live_…).

PAYMONGO_ALLOW_LIVE

No

Must be "true" to allow money-moving tools when a live key is used (see Safety).

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=true

Read-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 tsx

License

MIT

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

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

  • A
    license
    B
    quality
    D
    maintenance
    MCP server for VNPay payment gateway (Vietnam). Supports payment URL generation, transaction queries, refunds, tokenized payments, and IPN verification with HMAC-SHA512 signing.
    8
    10
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for MAIB e-commerce payments (Moldova). Supports payments, refunds, recurring billing, one-click payments, and transaction status via OAuth 2.0.
    8
    13
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    MCP server for Payme payment system (Uzbekistan). Supports transactions, statements, payment links, and balance queries via JSON-RPC 2.0.
    8
    11
    MIT

View all related MCP servers

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

View all MCP Connectors

Latest Blog Posts

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