PayPal MCP 服务器
一个模型上下文协议 (MCP) 服务器,提供与 PayPal API 的全面集成。该服务器通过标准化接口实现与 PayPal 的支付处理、发票、订阅管理和业务运营的无缝交互。
特征
付款处理
订单管理:创建、更新和跟踪订单
付款处理:使用各种方法处理付款
支付令牌:创建和管理支付令牌以供将来使用
争议管理:处理付款争议及解决方案
业务运营
产品管理:创建和管理产品目录
发票:生成并发送专业发票
付款:向多个收款人批量付款
订阅管理:创建和管理定期计费
用户管理
身份验证:验证用户身份
用户信息:检索和管理用户数据
Web 配置文件管理:定制结帐体验
Related MCP server: PayPal MCP Server
建筑学
graph TB
subgraph "MCP Environment"
Client[MCP Client]
Server[PayPal MCP Server]
Validation[Input Validation]
Auth[OAuth Authentication]
Cache[Token Cache]
ErrorHandler[Error Handler]
end
subgraph "PayPal APIs"
Orders[Orders API]
Payments[Payments API]
Payouts[Payouts API]
Invoicing[Invoicing API]
Products[Products API]
Subscriptions[Subscriptions API]
Disputes[Disputes API]
Identity[Identity API]
end
Client --> |Request| Server
Server --> |Response| Client
Server --> Validation
Server --> Auth
Auth --> Cache
Auth --> |Access Token| PayPal
Server --> ErrorHandler
Server --> Orders
Server --> Payments
Server --> Payouts
Server --> Invoicing
Server --> Products
Server --> Subscriptions
Server --> Disputes
Server --> Identity
style Client fill:#f9f,stroke:#333,stroke-width:2px
style Server fill:#bbf,stroke:#333,stroke-width:2px
style Auth fill:#bfb,stroke:#333,stroke-width:2px
style Validation fill:#bfb,stroke:#333,stroke-width:2px
style Cache fill:#fbb,stroke:#333,stroke-width:2px
style ErrorHandler fill:#fbb,stroke:#333,stroke-width:2px安装
先决条件
Node.js 16.x 或更高版本
具有 API 凭证的 PayPal 开发者帐户
手动安装
克隆存储库
git clone https://github.com/arbuthnot-eth/PayPal-MCP.git cd PayPal-MCP安装依赖项
npm install构建项目
npm run build在您的 MCP 设置文件中配置 PayPal 凭据:
{ "mcpServers": { "paypal": { "command": "node", "args": ["path/to/paypal-mcp/build/index.js"], "env": { "PAYPAL_CLIENT_ID": "your_client_id", "PAYPAL_CLIENT_SECRET": "your_client_secret", "PAYPAL_ENVIRONMENT": "sandbox" // or "live" }, "disabled": false, "autoApprove": [] } } }
可用工具
付款操作
创建支付令牌
创建支付令牌以供将来使用。
{
customer: {
id: string;
email_address?: string;
};
payment_source: {
card?: {
name: string;
number: string;
expiry: string;
security_code: string;
};
paypal?: {
email_address: string;
};
};
}创建订单
在 PayPal 中创建新订单。
{
intent: 'CAPTURE' | 'AUTHORIZE';
purchase_units: Array<{
amount: {
currency_code: string;
value: string;
};
description?: string;
reference_id?: string;
items?: Array<{
name: string;
quantity: string;
unit_amount: {
currency_code: string;
value: string;
};
}>;
}>;
application_context?: {
brand_name?: string;
shipping_preference?: 'GET_FROM_FILE' | 'NO_SHIPPING' | 'SET_PROVIDED_ADDRESS';
user_action?: 'CONTINUE' | 'PAY_NOW';
};
}捕获顺序
获取授权订单的付款。
{
order_id: string;
payment_source?: {
token?: {
id: string;
type: string;
};
};
}创建订阅
创建定期计费的订阅。
{
plan_id: string;
subscriber: {
name: {
given_name: string;
surname: string;
};
email_address: string;
};
application_context?: {
brand_name?: string;
shipping_preference?: 'GET_FROM_FILE' | 'NO_SHIPPING' | 'SET_PROVIDED_ADDRESS';
user_action?: 'CONTINUE' | 'SUBSCRIBE_NOW';
payment_method?: {
payer_selected?: string;
payee_preferred?: string;
};
};
}业务运营
创建产品
在目录中创建新产品。
{
name: string;
description: string;
type: 'PHYSICAL' | 'DIGITAL' | 'SERVICE';
category: string;
image_url?: string;
home_url?: string;
}创建发票
生成新发票。
{
invoice_number: string;
reference: string;
currency_code: string;
recipient_email: string;
items: Array<{
name: string;
quantity: string;
unit_amount: {
currency_code: string;
value: string;
};
description?: string;
tax?: {
name: string;
percent: string;
};
}>;
note?: string;
terms_and_conditions?: string;
memo?: string;
payment_term?: {
term_type: 'DUE_ON_RECEIPT' | 'DUE_ON_DATE' | 'NET_10' | 'NET_15' | 'NET_30' | 'NET_45' | 'NET_60' | 'NET_90';
due_date?: string;
};
}创建付款
处理批量付款。
{
sender_batch_header: {
sender_batch_id: string;
email_subject?: string;
recipient_type?: string;
};
items: Array<{
recipient_type: string;
amount: {
value: string;
currency: string;
};
receiver: string;
note?: string;
}>;
}错误处理
服务器实现了全面的错误处理:
输入验证:带有具体消息的详细验证错误
PayPal API 错误:包含 PayPal 错误详细信息的结构化错误响应
网络错误:针对瞬时网络问题的重试逻辑
身份验证错误:自动令牌刷新和清除错误消息
速率限制:API 速率限制的退避策略
安全注意事项
所有敏感数据都经过验证和清理
使用 PayPal 进行 OAuth 2.0 身份验证
通过环境变量进行安全凭证管理
所有 API 参数的输入验证
错误消息不会泄露敏感信息
发展
建筑
npm run build以开发模式运行
npm run dev测试
npm test代码检查
npm run lint格式化
npm run format贡献
分叉存储库
创建功能分支
提交你的更改
推送到分支
创建拉取请求
执照
MIT 许可证