npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

magpie-mcp-server

v2.0.3

Published

Model Context Protocol server for Magpie Payment Platform APIs. Enables AI agents to process payments, create checkout sessions, manage payment requests, and handle payment links.

Readme

Magpie MCP Server

A Model Context Protocol (MCP) server that gives AI agents access to Magpie Payment Platform APIs. Connect your Magpie account to Claude Desktop, OpenClaw, or any MCP-compatible AI agent to process payments, create checkout sessions, send invoices, and manage payment links through natural conversation.

Overview

The Magpie MCP Server exposes all four Magpie APIs as AI-ready tools:

| API | What it does | |-----|-------------| | Payments | Create payment sources, process charges, manage refunds | | Checkout Sessions | Create hosted checkout pages for collecting payments | | Payment Requests | Send invoice-style payment requests via email or SMS | | Payment Links | Create and manage shareable payment links |

Supported Payment Methods

  • Card — Credit/debit cards with 3D Secure authentication
  • GCash — GCash digital wallet (Philippines)
  • Maya / PayMaya — Maya digital wallet (Philippines)
  • QR PH — QR PH unified QR code payments (Philippines)
  • Alipay — Alipay international
  • UnionPay — UnionPay international
  • WeChat Pay — WeChat Pay

Not all payment methods are available on all APIs. See Payment Methods by API for details.

Getting Started

There are two ways to connect to the Magpie MCP Server:

Option A: Hosted Server (Recommended)

Connect to Magpie's hosted MCP server. No installation required — your Magpie API keys are set up securely through an OAuth flow in your browser.

Requirements: Node.js 18+ (for mcp-remote)

Claude Desktop configuration:

Edit your config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "magpie": {
      "command": "npx",
      "args": ["mcp-remote", "https://mcp.magpie.im/mcp"]
    }
  }
}

Restart Claude Desktop. On first launch, your browser will open to complete setup:

  1. Register — your AI client registers with the server automatically
  2. Enter Magpie API Keys — paste your Public Key and Secret Key
  3. Authorize — grant the AI agent access to your Magpie account

That's it. Your keys are stored securely on the server. On future launches, the connection is automatic.

Option B: Self-Hosted

Run the MCP server locally on your machine. Your API keys are provided as environment variables.

Requirements: Node.js 18+, Magpie API credentials

Claude Desktop configuration:

{
  "mcpServers": {
    "magpie": {
      "command": "npx",
      "args": ["-y", "magpie-mcp-server"],
      "env": {
        "MAGPIE_PUBLIC_KEY": "your_public_key_here",
        "MAGPIE_SECRET_KEY": "your_secret_key_here"
      }
    }
  }
}

Restart Claude Desktop. The server starts automatically.

Alternative: Global Install

For faster startup or offline use:

npm install -g magpie-mcp-server

Then use this config:

{
  "mcpServers": {
    "magpie": {
      "command": "magpie-mcp-server",
      "env": {
        "MAGPIE_PUBLIC_KEY": "your_public_key_here",
        "MAGPIE_SECRET_KEY": "your_secret_key_here"
      }
    }
  }
}

Authentication

Magpie uses a dual-key authentication system:

  • Public Key (MAGPIE_PUBLIC_KEY) — Used only for creating payment sources. Safe for client-side use.
  • Secret Key (MAGPIE_SECRET_KEY) — Used for all other operations (charges, checkout, invoices, links). Must be kept secure.

The MCP server automatically uses the right key for each operation.

Hosted mode: Your keys are entered once through the browser-based OAuth flow and stored securely on the server. No keys in config files.

Self-hosted mode: Keys are provided as environment variables in your Claude Desktop config or a .env file.

Available Tools

The server provides 33 tools organized across 6 categories.

Payment Sources

| Tool | Description | |------|-------------| | create_source | Create a payment source (card, gcash, maya, bpi, alipay, unionpay, wechat) | | get_source | Retrieve payment source details by ID |

Customers

| Tool | Description | |------|-------------| | create_customer | Create a customer record for recurring charges | | get_customer | Retrieve customer details by ID | | update_customer | Update customer details (mobile, description, metadata) | | get_customer_by_email | Look up a customer by email address | | attach_source_to_customer | Attach a payment source to a customer | | detach_source_from_customer | Remove a payment source from a customer |

Payment Charges

| Tool | Description | |------|-------------| | create_charge | Create a payment charge using a source. Amount in cents (e.g., 5000 = PHP 50.00) | | get_charge | Retrieve charge details by ID | | list_charges | List all charges with pagination | | capture_charge | Capture a previously authorized charge | | void_charge | Void an authorized charge before capture | | refund_charge | Refund a captured charge (full or partial) | | verify_charge | Verify a charge using confirmation ID and OTP |

Checkout Sessions

| Tool | Description | |------|-------------| | create_checkout_session | Create a hosted checkout page with line items and payment methods | | get_checkout_session | Retrieve checkout session details | | list_checkout_sessions | List all checkout sessions | | expire_checkout_session | Manually expire an active session | | capture_checkout_session | Capture an authorized checkout session |

Payment Requests

| Tool | Description | |------|-------------| | create_payment_request | Create an invoice-style payment request sent via email or SMS | | get_payment_request | Retrieve payment request details | | list_payment_requests | List payment requests with status filters (open, paid, voided) | | void_payment_request | Void a payment request with a reason | | resend_payment_request | Resend a payment request to the customer |

Payment Links

| Tool | Description | |------|-------------| | create_payment_link | Create a shareable payment link with line items | | get_payment_link | Retrieve payment link details | | list_payment_links | List payment links with status filters (active, deactivated) | | update_payment_link | Update payment link settings | | activate_payment_link | Reactivate a deactivated payment link | | deactivate_payment_link | Deactivate an active payment link |

Available Resources

The server provides API documentation and OpenAPI schemas that AI agents can read for context:

| URI | Description | |-----|-------------| | magpie://api/payments/schema | Payments API OpenAPI specification | | magpie://api/checkout/schema | Checkout Sessions API OpenAPI specification | | magpie://api/requests/schema | Payment Requests API OpenAPI specification | | magpie://api/links/schema | Payment Links API OpenAPI specification | | magpie://api/documentation | Comprehensive documentation for all Magpie APIs |

Payment Methods by API

Not all payment methods are available on every API:

| Method | Payments | Checkout | Requests | Links | |--------|----------|----------|----------|-------| | Card | Yes | Yes | Yes | Yes | | GCash | Yes | Yes | Yes | Yes | | Maya / PayMaya | Yes | Yes | Yes | Yes | | BPI | Yes | Yes | — | — | | Alipay | Yes | Yes | — | — | | UnionPay | Yes | Yes | — | — | | WeChat Pay | Yes | Yes | — | — | | QR PH | Yes | — | — | — |

Example Usage

Once connected, you can interact with Magpie through natural conversation with your AI agent:

Create a Checkout Session

"Create a checkout session for a product called 'Premium Plan' at PHP 999.00. Accept GCash and card payments. Redirect to https://mysite.com/success on completion."

The AI agent will call create_checkout_session with the right parameters and return the checkout URL.

Send a Payment Request

"Send an invoice to [email protected] for PHP 2,500.00 for 'Website Design Services'. Send it via email."

The agent will call create_payment_request with email delivery and return the payment request details.

Create a Payment Link

"Create a payment link for 'Monthly Subscription' at PHP 499.00 per month. Accept card and Maya."

The agent will call create_payment_link and return the shareable URL.

Check Payment Status

"What's the status of charge chr_abc123?"

The agent will call get_charge and report whether the charge is pending, paid, refunded, etc.

Refund a Payment

"Refund PHP 200.00 from charge chr_abc123."

The agent will call refund_charge with a partial refund amount.

Configuration Reference

For self-hosted mode, the following environment variables are available:

| Variable | Required | Default | Description | |----------|----------|---------|-------------| | MAGPIE_PUBLIC_KEY | Yes | — | Magpie public API key | | MAGPIE_SECRET_KEY | Yes | — | Magpie secret API key | | MAGPIE_TEST_MODE | No | false | Enable test mode | | MAGPIE_PAYMENTS_BASE_URL | No | https://api.magpie.im | Payments API base URL | | MAGPIE_CHECKOUT_BASE_URL | No | https://api.pay.magpie.im | Checkout API base URL | | MAGPIE_REQUESTS_BASE_URL | No | https://request.magpie.im/api | Payment Requests API base URL | | MAGPIE_LINKS_BASE_URL | No | https://buy.magpie.im/api | Payment Links API base URL |

You can also create a .env file in your project directory with these values.

Troubleshooting

Claude Desktop doesn't show Magpie tools

  • Make sure you restarted Claude Desktop completely after updating the config
  • Check that the config JSON syntax is valid (no trailing commas, proper quoting)
  • For npx: ensure you have internet connectivity on first run
  • Check Claude Desktop logs for error messages

"Command not found" errors

  • Verify Node.js 18+ is installed: node --version
  • For npx issues, try the global install approach instead
  • On macOS with NVM, use the full path to npx in the config:
    {
      "command": "/Users/yourname/.nvm/versions/node/v22.16.0/bin/npx",
      "args": ["-y", "magpie-mcp-server"],
      "env": {
        "PATH": "/Users/yourname/.nvm/versions/node/v22.16.0/bin:/usr/bin:/bin"
      }
    }

Hosted server: OAuth flow not completing

  • Delete the cached auth state and retry: rm -rf ~/.mcp-auth/
  • Check that your browser isn't blocking popups from localhost
  • Try a different browser if the redirect isn't working

API authentication errors

  • Verify your Magpie API credentials are valid and active
  • Check that you're using the correct test/live mode
  • For hosted mode: re-enter your keys by deleting ~/.mcp-auth/ and reconnecting

Payment processing errors

  • Amounts are in cents (e.g., 5000 = PHP 50.00)
  • Check that the payment method is supported for the API you're using
  • Enable test mode for development testing
  • Review the error message — the server returns specific details from Magpie's API

License

MIT License — see LICENSE file for details.

Support