@paypal/mcp
Enables integration with PayPal APIs for managing invoices, payments, disputes, subscriptions, and more through natural language.
README
PayPal Model Context Protocol
The PayPal Model Context Protocol server allows you to integrate with PayPal APIs through function calling. This protocol supports various tools to interact with different PayPal services.
To run the PayPal MCP server using npx, use the following command:
npx -y @paypal/mcp --tools=all PAYPAL_ACCESS_TOKEN="YOUR_ACCESS_TOKEN" PAYPAL_ENVIRONMENT="SANDBOX"
Replace YOUR_ACCESS_TOKEN with your PayPal access token. Refer this on how to generate a PayPal access token. Alternatively, you could set the PAYPAL_ACCESS_TOKEN in your environment variables.
Usage with MCP host (Claude Desktop/Cline/Cursor/GitHub Copilot)
This guide explains how to integrate the PayPal connector with Claude Desktop.
Prerequisites
- Claude Desktop application installed
- installing Node.js locally
Installation Steps
1. Install Node.js
Node.js is required for the PayPal connector to function:
- Visit the Node.js official website, download and install it.
- Requirements: Node 18+
2. Configure PayPal Connector with MCP host (Claude desktop / Cursor / Cline)
We will show the integration with Claude desktop. You can use your favorite MCP host.
- Open Claude Desktop
- Navigate to Settings
- Find the Developer or Advanced settings section
- Locate the external tools or connectors configuration area
- Add the following PayPal connector configuration to this ~/Claude/claude_desktop_config.json:
{
"mcpServers": {
"paypal": {
"command": "npx",
"args": [
"-y",
"@paypal/mcp",
"--tools=all"
],
"env": {
"PAYPAL_ACCESS_TOKEN": "YOUR_PAYPAL_ACCESS_TOKEN",
"PAYPAL_ENVIRONMENT": "SANDBOX"
}
}
}
}
Make sure to replace YOUR_PAYPAL_ACCESS_TOKEN with your actual PayPal Access Token. Alternatively, you could set the PAYPAL_ACCESS_TOKEN as an environment variable. You can also pass it as an argument using --access-token in "args"
Set PAYPAL_ENVIRONMENT value as either SANDBOX for stage testing and PRODUCTION for production environment.
- Save your configuration changes
3. Test the Integration
- Quit and restart Claude Desktop to apply changes
- Test the connection by asking Claude to perform a PayPal-related task
- Example: "List my PayPal invoices"
Available tools
Invoices
create_invoice: Create a new invoice in the PayPal systemlist_invoices: List invoices with optional pagination and filteringget_invoice: Retrieve details of a specific invoicesend_invoice: Send an invoice to recipientssend_invoice_reminder: Send a reminder for an existing invoicecancel_sent_invoice: Cancel a sent invoicegenerate_invoice_qr_code: Generate a QR code for an invoice
Payments
create_order: Create an order in PayPal system based on provided detailsget_order: Retrieve the details of an orderpay_order: Process payment for an authorized ordercreate_refund: Process a refund for a captured payment.get_refund: Get the details for a specific refund.
Dispute Management
list_disputes: Retrieve a summary of all open disputesget_dispute: Retrieve detailed information of a specific disputeaccept_dispute_claim: Accept a dispute claim
Shipment Tracking
create_shipment_tracking: Create a shipment tracking recordget_shipment_tracking: Retrieve shipment tracking information
Catalog Management
create_product: Create a new product in the PayPal cataloglist_products: List products with optional pagination and filteringshow_product_details: Retrieve details of a specific productupdate_product: Update an existing product
Subscription Management
create_subscription_plan: Create a new subscription planupdate_plan: Update an existing planlist_subscription_plans: List subscription plansshow_subscription_plan_details: Retrieve details of a specific subscription plancreate_subscription: Create a new subscriptionshow_subscription_details: Retrieve details of a specific subscriptionupdate_subscription: update an existing subscriptioncancel_subscription: Cancel an active subscription
Reporting and Insights
list_transactions: List transactions with optional pagination and filtering
Environment Variables
The following environment variables can be used:
PAYPAL_ACCESS_TOKEN: Your PayPal Access TokenPAYPAL_ENVIRONMENT: Set toSANDBOXfor sandbox mode,PRODUCTIONfor production (defaults toSANDBOXmode)
This guide explains how to generate an access token for PayPal API integration, including how to find your client ID and client secret.
Prerequisites
- PayPal Developer account (for Sandbox)
- PayPal Business account (for production)
Finding Your Client ID and Client Secret
-
Create a PayPal Developer Account:
- Go to PayPal Developer Dashboard
- Sign up or log in with your PayPal credentials
-
Access Your Credentials:
- In the Developer Dashboard, click on Apps & Credentials in the menu
- Switch between Sandbox and Live modes depending on your needs
-
Create or View an App:
- To create a new app, click Create App
- Give your app a name and select a Business account to associate with it
- For existing apps, click on the app name to view details
-
Retrieve Credentials:
- Once your app is created or selected, you'll see a screen with your:
- Client ID: A public identifier for your app
- Client Secret: A private key (shown after clicking "Show")
- Save these credentials securely as they are required for generating access tokens
- Once your app is created or selected, you'll see a screen with your:
Generating an Access Token
Using cURL
curl -v https://api-m.sandbox.paypal.com/v1/oauth2/token \\
-H \"Accept: application/json\" \\
-H \"Accept-Language: en_US\" \\
-u \"CLIENT_ID:CLIENT_SECRET\" \\
-d \"grant_type=client_credentials\"
Replace CLIENT_ID and CLIENT_SECRET with your actual credentials. For production, use https://api-m.paypal.com instead of the sandbox URL.
Using Postman
- Create a new request to
https://api-m.sandbox.paypal.com/v1/oauth2/token - Set method to POST
- Under Authorization, select Basic Auth and enter your Client ID and Client Secret
- Under Body, select x-www-form-urlencoded and add a key
grant_typewith valueclient_credentials - Send the request
Response
A successful response will look like:
{
"scope": "...",
"access_token": "Your Access Token",
"token_type": "Bearer",
"app_id": "APP-80W284485P519543T",
"expires_in": 32400,
"nonce": "..."
}
Copy the access_token value for use in your Claude Desktop integration.
Token Details
- Sandbox Tokens: Valid for 3-8 hours
- Production Tokens: Valid for 8 hours
- It's recommended to implement token refresh logic before expiration
Using the Token with Claude Desktop
Once you have your access token, update the PAYPAL_ACCESS_TOKEN value in your Claude Desktop connector configuration:
{
"env": {
"PAYPAL_ACCESS_TOKEN": "YOUR_NEW_ACCESS_TOKEN",
"PAYPAL_ENVIRONMENT": "SANDBOX"
}
}
Best Practices
- Store client ID and client secret securely
- Implement token refresh logic to handle token expiration
- Use environment-specific tokens (sandbox for testing, production for real transactions)
- Avoid hardcoding tokens in application code
Disclaimer
@paypal/mcp provides access to AI-generated content that may be inaccurate or incomplete. Users are responsible for independently verifying any information before relying on it. PayPal makes no guarantees regarding output accuracy and is not liable for any decisions, actions, or consequences resulting from its use.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。