home / mcp / paddle mcp server

Paddle MCP Server

Interact with the Paddle API using AI assistants like Claude, or in AI-powered IDEs like Cursor. Manage product catalog, billing and subscriptions, and reports.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "paddlehq-paddle-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@paddle/paddle-mcp",
        "--api-key",
        "YOUR_API_KEY",
        "--environment",
        "sandbox",
        "--tools",
        "non-destructive"
      ],
      "env": {
        "PADDLE_API_KEY": "YOUR_API_KEY",
        "PADDLE_MCP_TOOLS": "non-destructive",
        "PADDLE_ENVIRONMENT": "sandbox"
      }
    }
  }
}

This MCP server enables AI assistants and agents to interact with Paddle Billing through a rich set of tools. You can manage products, prices, customers, subscriptions, transactions, reports, and more directly from conversation, enabling automated workflows and quick troubleshooting.

How to use

You connect your MCP client to the Paddle MCP server using an MCP URL or a local stdio setup. Once connected, you can call tools to perform actions such as listing products, creating a product, updating a price, or generating an invoice PDF. You can combine multiple actions in a single conversational flow to automate common Paddle Billing tasks, for example creating a subscription, adding a customer address, and previewing a transaction before finalizing it.

How to install

Prerequisites you need before installing:
- Node.js and npm or npx installed on your machine
- Access to Paddle Billing with an API key for sandbox or production environments
- An MCP client capable of loading an MCP server via one of the supported installation methods

Configuration and usage notes

To run the Paddle MCP server through a client, configure the MCP settings with either command-line arguments or environment variables shown below. You must replace your_api_key with your actual Paddle API key and set the environment to sandbox or production. You can also filter which tools are loaded by selecting non-destructive, read-only, or all tools.

{
  "mcpServers": {
    "paddle": {
      "command": "npx",
      "args": [
        "-y",
        "@paddle/paddle-mcp",
        "--api-key=your_api_key",
        "--environment=sandbox",
        "--tools=non-destructive"
      ]
    }
  }
}

Security and keys

Keep your Paddle API key secure. Do not share it in public scripts or repositories. Use environment variables or secret management features of your deployment platform when possible.

Troubleshooting

If you encounter connection issues, verify that the API key is valid for the selected environment and that your MCP client is configured to load the Paddle MCP server. Check that the environment is set to sandbox or production and that the required tools are loaded.

Examples of common tasks

- List all products in your Paddle catalog and inspect their prices.

Available tools

list_products

List all products in the Paddle catalog (read-only)

create_product

Create a new product in Paddle (writes data)

get_product

Retrieve details for a specific product (read-only)

update_product

Update product details (writes data)

list_prices

List all prices for products (read-only)

create_price

Create a new price for a product (writes data)

get_price

Get details for a specific price (read-only)

update_price

Update a price (writes data)

preview_prices

Preview how new prices would apply (writeable preview)

list_discounts

List discount campaigns (read-only)

create_discount

Create a new discount (writes data)

get_discount

Get details of a discount (read-only)

update_discount

Update a discount (writes data)

list_discount_groups

List discount groups (read-only)

create_discount_group

Create a new discount group (writes data)

get_discount_group

Get a discount group (read-only)

update_discount_group

Update a discount group (writes data)

archive_discount_group

Archive a discount group (writes data)

list_customers

List customers (read-only)

create_customer

Create a new customer (writes data)

get_customer

Get customer details (read-only)

update_customer

Update customer details (writes data)

list_credit_balances

List credit balances for a customer (read-only)

list_addresses

List addresses for a customer (read-only)

create_address

Create an address for a customer (writes data)

get_address

Get a customer's address (read-only)

update_address

Update a customer's address (writes data)

list_businesses

List businesses for a customer (read-only)

create_business

Create a business for a customer (writes data)

get_business

Get a business for a customer (read-only)

update_business

Update a customer's business (writes data)

list_transactions

List transactions (read-only)

create_transaction

Create a transaction (writes data)

get_transaction

Get a transaction (read-only)

update_transaction

Update a transaction (writes data)

preview_transaction_create

Preview a new transaction creation (read/write preview)

revise_transaction

Revise customer information on a billed or completed transaction (writes data)

get_transaction_invoice

Get a PDF invoice for a transaction (read-only)

list_adjustments

List financial adjustments (read-only)

create_adjustment

Create an adjustment (writes data)

get_adjustment_credit_note

Get a PDF credit note for an adjustment (read-only)

list_subscriptions

List subscriptions (read-only)

get_subscription

Get a subscription (read-only)

update_subscription

Update a subscription (writes data)

cancel_subscription

Cancel a subscription (writes data)

pause_subscription

Pause a subscription (writes data)

resume_subscription

Resume a paused subscription (writes data)

activate_subscription

Activate a trialing subscription (writes data)

preview_subscription_update

Preview an update to a subscription (read/write preview)

create_subscription_charge

Create a one-time charge for a subscription (writes data)

preview_subscription_charge

Preview a one-time charge for a subscription (read/write preview)

list_saved_payment_methods

List payment methods saved for a customer (read-only)

get_saved_payment_method

Get a saved payment method (read-only)

delete_saved_payment_method

Delete a saved payment method (writes data)

create_customer_portal_session

Create a customer portal session (write operation)

list_notification_settings

List notification settings (read-only)

create_notification_setting

Create a notification setting (writes data)

get_notification_setting

Get a notification setting (read-only)

update_notification_setting

Update a notification setting (writes data)

delete_notification_setting

Delete a notification setting (writes data)

list_events

List events (read-only)

list_notifications

List notifications (read-only)

get_notification

Get a notification (read-only)

replay_notification

Replay a notification (writes data)

list_notification_logs

List logs for a notification (read-only)

list_simulations

List simulations (read-only)

create_simulation

Create a simulation (writes data)

get_simulation

Get a simulation (read-only)

update_simulation

Update a simulation (writes data)

list_simulation_runs

List runs for a simulation (read-only)

create_simulation_run

Create a run for a simulation (writes data)

get_simulation_run

Get a run for a simulation (read-only)

list_simulation_run_events

List events for a simulation run (read-only)

get_simulation_run_event

Get an event for a simulation run (read-only)

replay_simulation_run_event

Replay an event for a simulation run (writes data)

list_reports

List reports (read-only)

create_report

Create a report (writes data)

get_report

Get a report (read-only)

get_report_csv

Get a CSV file for a report (read-only)