Paddle Billing

Berinteraksi dengan API Paddle Billing untuk mengelola produk, harga, pelanggan, transaksi, dan langganan.

Dokumentasi

MCP Server for Paddle Billing

Paddle Billing is the developer-first merchant of record. We take care of payments, tax, subscriptions, and metrics with one unified API that does it all.

This is a Model Context Protocol (MCP) server that provides LLMs and AI agents with tools for interacting with the Paddle API.

Important: This MCP server works with Paddle Billing. It does not support Paddle Classic. To work with Paddle Classic, see: Paddle Classic API reference

Install in Cursor

Features

The MCP server has near parity with the Paddle API, allowing AI assistants and agents to:

  • Manage your full Paddle catalog
  • View customer, purchase, and provisioning information
  • Handle subscription, payment, and refund workflows
  • Debug billing and order management issues
  • Create and adjust transactions directly in conversation
  • Generate financial reports for financial and operational insights
  • Implement and test Paddle integrations faster

Available tools

The MCP server can use the following tools to take actions with your Paddle account:

Products
OperationToolNon-destructiveRead only
List productslist_products✅✅
Create a productcreate_product✅❌
Get a productget_product✅✅
Update a productupdate_product❌❌
Prices
OperationToolNon-destructiveRead only
List priceslist_prices✅✅
Create a pricecreate_price✅❌
Get a priceget_price✅✅
Update a priceupdate_price❌❌
Preview pricespreview_prices✅❌
Discounts
OperationToolNon-destructiveRead only
List discountslist_discounts✅✅
Create a discountcreate_discount✅❌
Get a discountget_discount✅✅
Update a discountupdate_discount❌❌
Discount Groups
OperationToolNon-destructiveRead only
List discount groupslist_discount_groups✅✅
Create a discount groupcreate_discount_group✅❌
Get a discount groupget_discount_group✅✅
Update a discount groupupdate_discount_group❌❌
Archive a discount grouparchive_discount_group❌❌
Customers
OperationToolNon-destructiveRead only
List customerslist_customers✅✅
Create a customercreate_customer✅❌
Get a customerget_customer✅✅
Update a customerupdate_customer❌❌
List credit balances for a customerlist_credit_balances✅✅
Addresses
OperationToolNon-destructiveRead only
List addresses for a customerlist_addresses✅✅
Create an address for a customercreate_address✅❌
Get an address for a customerget_address✅✅
Update an address for a customerupdate_address❌❌
Businesses
OperationToolNon-destructiveRead only
List businesses for a customerlist_businesses✅✅
Create a business for a customercreate_business✅❌
Get a business for a customerget_business✅✅
Update a business for a customerupdate_business❌❌
Transactions
OperationToolNon-destructiveRead only
List transactionslist_transactions✅✅
Create a transactioncreate_transaction✅❌
Get a transactionget_transaction✅✅
Update a transactionupdate_transaction❌❌
Preview a transactionpreview_transaction_create✅❌
Revise customer information on a billed or completed transactionrevise_transaction❌❌
Get a PDF invoice for a transactionget_transaction_invoice✅✅
Adjustments
OperationToolNon-destructiveRead only
List adjustmentslist_adjustments✅✅
Create an adjustmentcreate_adjustment✅❌
Get a PDF credit note for an adjustmentget_adjustment_credit_note✅✅
Subscriptions
OperationToolNon-destructiveRead only
List subscriptionslist_subscriptions✅✅
Get a subscriptionget_subscription✅✅
Update a subscriptionupdate_subscription❌❌
Cancel a subscriptioncancel_subscription❌❌
Pause a subscriptionpause_subscription❌❌
Resume a paused subscriptionresume_subscription❌❌
Activate a trialing subscriptionactivate_subscription❌❌
Preview an update to a subscriptionpreview_subscription_update✅❌
Create a one-time charge for a subscriptioncreate_subscription_charge✅❌
Preview a one-time charge for a subscriptionpreview_subscription_charge✅❌
Saved Payment Methods
OperationToolNon-destructiveRead only
List payment methods saved for a customerlist_saved_payment_methods✅✅
Get a payment method saved for a customerget_saved_payment_method✅✅
Delete a payment method saved for a customerdelete_saved_payment_method❌❌
Customer Portal Sessions
OperationToolNon-destructiveRead only
Create a customer portal sessioncreate_customer_portal_session✅❌
Notification Settings
OperationToolNon-destructiveRead only
List notification settingslist_notification_settings✅✅
Create a notification settingcreate_notification_setting✅❌
Get a notification settingget_notification_setting✅✅
Update a notification settingupdate_notification_setting❌❌
Delete a notification settingdelete_notification_setting❌❌
Events
OperationToolNon-destructiveRead only
List eventslist_events✅✅
Notifications
OperationToolNon-destructiveRead only
List notificationslist_notifications✅✅
Get a notificationget_notification✅✅
Replay a notificationreplay_notification✅❌
Notification Logs
OperationToolNon-destructiveRead only
List logs for a notificationlist_notification_logs✅✅
Simulations
OperationToolNon-destructiveRead only
List simulationslist_simulations✅✅
Create a simulationcreate_simulation✅❌
Get a simulationget_simulation✅✅
Update a simulationupdate_simulation❌❌
Simulation Runs
OperationToolNon-destructiveRead only
List runs for a simulationlist_simulation_runs✅✅
Create a run for a simulationcreate_simulation_run✅❌
Get a run for a simulationget_simulation_run✅✅
Simulation Run Events
OperationToolNon-destructiveRead only
List events for a simulation runlist_simulation_run_events✅✅
Get an event for a simulation runget_simulation_run_event✅✅
Replay an event for a simulation runreplay_simulation_run_event✅❌
Reports
OperationToolNon-destructiveRead only
List reportslist_reports✅✅
Create a reportcreate_report✅❌
Get a reportget_report✅✅
Get a CSV file for a reportget_report_csv✅✅
Client-Side Tokens
OperationToolNon-destructiveRead only
List client-side tokenslist_client_side_tokens✅✅
Create a client-side tokencreate_client_side_token✅❌
Get a client-side tokenget_client_side_token✅✅
Revoke a client-side tokenrevoke_client_side_token❌❌

Installation

To use the MCP server, you'll need an API key. You can create and manage API keys in Paddle > Developer tools > Authentication:

Adding the following to your MCP settings file will configure and run the Paddle MCP server in a client like Claude Desktop, Cursor or Windsurf:

Method 1: One-click installation in Cursor or VS Code

You can install the Paddle MCP server with a single click in Cursor or VS Code.

Install in Cursor

After installation, you'll need to update the configuration in your MCP settings file to replace your_api_key with your actual Paddle API key and adjust the environment and tools values as needed.

Method 2: Using command-line arguments (Recommended for npx)

Add the following to the MCP settings or configuration file in the client you're using:

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

Replace your_api_key with your actual Paddle API key, set --environment to either sandbox or production, and set --tools to the tools which you want to be loaded and available to the MCP client.

Method 3: Using environment variables

Add the following to the MCP settings or configuration file in the client you're using:

{
  "mcpServers": {
    "paddle": {
      "command": "npx",
      "args": ["-y", "@paddle/paddle-mcp"],
      "env": {
        "PADDLE_API_KEY": "your_api_key",
        "PADDLE_ENVIRONMENT": "sandbox",
        "PADDLE_MCP_TOOLS": "non-destructive"
      }
    }
  }
}

Replace your_api_key with your actual Paddle API key, set PADDLE_ENVIRONMENT to either sandbox or production, and set PADDLE_MCP_TOOLS to the tools which you want to be loaded and available to the MCP client.

Filtering tools

You can filter which tools are loaded and available to the MCP client by passing the --tools argument (Method 2) or setting the PADDLE_MCP_TOOLS environment variable (Method 1 or 3). Accepted values are:

  • all - All tools are available
  • read-only - Only read operations are available
  • non-destructive - Read operations and safe write operations are available (default)
  • A comma-separated list of specific tool names (e.g., list_products,get_product,create_product)

For detailed setup guides, see:

Development

  1. Install dependencies:

    pnpm install
    
  2. Build the server:

    pnpm build
    
  3. Update client to use the local build:

    {
      "mcpServers": {
        "paddle": {
          "command": "node",
          "args": ["path/to/paddle-mcp-server/build/index.js"],
          "env": {
            "PADDLE_API_KEY": "your_api_key",
            "PADDLE_ENVIRONMENT": "sandbox",
            "PADDLE_MCP_TOOLS": "all"
          }
        }
      }
    }
    

    The PADDLE_MCP_TOOLS environment variable accepts the same values as the --tools argument: all, read-only, non-destructive, or a comma-separated list of tool names. If not set, defaults to non-destructive.

Debugging

To debug the MCP server, you can use the MCP Inspector tool:

  1. Run the server with the inspector:

    pnpm inspector
    
  2. Open the provided URL in your browser to view and debug the MCP requests and responses.

  3. Include the --api-key and --environment arguments.

Learn more