MCP Server (deprecated)
一个模型上下文协议 (MCP) 服务器,用于 PayPal API 集成,具有改进的错误处理、全面的 API 覆盖和详细的文档。
arbuthnot-eth
README
MCP 服务器 (已弃用)
一个模型上下文协议 (MCP) 服务器,提供与 PayPal API 的全面集成。该服务器通过标准化接口实现与 PayPal 的支付处理、发票、订阅管理和业务运营的无缝交互。
功能
支付处理
- 订单管理: 创建、更新和跟踪订单
- 支付处理: 使用各种方法处理付款
- 支付令牌: 创建和管理用于未来使用的支付令牌
- 争议管理: 处理支付争议和解决方案
业务运营
- 产品管理: 创建和管理产品目录
- 发票: 生成和发送专业发票
- 付款: 向多个收款人处理批量付款
- 订阅管理: 创建和管理定期账单
用户管理
- 身份验证: 验证用户身份
- 用户信息: 检索和管理用户数据
- Web 配置文件管理: 自定义结账体验
架构
graph TB
subgraph "MCP 环境"
Client[MCP 客户端]
Server[PayPal MCP 服务器]
Validation[输入验证]
Auth[OAuth 身份验证]
Cache[令牌缓存]
ErrorHandler[错误处理程序]
end
subgraph "PayPal APIs"
Orders[订单 API]
Payments[支付 API]
Payouts[付款 API]
Invoicing[发票 API]
Products[产品 API]
Subscriptions[订阅 API]
Disputes[争议 API]
Identity[身份 API]
end
Client --> |请求| Server
Server --> |响应| Client
Server --> Validation
Server --> Auth
Auth --> Cache
Auth --> |访问令牌| 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": [] } } }
可用工具
支付操作
create_payment_token
创建用于未来使用的支付令牌。
{
customer: {
id: string;
email_address?: string;
};
payment_source: {
card?: {
name: string;
number: string;
expiry: string;
security_code: string;
};
paypal?: {
email_address: string;
};
};
}
create_order
在 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';
};
}
capture_order
捕获已授权订单的付款。
{
order_id: string;
payment_source?: {
token?: {
id: string;
type: string;
};
};
}
create_subscription
创建用于定期账单的订阅。
{
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;
};
};
}
业务运营
create_product
在目录中创建一个新产品。
{
name: string;
description: string;
type: 'PHYSICAL' | 'DIGITAL' | 'SERVICE';
category: string;
image_url?: string;
home_url?: string;
}
create_invoice
生成新发票。
{
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;
};
}
create_payout
处理批量付款。
{
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
贡献
- Fork 存储库
- 创建一个功能分支
- 提交您的更改
- 推送到分支
- 创建一个 Pull Request
许可证
MIT 许可证
推荐服务器
Crypto Price & Market Analysis MCP Server
一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。
MCP PubMed Search
用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。
mixpanel
连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

Nefino MCP Server
为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。
Vectorize
将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。
Mathematica Documentation MCP server
一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。
kb-mcp-server
一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。
Research MCP Server
这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

Cryo MCP Server
一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。