mcpField
J
Junto Mcp

Junto Mcp

本地服务
github.com/vrllrv金融数据132 周前更新

关于 Junto Mcp

Junto 是面向 AI 客户端的 MCP 服务,提供统一的支付、收款请求、状态查询和退款接口。它按交易条件选择已配置的支付服务商,并提供支出限制、人工确认和审计日志。

主要功能

  1. 01统一支付工具
  2. 02按条件路由支付服务商
  3. 03每日及单笔限额
  4. 04高额交易人工确认
  5. 05交易审计日志

适用场景

  1. 01通过 AI 客户端发送付款
  2. 02创建收款请求或账单
  3. 03查询支付状态和余额
  4. 04追踪交易记录以便审计

MCP 相关

向 MCP 客户端提供 pay、charge、status、refund、balance、providers 和 limits 等支付工具,并支持 stdio 传输。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"junto": {
"command": "npx",
"args": [
"-y",
"junto-mcp"
],
"env": {
"WOOVI_APP_ID": "<WOOVI_APP_ID>",
"JUNTO_DAILY_LIMIT": "<JUNTO_DAILY_LIMIT>",
"JUNTO_TX_MAX": "<JUNTO_TX_MAX>",
"JUNTO_CONFIRM_ABOVE": "<JUNTO_CONFIRM_ABOVE>"
}
}
}
}
启动命令npx -y junto-mcp
需要配置的环境变量
WOOVI_APP_ID密钥Woovi/OpenPix API key for Pix payments (Brazil)
JUNTO_DAILY_LIMITDaily spending limit in cents (default: 50000)
JUNTO_TX_MAXMax per-transaction amount in cents (default: 10000)
JUNTO_CONFIRM_ABOVERequire human confirmation above this amount in cents (default: 5000)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmjunto-mcp0.1.1

工具

7

收录的工具列表 · 更新于 3 周前

参数类型必填说明
amountnumber是金额以分为单位。示例:5000 = R$50.00
currencystring否ISO 4217 货币代码
destinationstring是收款方:Pix 密钥、电子邮件、电话、CPF、CNPJ、IBAN
destination_typestring否类型提示:EMAIL、PHONE、CPF、CNPJ、RANDOM、IBAN
notestring否付款备注
providerstring否强制使用指定的服务商

详细介绍

Junto

为人和 Agent 打造的支付协议。

通过任意 AI 助手收发款项。支持任何支付渠道。内置安全护栏。

名称源自 Benjamin Franklin 的 Junto——一个商人共同建设公共基础设施的社团。不同的服务提供商,同一张桌子,互惠共赢。


为什么

AI 助手开始处理真实资金——支付发票、分摊账单、转账。但每家支付服务提供商都有不同的 API、不同的身份验证方式和不同的结算时间。没人应该费心教助手 Pix、Stripe 和 Wise 各自如何运作。

Junto 通过一个 MCP 服务解决这个问题,它可以:

  • 向任何兼容 MCP 的客户端(Claude、Cursor、自定义 Agent)提供通用支付工具集
  • 根据币种、国家和支付渠道,路由到合适的服务提供商
  • 强制执行支出限额,防止 Agent 越权操作
  • 支持高额交易的人在回路确认
  • 记录每项操作,以便审计和问责

工具

工具描述
pay向指定目的地汇款(Pix 密钥、电子邮件、IBAN 等)
charge创建付款请求/发票/二维码
status通过关联 ID 查看付款状态
refund撤销已完成的交易
balance查看服务提供商的可用资金
providers列出已配置的服务提供商及其功能
limits显示支出限额和今日用量

快速开始

npm install -g junto-mcp

设置服务提供商的 API 密钥:

export WOOVI_APP_ID="your-woovi-app-id"

以 CLI 运行(人工模式):

junto pay 25.00 [email protected]
junto charge 10.00 "Coffee"
junto balance

以 MCP 服务运行(供 AI 客户端使用):

junto --mcp
葡萄牙语 / Portugues

Junto 会自动检测系统语言,也可以手动设置:

JUNTO_LANG=pt-BR junto ajuda
junto pagar 25.00 [email protected]
junto cobrar 10.00 "Cafe"
junto saldo

有关两种语言的完整命令参考,请参阅 CLI.md。

添加到 Claude Desktop 或 Cursor
{
  "mcpServers": {
    "junto": {
      "command": "npx",
      "args": ["-y", "junto-mcp"],
      "env": {
        "WOOVI_APP_ID": "your-woovi-app-id"
      }
    }
  }
}

完成。你的 AI 助手现在可以使用支付工具了。

安全护栏

所有金额均以分(最小货币单位)为单位。

设置环境变量默认值含义
每日限额JUNTO_DAILY_LIMIT50000 (R$500)每日最高总支出
单笔交易上限JUNTO_PER_TX_MAX20000 (R$200)单笔交易最高金额
超过此金额需确认JUNTO_CONFIRM_ABOVE5000 (R$50)发送前询问人工
允许的服务提供商JUNTO_ALLOWED_PROVIDERS(全部)以逗号分隔的允许列表
允许的目的地JUNTO_ALLOWED_DESTINATIONS(全部)以逗号分隔的类型允许列表

当 Agent 尝试发送超过 JUNTO_CONFIRM_ABOVE 阈值的金额时,服务会暂停并返回确认提示词。Agent 必须将此提示转达给用户,并在继续操作前获得批准。

⚠️ Confirmation required

  Amount:      BRL 150.00
  To:          [email protected]
  Reason:      Amount (15000 cents) exceeds confirmation threshold (5000 cents)

Please confirm with the user before proceeding.

架构

┌─────────────────────────────────────┐
│  MCP Client (Claude, Cursor, etc.)  │
└──────────────┬──────────────────────┘
               │ MCP Protocol (stdio)
┌──────────────▼──────────────────────┐
│           junto-mcp                 │
│                                     │
│  ┌───────────┐  ┌────────────────┐  │
│  │  Router    │  │  Guardrails    │  │
│  │  (picks    │  │  (spend caps,  │  │
│  │  provider) │  │  HITL confirm, │  │
│  │           │  │  audit log)    │  │
│  └─────┬─────┘  └────────────────┘  │
│        │                            │
│  ┌─────▼─────────────────────────┐  │
│  │  Provider Adapters            │  │
│  │  ┌────────┐ ┌──────┐ ┌────┐  │  │
│  │  │ Woovi  │ │Stripe│ │Wise│  │  │
│  │  └────────┘ └──────┘ └────┘  │  │
│  └───────────────────────────────┘  │
│                                     │
│  ┌───────────────────────────────┐  │
│  │  Audit Ledger (JSONL)         │  │
│  └───────────────────────────────┘  │
└─────────────────────────────────────┘

服务提供商

服务提供商地区支付渠道状态
Woovi/OpenPix巴西Pix🟢 已上线(已使用真实 Pix 交易测试)
Ebanx巴西 + 拉美Pix 付款、Boleto、银行卡🟡 下一步
Belvo巴西开放金融(所有银行)🟡 下一步
Stripe全球银行卡、ACH、SEPA🟡 下一步
Wise全球银行转账🔴 计划中
Mercado Pago拉美Pix、银行卡🔴 计划中
PayPal全球基于电子邮件🔴 计划中
为什么先支持 Woovi/Pix?
  • Pix 即时结算(非常适合演示和实际使用)
  • 巴西中央银行要求支付服务提供商提供开放 API
  • 2025 年有超过 1.8 亿 Pix 用户、超过 800 亿笔交易
  • Pix Automático(于 2025 年 6 月推出)支持定期付款
  • 手续费低,无中间商
  • **已验证:**付款请求、状态查询和付款流程均已使用真实 Pix 交易测试(2026 年 3 月)

演示

You:   "Pay R$25 to [email protected] via Pix"

Agent:  I'll send the following payment:
          Amount: R$ 25,00
          To: [email protected] (Pix)
          Via: Woovi
        Shall I go ahead?

You:   "Yes"

Agent:  Done! Payment sent.
          Amount: R$ 25,00
          To: [email protected]
          Via: Pix (Woovi)
          Status: Completed
          ID: junto-1739612345-a1b2c3

添加服务提供商

每个服务提供商只需一个文件,实现 PaymentProvider 接口:

// src/providers/your-provider.ts
import { PaymentProvider } from "../types.js";

export class YourProvider implements PaymentProvider {
  name = "your-provider";
  supportedCurrencies = ["USD"];
  supportedRails = ["card"];
  settlementTime = "1-3 days";

  async pay(req) { /* send money */ }
  async charge(req) { /* create invoice */ }
  async status(id) { /* check status */ }
  async refund(id) { /* reverse payment */ }
  async balance() { /* check funds */ }
  info() { /* return capabilities */ }
}

复制 src/providers/_template.ts 以开始,然后在 src/index.ts 中注册你的服务提供商。

测试

npm test              # Guardrail unit tests
npm run test:smoke    # Full flow smoke tests (mock provider)
使用真实 Pix 进行在线测试
# Create a Pix charge (R$1.00)
WOOVI_APP_ID=your-key npx tsx test/live-pix.ts charge 100 "Test charge"

# Check status
WOOVI_APP_ID=your-key npx tsx test/live-pix.ts status <correlation-id>

# Send a Pix payment
WOOVI_APP_ID=your-key npx tsx test/live-pix.ts pay 100 [email protected] EMAIL

# Refund
WOOVI_APP_ID=your-key npx tsx test/live-pix.ts refund <correlation-id>
交互式演示
npx tsx demo/demo.ts          # Full demo with typewriter narration + real API calls
npx tsx demo/demo.ts --fast   # Fast mode for rehearsals

审计日志

每笔交易都会记录到 ~/.junto/audit-YYYY-MM-DD.jsonl:

{
  "timestamp": "2026-02-15T14:32:07Z",
  "type": "payment",
  "action": "pay",
  "tool": "pay",
  "amount": 2500,
  "currency": "BRL",
  "provider": "woovi",
  "destination": "[email protected]",
  "status": "executed"
}

路线图

  • 具备通用工具接口的核心 MCP 服务
  • Woovi/OpenPix 提供方(Pix)——已通过真实交易进行在线测试
  • 防护措施(日限额、单笔交易上限、HITL 确认)
  • 审计账本
  • junto-skill(Claude 行为层)
  • 交互式演示(npx tsx demo/demo.ts)
  • Ebanx 提供方(Pix 付款、Boleto、银行卡——巴西 + 拉美)
  • Belvo 提供方(开放金融——覆盖所有巴西银行)
  • Stripe 提供方(银行卡、ACH、SEPA)
  • junto-approve(通过 Telegram/WhatsApp 进行 HITL 确认)
  • junto-dashboard(用于查看交易历史和限额的网页 UI)
  • junto-compute(Agent 之间的预算委派)
  • AP2 兼容层(Google Agent Payments Protocol)
  • Wise 提供方(国际银行转账)

参与贡献

我们需要以下方面的帮助:

  • 提供方适配器——Ebanx、Stripe、Wise、Belvo、Mercado Pago、PayPal、UPI
  • 路由逻辑——根据最便宜、最快或最可靠的标准选择提供方
  • HITL 模式——适用于不同 MCP 客户端的审批流程
  • 安全审计——审查防护措施和身份验证系统
  • 多币种——外汇处理、跨境路由
  • 文档——各地区的合规与监管指南

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。