关于 Braintree MCP Server
Braintree MCP Server 是一个非官方服务,通过 GraphQL API 将 Braintree 支付处理能力提供给 AI 系统。它支持交易与客户相关操作,并提供 STDIO 和 SSE 两种传输方式。
主要功能
- 01执行 Braintree GraphQL 查询
- 02检查凭据连接状态
- 03支持 STDIO 传输
- 04支持 SSE 多客户端连接
适用场景
- 01查询交易或客户信息
- 02创建支付交易
- 03验证 Braintree 凭据
- 04为多个客户端部署支付接口
MCP 相关
该服务向 MCP 客户端提供连通性检查和 GraphQL 执行工具,以访问 Braintree 支付处理功能。可通过 STDIO 或 SSE 连接。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Braintree MCP 服务
一个非官方的 Model Context Protocol(MCP)服务,用于与 PayPal Braintree 支付处理服务交互。
许可证与引用
本项目采用 MIT 许可证,并附带学术引用要求。这意味着你可以自由使用、修改和分发代码,但任何使用本软件的学术或科学出版物都必须提供适当的署名。
用于学术/研究:
如果你在最终产出出版物、演示文稿或报告的研究项目中使用本软件,必须按照 CITATION.md 中提供的格式引用本作品。
用于商业/非学术用途:
商业和非学术用途遵循标准 MIT 许可证条款,无需引用。
使用本软件即表示你同意这些条款。完整的许可证文本请参阅 LICENSE.md。
服务版本
Braintree MCP 服务有两个版本:
1. STDIO 传输服务(braintree_server.py)
- 使用标准输入/输出(STDIO)进行通信
- 专为与 Claude Desktop 及其他支持 STDIO 的 MCP 客户端集成而设计
- 每个客户端会话都会启动一个新的服务进程
- 客户端断开连接时,服务会终止
在 Claude Desktop 中使用:
- 配置
claude_desktop_config.json,使其指向此服务 - 打开 Claude Desktop 并选择 Braintree 工具
2. SSE 传输服务(braintree_sse_server.py)
- 使用 Server-Sent Events(SSE)进行通信
- 设计为可处理多个客户端连接的独立 Web 服务
- 服务会持续运行,直到手动停止
- 默认绑定到
127.0.0.1:8001(可配置)
手动使用:
python braintree_sse_server.py
连接到 SSE 服务:
使用支持 SSE 传输的 MCP 客户端,并连接到 http://127.0.0.1:8001/sse
概述
此服务实现了 Model Context Protocol(MCP)规范,通过 GraphQL API 为 AI 助手模型提供对 Braintree 支付处理功能的直接、结构化访问。它支持 AI 系统通过 MCP 工具执行支付操作,例如获取交易、创建付款和管理客户数据。
安装
- 克隆此仓库
git clone https://github.com/yourusername/braintree-mcp-server.git
cd braintree-mcp-server
- 设置 Python 3.13+ 环境
# If using pyenv
pyenv install 3.13.0
pyenv local 3.13.0
# Or using another method to ensure Python 3.13+
- 安装依赖项
pip install -e .
配置
在项目根目录中创建一个 .env 文件,并填入你的 Braintree 凭据:
BRAINTREE_MERCHANT_ID=your_merchant_id
BRAINTREE_PUBLIC_KEY=your_public_key
BRAINTREE_PRIVATE_KEY=your_private_key
BRAINTREE_ENVIRONMENT=sandbox # or production
你可以从 Braintree 控制面板获取这些凭据。
使用方法
运行服务
默认 STDIO 传输
python braintree_server.py
服务默认使用 stdio 传输运行,适合与支持 MCP 的 AI 助手系统集成。
Server-Sent Events(SSE)传输
python braintree_sse_server.py
SSE 服务提供基于 Web 的传输层,允许多个客户端建立持久连接。这适用于独立部署场景,让多个客户端都能访问 Braintree 功能。
默认配置:
- 主机:127.0.0.1(localhost)
- 端口:8001
- 环境:在你的 .env 文件中定义
所需依赖项请参阅 requirements.txt。
可用的 MCP 工具
braintree_ping
简单的连通性测试,用于检查你的 Braintree 凭据是否有效。
response = await braintree_ping()
# Returns "pong" if successful
braintree_execute_graphql
对 Braintree API 执行任意 GraphQL 查询。
query = """
query GetTransactionDetails($id: ID!) {
node(id: $id) {
... on Transaction {
id
status
amount {
value
currencyCode
}
createdAt
}
}
}
"""
variables = {"id": "transaction_id_here"}
response = await braintree_execute_graphql(query, variables)
# Returns JSON response from Braintree
常见 GraphQL 操作
获取客户
query GetCustomer($id: ID!) {
node(id: $id) {
... on Customer {
id
firstName
lastName
email
paymentMethods {
edges {
node {
id
details {
... on CreditCardDetails {
last4
expirationMonth
expirationYear
cardType
}
}
}
}
}
}
}
}
创建交易
mutation CreateTransaction($input: ChargePaymentMethodInput!) {
chargePaymentMethod(input: $input) {
transaction {
id
status
amount {
value
currencyCode
}
}
}
}
变量示例:
{
"input": {
"paymentMethodId": "payment_method_id_here",
"transaction": {
"amount": "10.00",
"orderId": "order123",
"options": {
"submitForSettlement": true
}
}
}
}
故障排除
- 确保
.env文件中的 Braintree 凭据正确 - 确认网络连接可以访问 Braintree 的 API 端点
- 检查 Braintree 账户是否存在速率限制或权限问题
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。