Skip to content
Conduit

mcp server

voulti

Crypto payment gateway for merchants. Accept USDC, USDT and stablecoins on multiple networks.

csacanam/voulticommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

Before you start

  • Node.js 20 or newer
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "voulti": {
      "command": "npx",
      "args": [
        "-y",
        "voulti-mcp"
      ]
    }
  }
}

same format Cursor, GitHub Copilot CLI, Junie, JetBrains AI Assistant, Augment (Auggie CLI), Factory Droid, Kiro, Devin CLI +12

Values in angle brackets are placeholders. Restart Claude Desktop after editing its config.Claude Desktop docs

README

synced Oct 26, 2026

Crypto payment gateway for merchants. Accept USDC, USDT and stablecoins on 5 networks.

Architecture

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

Networks

NetworkChain IDTokens
Celo42220USDC, USDT, COPm
Arbitrum42161USDC, USD₮0
Polygon137USDC, USDT0
Base8453USDC
BSC56USDC, USDT

For AI agents

Voulti is agent-usable end to end — the integration API needs no API key:

  • MCP server: claude mcp add voulti -- npx -y voulti-mcp — tools create_invoice, get_invoice, get_payment_link. See mcp/README.md.
  • Agent skill: npx skills add csacanam/voulti — or read it at voulti.com/skill.md.
  • Plain HTTP: POST https://api.voulti.com/invoices with { commerce_id, amount_fiat, reference? } → hosted checkout link. LLM index: voulti.com/llms.txt.

Features

  • Self-service registration — merchant connects wallet, names business, done
  • Two payment methods — Connect Wallet or Pay by Address (QR + deposit)
  • Multi-chain balances — aggregated by token, network auto-selected
  • Send funds — withdraw to any wallet from dashboard
  • HD wallet sweep — automatic deposit detection and settlement
  • Partial/over payment handling — auto-refund on overpay, wait on partial
  • i18n — Spanish and English

Smart Contracts

Modular proxy architecture deployed on 5 networks:

  • DerampProxy — entry point, routes calls to modules
  • DerampStorage — centralized data store
  • AccessManager — roles, token/commerce whitelisting
  • InvoiceManager — invoice lifecycle
  • PaymentProcessor — payment execution, fee calculation
  • TreasuryManager — service fee collection
  • WithdrawalManager — commerce fund withdrawals

See contracts/core/deployed-addresses/PRODUCTION.md for all addresses.

Operator Wallet

0x21581Cb82D9a66126fBe7639f4AF55DdfEA48E26 — deploys contracts, whitelists commerces, sends gas for HD wallet sweeps.

Local Development

# 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 Endpoints

MethodPathAuthDescription
POST/commercesPrivyRegister commerce
GET/commerces/:idPublicCommerce info
GET/commerces/:id/balancesPrivyMulti-chain balances
POST/invoicesPrivyCreate invoice
GET/invoices/:idPublicInvoice details + tokens
POST/blockchain/createPublicCreate on-chain invoice
GET/blockchain/status/:idPublicOn-chain invoice status
POST/deposit/generatePublicGenerate HD deposit address
GET/deposit/status/:idPublicDeposit monitoring status
GET/statsPublicRevenue stats (building in public)
GET/prices/ratesPublicFiat + token rates from DB
POST/prices/update-fiat-ratesCronUpdate fiat rates (OpenExchangeRates)
POST/prices/update-token-pricesCronUpdate token prices (CoinGecko)

Cron Jobs

Configure these as scheduled jobs in DigitalOcean (or any scheduler):

JobURLScheduleDescription
Fiat ratesPOST /prices/update-fiat-ratesEvery hourUpdates USD→COP/EUR/BRL/MXN/ARS rates from OpenExchangeRates
Token pricesPOST /prices/update-token-pricesEvery hourUpdates USDC/USDT/COPm rates from CoinGecko
Expire invoicesPOST /orders/expire-ordersEvery minuteMarks expired invoices as Expired
Process emailsPOST /notifications/process-emailsEvery minuteSends payment confirmation emails via Resend
Process webhooksPOST /notifications/process-url-confirmationsEvery minuteCalls commerce confirmation URLs

Base URL: https://api.voulti.com

Requires env vars: OPENEXCHANGERATE_APPID, COINGECKO_APIKEY, RESEND_APIKEY.

Environment Variables

See .env.example for all required variables.

↑↓ navigate openesc close