关于 mcp-openpay
mcp-openpay 是面向 Openpay 支付网关的 MCP 服务,Openpay 为 BBVA 旗下墨西哥支付网关。它面向墨西哥在线商户和 Agent,覆盖银行卡、SPEI、OXXO 等支付方式。
主要功能
- 0123 个工具,覆盖收款、客户、卡片与退款
- 02原生订阅:套餐创建与按客户周期扣款
- 03商户付款(payout):向银行账户支付 MXN
- 04Webhook 注册、查询与删除
- 05支持沙箱与生产环境切换
适用场景
- 01为墨西哥电商 Agent 创建收款与退款
- 02管理客户的订阅与周期扣款
- 03向银行账户发起 MXN 付款
MCP 相关
作为 MCP 服务,向 MCP 客户端暴露 Openpay 的收款、客户、订阅、付款和 Webhook 等工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @codespar/mcp-openpayOPENPAY_MERCHANT_IDOpenpay merchant id (forms part of the API URL path)OPENPAY_PRIVATE_KEY密钥Openpay private API key (used as HTTP Basic auth username with empty password)OPENPAY_ENVEnvironment: 'sandbox' (default) or 'production'. Selects between https://sandbox-api.openpay.mx and https://api.openpay.mx.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
23收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| card | object | 否 | 当 method='card' 且不使用 source_id 时内嵌的卡片对象。也可以传入令牌化卡片的 source_id。 |
| amount | number | 是 | 以主要货币单位表示的金额(MXN)。 |
| method | enum | 是 | 支付方式:card、bank_account(SPEI)或 store(OXXO)。card | bank_account | store |
| capture | boolean | 否 | 如果为 false,则仅授权 — 之后使用 capture_charge 完成扣款。默认为 true。 |
| currency | string | 否 | ISO-4217 货币代码。默认为 MXN。 |
| customer | object | 否 | 一次性(商户范围)扣款的客户身份信息。设置 customer_id 时无需提供。 |
| customer.name | string | 否 | |
| customer.email | string | 否 | |
| customer.last_name | string | 否 | |
| customer.phone_number | string | 否 | |
| customer.requires_account | boolean | 否 | 如果为 true,Openpay 会为客户创建钱包账户。 |
| due_date | string | 否 | 对于 store(OXXO)/ bank_account(SPEI)扣款,采用 ISO-8601 格式的到期时间。 |
| order_id | string | 否 | 商户侧唯一订单引用。 |
| source_id | string | 否 | method='card' 时使用的卡片或令牌 ID。除非提供内嵌的 'card' 对象,否则卡片扣款必填。 |
| send_email | boolean | 否 | 对于 store(OXXO)扣款,将凭证通过电子邮件发送给客户。 |
| customer_id | string | 否 | 可选。Openpay 客户 ID,用于将扣款限定到已存储的客户。 |
| description | string | 否 | 收据上显示的扣款说明。 |
| redirect_url | string | 否 | 用于 3DS/重定向流程,在身份验证后将买家返回到此处。 |
| use_3d_secure | boolean | 否 | 对银行卡扣款强制启用 3DS。 |
| device_session_id | string | 否 | 来自 Openpay 反欺诈 JS 的设备会话 ID(生产环境中的银行卡扣款必填)。 |
详细介绍
@codespar/mcp-openpay
适用于 Openpay 的 MCP 服务——这是一家归 BBVA 所有的墨西哥支付网关。
对于墨西哥在线商户,Openpay 是 BBVA 支持的 Conekta 主要替代方案。将它与 @codespar/mcp-conekta 一同加入目录,补全了墨西哥两大网关的支持,并让 Agent 能够使用 BBVA 支付通道(SPEI、OXXO 和本地银行卡)。它在本目录中的差异化功能包括:原生订阅(计划 + 按客户定期扣款)和平台付款。
工具(23 个)
| 工具 | 用途 |
|---|---|
create_charge | 创建扣款。 |
get_charge | 检索扣款。 |
capture_charge | 扣取此前已授权的款项(原始扣款使用 capture=false 时)。 |
refund_charge | 退还已扣取的款项。 |
create_customer | 创建客户记录。 |
get_customer | 按 Openpay 客户 ID 检索客户。 |
list_customers | 按可选筛选条件列出客户。 |
create_card | 将银行卡令牌化。 |
delete_card | 删除已令牌化的银行卡。 |
create_plan | 创建订阅计划。 |
create_subscription | 为客户订阅计划。 |
create_payout | 向银行账户支付 MXN。 |
update_customer | 更新已存储的客户(PUT /customers/{id})。 |
delete_customer | 删除客户(DELETE /customers/{id})。 |
get_card | 检索已令牌化的银行卡。 |
list_cards | 列出已令牌化的银行卡。 |
create_bank_account | 保存客户银行账户(POST /customers/{customer_id}/bankaccounts)。 |
delete_bank_account | 删除已保存的客户银行账户(DELETE /customers/{customer_id}/bankaccounts/{id})。 |
cancel_subscription | 取消客户的订阅(DELETE /customers/{customer_id}/subscriptions/{id})。 |
list_payouts | 列出付款。 |
create_webhook | 注册 Webhook 端点(POST /webhooks)。 |
list_webhooks | 列出已配置的 Webhook 订阅(GET /webhooks)。 |
delete_webhook | 删除 Webhook 订阅(DELETE /webhooks/{id})。 |
安装
npm install @codespar/mcp-openpay
环境变量
OPENPAY_MERCHANT_ID="..." # merchant id (part of the API URL path)
OPENPAY_PRIVATE_KEY="..." # private API key — secret
OPENPAY_ENV="sandbox" # 'sandbox' (default) | 'production'
身份验证
HTTP Basic。私钥作为用户名,密码留空:
Authorization: Basic base64(OPENPAY_PRIVATE_KEY + ":")
Content-Type: application/json
服务会自动进行 Base64 编码——你只需配置三个环境变量。
基础 URL
| 环境 | 主机 |
|---|---|
sandbox(默认) | https://sandbox-api.openpay.mx/v1/{merchant_id} |
production | https://api.openpay.mx/v1/{merchant_id} |
运行
# stdio (default — for Claude Desktop, Cursor, etc)
npx @codespar/mcp-openpay
# HTTP (for server-to-server testing)
MCP_HTTP=true MCP_PORT=3000 npx @codespar/mcp-openpay
作用域说明
Openpay 的若干资源既可在商户作用域下访问,也可在客户作用域下访问。工具通过可选的 customer_id 参数提供此功能:
create_charge、get_charge、capture_charge、refund_charge— 设置customer_id时,路由到/customers/{customer_id}/...;否则路由到/...。create_card、delete_card— 采用相同模式。create_payout— 客户作用域下的付款要求客户设置requires_account=true。create_subscription— API 要求使用客户作用域(计划属于商户作用域;订阅始终按客户创建)。
PCI 范围
建议使用 Openpay.js 在客户端进行令牌化,并将生成的 token_id / source_id 传递给服务端。只有在符合 PCI-DSS 要求时,才能在服务端发送原始 PAN/CVV。
文档
https://documents.openpay.mx/en/api
企业版
需要为 Agent 付款提供治理、预算限额和审计追踪?CodeSpar Enterprise 在这些 MCP 服务之上增加了策略引擎、支付路由和合规模板。
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。