mcpField
V
voulti

voulti

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

关于 voulti

Voulti 是面向商户的加密货币支付网关,支持在五个网络上收取稳定币。其 Agent 集成无需 API 密钥即可创建发票、查询发票详情或获取支付链接。

主要功能

  1. 01支持五个网络的稳定币支付
  2. 02创建发票并查询状态
  3. 03托管结账页与支付链接
  4. 04连接钱包或按地址付款
  5. 05汇总多链余额
  6. 06自动检测存款并结算

适用场景

  1. 01通过 AI Agent 创建发票
  2. 02向客户发送托管结账链接
  3. 03在支持的网络收取稳定币
  4. 04查看余额并提取资金

MCP 相关

MCP 服务提供创建发票、查询发票详情和获取支付链接的工具。该集成 API 无需 API 密钥。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"csacanam-voulti": {
"command": "npx",
"args": [
"-y",
"voulti-mcp"
],
"env": {
"VOULTI_COMMERCE_ID": "<VOULTI_COMMERCE_ID>"
}
}
}
}
启动命令npx -y voulti-mcp
需要配置的环境变量
VOULTI_COMMERCE_IDDefault merchant id (from app.voulti.com → Receive Payments → Developers). Optional — can be passed per call.

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

安装包
npmvoulti-mcp0.1.0

工具

3

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

参数类型必填说明
referencestring否你自己的备注:订单 ID、客户名称……
expires_atstring否ISO 8601 形式的到期时间(默认:从现在起 1 小时)
amount_fiatnumber是商户基础货币金额
commerce_idstring否商户 ID(默认使用 VOULTI_COMMERCE_ID 环境变量)

详细介绍

Voulti

面向商家的加密货币支付网关。在 5 个网络上接受 USDC、USDT 和稳定币。

架构

apps/
  checkout/     React + Vite — customer payment page
  merchant/     Next.js — merchant dashboard
  api/          Fastify — backend API

contracts/
  core/         DerampProxy + modules (Hardhat, Solidity ^0.8.28)

packages/
  shared/       Shared utilities

assets/
  brand/        The logo, and the icons every app is derived from

网络

网络链 ID代币
Celo42220USDC、USDT、COPm
Arbitrum42161USDC、USD₮0
Polygon137USDC、USDT0
Base8453USDC
BSC56USDC、USDT

面向 AI Agent

Voulti 全程可供 Agent 使用 — 集成 API 无需 API 密钥:

  • MCP 服务:claude mcp add voulti -- npx -y voulti-mcp — 工具 create_invoice、get_invoice、get_payment_link。请参阅 mcp/README.md。
  • Agent 技能:npx skills add csacanam/voulti — 或访问 voulti.com/skill.md 阅读。
  • 纯 HTTP:使用 { commerce_id, amount_fiat, reference? } 向 POST https://api.voulti.com/invoices 发送请求 → 获取托管结账链接。LLM 索引:voulti.com/llms.txt。

功能

  • 自助注册 — 商家连接钱包、填写商家名称,即可完成
  • 两种支付方式 — 连接钱包或通过地址付款(二维码 + 存款)
  • 多链余额 — 按代币汇总,自动选择网络
  • 发送资金 — 从仪表板提现至任意钱包
  • HD 钱包归集 — 自动检测存款并结算
  • 部分付款/超额付款处理 — 超额付款时自动退款,部分付款时等待
  • i18n — 西班牙语和英语

智能合约

采用模块化代理架构,部署在 5 个网络上:

  • DerampProxy — 入口点,将调用路由至各模块
  • DerampStorage — 集中式数据存储
  • AccessManager — 角色、代币/商家白名单
  • InvoiceManager — 发票生命周期管理
  • PaymentProcessor — 支付执行、费用计算
  • TreasuryManager — 服务费收取
  • WithdrawalManager — 商家资金提现

所有地址请参阅 contracts/core/deployed-addresses/PRODUCTION.md。

运营钱包

0x21581Cb82D9a66126fBe7639f4AF55DdfEA48E26 — 部署合约、将商家加入白名单,并为 HD 钱包归集发送 Gas。

本地开发

# Prerequisites: Node 18+, pnpm
pnpm install
cd contracts/core && npm install

# Start Hardhat node (terminal 1)
npx hardhat node

# Deploy + setup (terminal 2)
cd contracts/core
npx hardhat run scripts/setup-local.ts --network localhost

# Start API (terminal 3)
pnpm dev:api

# Start checkout (terminal 4)
pnpm dev:checkout

# Start merchant dashboard (terminal 5)
pnpm dev:merchant

API 端点

方法路径身份验证说明
POST/commercesPrivy注册商家
GET/commerces/:idPublic商家信息
GET/commerces/:id/balancesPrivy多链余额
POST/invoicesPrivy创建发票
GET/invoices/:idPublic发票详情 + 代币
POST/blockchain/createPublic创建链上发票
GET/blockchain/status/:idPublic链上发票状态
POST/deposit/generatePublic生成 HD 存款地址
GET/deposit/status/:idPublic存款监控状态
GET/statsPublic营收统计(公开构建中)
GET/prices/ratesPublic数据库中的法币 + 代币汇率
POST/prices/update-fiat-ratesCron更新法币汇率(OpenExchangeRates)
POST/prices/update-token-pricesCron更新代币价格(CoinGecko)

定时任务

在 DigitalOcean(或任何调度器)中将以下任务配置为定时任务:

任务URL计划说明
法币汇率POST /prices/update-fiat-rates每小时从 OpenExchangeRates 更新 USD→COP/EUR/BRL/MXN/ARS 汇率
代币价格POST /prices/update-token-prices每小时从 CoinGecko 更新 USDC/USDT/COPm 汇率
使发票过期POST /orders/expire-orders每分钟将过期发票标记为 Expired
处理邮件POST /notifications/process-emails每分钟通过 Resend 发送付款确认邮件
处理 WebhookPOST /notifications/process-url-confirmations每分钟调用商家确认 URL

基础 URL:https://api.voulti.com

需要的环境变量:OPENEXCHANGERATE_APPID、COINGECKO_APIKEY、RESEND_APIKEY。

环境变量

所有必需变量请参见 .env.example。

评论

支持 Markdown

第一次接触 MCP?

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

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