MCP Server for Paddle Billing

MCP Server for Paddle Billing

A Model Context Protocol server that provides tools for interacting with the Paddle Billing API, enabling users to manage products, prices, customers, transactions, subscriptions, and create custom financial reports.

PaddleHQ

Developer Tools
Visit Server

Tools

list_products

This tool will list products in your Paddle catalog. Use the maximum perPage by default (200) to ensure comprehensive results. Filter products by status, tax category, and type as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort results using orderBy parameter. Include related entities like prices if needed. Amounts are in the smallest currency unit (e.g., cents).

create_product

This tool will create a new product in Paddle. When selecting a tax category, choose the one that best describes your product: - standard: Software products that are pre-written and can be downloaded and installed onto a local device - digital-goods: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered - ebooks: Digital books and educational material which is sold with permanent rights for use by the customer - implementation-services: Remote configuration, set-up, and integrating software on behalf of a customer - professional-services: Services that involve the application of your expertise and specialized knowledge of a software product - saas: Products that allow users to connect to and use online or cloud-based applications over the Internet - software-programming-services: Services that can be used to customize and white label software products - training-services: Training and education services related to software products - website-hosting: Cloud storage service for personal or corporate information, assets, or intellectual property The tax category affects how taxes are calculated in different jurisdictions. Choose carefully as it impacts your customers' tax rates. When using the standard tax category, prompt the user to review the tax category in the Paddle dashboard.

list_prices

This tool will list prices in your Paddle catalog. Use the maximum perPage by default (200) to ensure comprehensive results. Filter prices by product ID, status, recurring, and type as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort results using orderBy parameter. Include related entities like products if needed. Amounts are in the smallest currency unit (e.g., cents).

create_price

This tool will create a new price for a product in Paddle. When using unitPriceOverrides: 1. Group countries based on purchasing power parity (PPP), not just currency zones 2. Create separate overrides for countries with different economic conditions even if they share the same currency (e.g., Greece and Ireland should have different price points) 3. Adjust prices relative to local economic conditions - higher in wealthy markets, lower in developing economies 4. For optimal conversion rates, set prices using local market research and willingness-to-pay data 5. Use local currencies where preferred by the customer Example unitPriceOverrides structure: [ { "countryCodes": ["GB"], "unitPrice": { "amount": "8500", "currencyCode": "GBP" } }, { "countryCodes": ["IE"], "unitPrice": { "amount": "9500", "currencyCode": "EUR" } }, { "countryCodes": ["GR"], "unitPrice": { "amount": "6500", "currencyCode": "EUR" } }, { "countryCodes": ["IN"], "unitPrice": { "amount": "30000", "currencyCode": "INR" } }, { "countryCodes": ["CN"], "unitPrice": { "amount": "20000", "currencyCode": "CNY" } } ]

list_customers

This tool will list customers in your Paddle account. Use the maximum perPage by default (200) to ensure comprehensive results. Filter customers by email, ID, and status as needed. Use the search parameter to find customers by ID, name, or email address. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort results using orderBy parameter. Customers can have either 'active' or 'archived' status.

list_transactions

This tool will list transactions from your Paddle account. Use the maximum perPage by default (30) to ensure comprehensive results. Filter transactions by billing and creation dates, collection mode, customer ID, invoice number, origin, status and subscription ID as required. You can include related information such as addresses, adjustments, adjustment totals, available payment methods, business details, customer data, and discounts when needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort results using orderBy parameter. Amounts are in the smallest currency unit (e.g., cents).

list_subscriptions

This tool will list subscriptions from your Paddle account. Use the maximum perPage by default (200) to ensure comprehensive results. Filter subscriptions by address ID, customer ID, price ID, collection mode, scheduled change action, and status as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort results using orderBy parameter. Amounts are in the smallest currency unit (e.g., cents).

create_report

This tool creates custom reports in your Paddle account for financial analysis and reconciliation. Use this tool over list_transactions when trying to gather larger amounts of data from Paddle. Available report types: - 'adjustments': For information about refunds, credits, and chargebacks - 'adjustment_line_items': For information about refunds, credits, and chargebacks, broken down by line item level - 'transactions': For information about revenue received, past due invoices, draft and issued invoices, and canceled transactions - 'transaction_line_items': For information about revenue received, past due invoices, draft and issued invoices, and canceled transactions, broken down by line item level - 'products_prices': For information about your products and prices. May include non-catalog products and prices. - 'discounts': For information about your product and checkout discounts Reports are generated asynchronously - you'll receive a report ID that can be used to check status. Reports initially have 'pending' status, then move to 'ready' when available to download. Reports are available in CSV format and can be downloaded once ready. Reports expire after a certain period and are no longer available to download after expiration. Use this tool when you need detailed financial data for analysis, reconciliation, or export to spreadsheet applications.

README

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

Features

  • List products in your Paddle catalog
  • Create new products
  • List prices for products
  • Create new prices for products
  • List customers
  • List transactions
  • List subscriptions
  • Create custom reports for financial analysis

Installation

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

  • Sandbox: https://sandbox-vendors.paddle.com/authentication-v2
  • Live: https://vendors.paddle.com/authentication-v2

You can run the Paddle MCP server using npx with the following command:

npx -y @paddle/paddle-mcp --api-key=PADDLE_API_KEY --environment=(sandbox|production)

Replace PADDLE_API_KEY with your API key, and pass the correct value as environment.

To run the server in a client like Claude Desktop, Cursor or Windsurf, add the following to your MCP config:

{
  "mcpServers": {
    "paddle": {
      "command": "npx",
      "args": ["-y", "@paddle/paddle-mcp", "--api-key=PADDLE_API_KEY", "--environment=(sandbox|production)"]
    }
  }
}

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"
          }
        }
      }
    }
    

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

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
MCP Package Docs Server

MCP Package Docs Server

Facilitates LLMs to efficiently access and fetch structured documentation for packages in Go, Python, and NPM, enhancing software development with multi-language support and performance optimization.

Featured
Local
TypeScript
Claude Code MCP

Claude Code MCP

An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.

Featured
Local
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.

Featured
Local
JavaScript
Linear MCP Server

Linear MCP Server

Enables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.

Featured
JavaScript
mermaid-mcp-server

mermaid-mcp-server

A Model Context Protocol (MCP) server that converts Mermaid diagrams to PNG images.

Featured
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP server to provide Jira Tickets information to AI coding agents like Cursor

Featured
TypeScript
Linear MCP Server

Linear MCP Server

A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.

Featured
JavaScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

This server facilitates structured problem-solving by breaking down complex issues into sequential steps, supporting revisions, and enabling multiple solution paths through full MCP integration.

Featured
Python