Algovoi Mcp Server

io.github.chopmob-cloud由 GitHub 帳號 chopmob-cloud 發布v1.1.3更新於 Oct 27, 2026

AlgoVoi crypto payments via MCP: USDC + native on Algorand, VOI, Hedera, Stellar.

已驗證STDIO僅桌面金融商業與電商

概覽

AI 產生的概覽

AlgoVoi MCP 伺服器,讓 AI 助理直接使用 Algorand、VOI、Hedera、Stellar 上的 USDC 與原生代幣加密支付工具。

可以做什麼
  • 建立與管理加密支付請求及託管結帳連結,涵蓋 Algorand、VOI、Hedera、Stellar、Base、Solana 與 Tempo
  • 查詢付款狀態,透過 webhook 或 API 狀態檢查確認入帳
  • 設定 webhook 密鑰後驗證傳入的 webhook 簽章
  • 管理收款錢包位址與租戶設定,支援直連 API 或 AlgoVoi Cloud
  • 把同樣的支付能力提供給 Claude、Cursor、Windsurf 等 AI 助理
適用情境
適合需要讓助理為網路商店、捐款流程或 AI 代理付費閘道建立、追蹤或核對加密支付的場合,也適合查詢某筆帳單是否已在鏈上結算。
執行需求
以 npm 或 PyPI 套件形式透過 stdio 在使用者本機執行。需要從 AlgoVoi 儀表板取得的 API 金鑰,放在 ALGOVOI_API_KEY 中。ALGOVOI_API_BASE 用來選擇 API 主機;ALGOVOI_TENANT_ID 與 ALGOVOI_PAYOUT_ADDRESS 僅在直連 API 時需要,使用 AlgoVoi Cloud 時無須設定。需要能連線至 AlgoVoi API 的網路。
安裝前請注意
涉及真實資金:工具可建立支付請求與撥款,執行前應逐項確認。需要密鑰 ALGOVOI_API_KEY,選用 ALGOVOI_WEBHOOK_SECRET,設定中還包含收款錢包位址。支付與訂單資料會傳送到 AlgoVoi API 主機,該主機可能是第三方託管服務。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Algovoi Mcp Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

AlgoVoi is available for acquisition — docs.algovoi.co.uk/acquisition


AlgoVoi Platform Adapters

Drop-in payment adapters for connecting e-commerce platforms, AI agent frameworks, and automation tools to AlgoVoi — a compliance-aware crypto payment gateway where agents negotiate a shared stablecoin settlement lane: seven native mainnet chains, with cross-chain settlement negotiated between agents on any two of them. The adapters in this repository are end-to-end tested on the seven native chains (Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo).


What is AlgoVoi?

AlgoVoi is compliance-aware payment infrastructure for stablecoin settlement. The same gateway that negotiates settlement across seven native mainnet chains — in any cross-chain pairing among them — also runs continuous sanctions screening, KYB gating, and a write-once SHA-256 audit chain on every payment — so merchants and autonomous agents don't quietly carry UK MLRs / OFAC / SAMLA exposure they didn't sign up for. Compliance posture is published live at /compliance/attestation.

The compliance perimeter is the product. Multi-chain breadth — seven native mainnet chains (Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo), with settlement negotiated between agents on any two of them rather than fixed to one — and protocol coverage (x402, MPP, AP2, A2A) are how we deliver it on a single endpoint, without merchants having to manage wallets or blockchain integrations directly.

Supported settlement assets:

AssetNetworkDetails
USDCAlgorand mainnetNative ASA (ASA ID 31566704), issued by Circle
aUSDCVOI mainnetNative ASA (ASA ID 302190), Aramid-bridged USDC
USDCHedera mainnetHTS token 0.0.456858, issued by Circle
USDCStellar mainnetCredit asset issued by Circle (GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN); receiver must have a trust line before accepting
USDCBase mainnetERC-20 token (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913), issued by Circle
USDCSolana mainnetSPL token (EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v), issued by Circle
USDCeTempo mainnetTIP-20 token (0x20c000000000000000000000b9537d11c60e8b50, 6 decimals); Tempo is a Stripe/Paradigm EVM L1 (chain ID 4217) with USDC as the native gas token
ALGO / VOI / HBAR / XLM / ETH / SOLAny mainnetNative coin payments also supported on every chain (6/6/8/7/18/9 decimals respectively)

These seven are the native chains; agents on different chains negotiate a shared lane and settle once, any cross-chain pairing among them. The hosted AlgoVoi pay rail additionally settles natively on Arc, Monad, Polygon, Arbitrum and OP Mainnet. The platform integration guides and adapter smoke tests in this repository cover the seven native chains above.


What is this repository?

This repository contains production-ready payment adapters and integration documentation for connecting e-commerce platforms, custom applications, and AI agent services to AlgoVoi Tenant Services.

Included:

  • Recurring / standing-authority subscriptions (Recurr/) — Tier 2 lets a customer sign ONCE and AlgoVoi auto-pulls per cycle on all 7 chains (Algorand SpendingCapVault, EVM ERC-20 approve, Solana SPL Approve, Hedera HTS allowance, Stellar Soroban auth_entry, VOI). Per-chain wallet-side reference flows + chain-agnostic merchant-side examples. native-python/algovoi.py v1.2.0+ ships the merchant HTTP wrappers (8 lifecycle methods)
  • Drop-in plugins for WooCommerce, OpenCart, PrestaShop, and Shopware (tested and deployed)
  • CMS payment gateways for Drupal Commerce, Easy Digital Downloads (WordPress), and Ghost — all Comet-validated 2026-04-15
  • Native adapters for PHP, Python, Go, Rust, and TypeScript (zero external dependencies) — all at v1.2.0 with full Tier 2 (recurring) surface
  • Agent protocol middleware for MPP and AP2 (gate APIs behind payment challenges)
  • AI platform adapters for OpenAI, Claude, Gemini, Bedrock, Cohere, xAI/Grok, and Mistral (MPP + AP2 + x402, all 7 chains)
  • AI agent framework adapters for LangChain, LlamaIndex, CrewAI, Hugging Face, AutoGen, Semantic Kernel, Pydantic AI, DSPy, Vercel AI SDK, Google A2A, LangGraph, and Agno — gate LLM-agnostic pipelines, RAG chains, multi-agent crews, and autonomous agents (MPP + AP2 + x402, all 7 chains)
  • No-code / automation adapters for Zapier, Make (Integromat), n8n, and X (Twitter) — drop-in Python classes that bridge AlgoVoi payment flows into any no-code workflow, with webhook verification, MPP + x402 + AP2 challenge generation, and all 14 networks (7 mainnet + 7 testnet); the X adapter auto-posts payment confirmations and checkout links to X via webhook (OAuth 1.0a, stdlib-only, 4-chain mainnet verified 2026-04-18)
  • MCP server (@algovoi/mcp-server / algovoi-mcp) — exposes 13 AlgoVoi tools natively inside Claude Desktop, Claude Code, Cursor, and Windsurf via the Model Context Protocol
  • x402 embeddable widget for any HTML page (Cloudflare Pages)
  • Integration guides and Python adapters for 45+ platforms — all end-to-end tested on api.algovoi.co.uk across all 7 chains

AlgoVoi Cloud — No-Code Dashboard

The fastest way to accept stablecoin payments — no server access or code required. dash.algovoi.co.uk is the hosted SaaS version of AlgoVoi: sign up with your email, verify your identity, and connect your platforms through a guided dashboard wizard. Each wizard takes under 5 minutes.

Sign up

  1. Go to dash.algovoi.co.uk/signup
  2. Enter your email and choose your account type (Individual, Sole Trader, or Company)
  3. Your AlgoVoi API key is shown once on screen — copy it immediately
  4. Complete KYC/KYB verification in the dashboard to unlock mainnet payments

Supported chains: Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo

Connect a platform

After signing in, open Connect from the sidebar. Every integration has a setup badge:

BadgeMeaning
⚡ 1-clickConnect through an existing account — no downloads
🔧 UploadDownload a zip and upload through your platform's admin UI
⌨️ CLIRequires shell access — run commands on your server
E-commerce
PlatformSetupNotes
WooCommerce🔧 UploadWordPress + WooCommerce
Magento 2⌨️ CLIAdobe Commerce / Magento Open Source
PrestaShop🔧 UploadPrestaShop 8.x — hosted + wallet checkout
OpenCart🔧 UploadOpenCart 4 payment extension
Shopware🔧 UploadShopware 6 payment plugin
Gravity Forms🔧 UploadWordPress form builder with payments
GiveWP🔧 UploadWordPress donation & fundraising plugin
Shopify—Coming soon (OAuth app install)
Automation
PlatformSetupNotes
Zapier⚡ 1-clickConnect 6,000+ apps via Zaps
n8n⚡ 1-clickOpen-source workflow automation
Make (Integromat)⚡ 1-clickVisual automation platform
Pabbly Connect⚡ 1-clickAffordable automation for 1,000+ apps
Activepieces⚡ 1-clickOpen-source automation (self-host or cloud)
X (Twitter)⌨️ CLIAuto-post tweets on payment confirmation
Messaging Bots
PlatformSetupNotes
X (Twitter) Bot⚡ 1-clickCustomers tweet pay £X → hosted USDC checkout link auto-replied
Telegram Bot⚡ 1-clickPayment-confirmed reply after Telegram-initiated checkout
Viber Bot⚡ 1-clickViber webhook — payment links and confirmations via Viber messages
AI Assistants
PlatformSetupNotes
Claude / Cursor / Windsurf⚡ 1-clickAlgoVoi MCP server — 13 payment tools inside your AI assistant

KYC / KYB verification

Before your first mainnet payment, upload the required documents through the Onboarding page:

Account typeRequired documents
IndividualGovernment ID, Selfie, Proof of Address, Source of Funds
Sole TraderSame as Individual
CompanyCertificate of Incorporation, Director ID, Beneficial Owner Register, Memorandum of Association, plus director personal docs

Accepted formats: PDF, JPEG, PNG, WebP — max 50 MB per file. The dashboard auto-advances to active status when all required documents are collected.


Repository structure

platform-adapters/├── Recurr/               # Tier 2 — standing-authority recurring payments (per-chain│                         #          wallet-side flows + chain-agnostic merchant examples).│                         #          Lives alongside the language adapters which carry│                         #          the merchant HTTP wrappers (native-python v1.2.0+).├── woocommerce/          # WooCommerce plugin (single PHP file)├── opencart/             # OpenCart 4 extensions (hosted + wallet)├── prestashop/           # PrestaShop 8 modules (hosted + wallet)├── shopware/             # Shopware 6 plugin (Symfony handlers)├── native-php/           # Framework-free PHP adapter├── native-python/        # Stdlib-only Python adapter├── native-go/            # Stdlib-only Go package├── native-rust/          # Zero-crate Rust library├── native-typescript/    # Single-file TS adapter (Node 18+/Bun/Deno/browsers/Edge)├── magento2/             # Magento 2 / Adobe Commerce module (PHP)├── amazon-mws/           # Amazon SP-API webhook adapter (Python)├── tiktok-shop/          # TikTok Shop Open Platform adapter (Python)├── squarespace/          # Squarespace Commerce webhook adapter (Python)├── wix/                  # Wix Payment Provider SPI (Velo)├── mpp-adapter/          # MPP server middleware (Python)├── ap2-adapter/          # AP2 server middleware (Python)├── shopify-app/          # Private — Shopify payment app (Cloudflare Pages, not distributed)├── x402-widget/          # Embeddable payment widget (Web Component)││   — Live-tested Python webhook adapters (4 original chains verified 2026-04-14; Base + Solana added 2026-04-22/23; Tempo added 2026-04-23) —├── allegro/              # Allegro marketplace (Poland / CEE)├── bigcommerce/          # BigCommerce webhook adapter (partial — see note)├── bolcom/               # Bol.com (Netherlands / Belgium)├── cdiscount/            # Cdiscount (France / Belgium)├── cex/                  # CeX (webstore operator bypass)├── discord/              # Discord interactions payment adapter (Ed25519 — needs real app keypair)├── ebay/                 # eBay Platform Notifications adapter├── ecwid/                # Ecwid / Lightspeed E-Series adapter├── etsy/                 # Etsy webhook adapter├── faire/                # Faire B2B wholesale adapter (docs only — API approval required)├── flipkart/             # Flipkart Seller API adapter (India)├── freshbooks/           # FreshBooks invoice payment adapter├── instagram-shops/      # Instagram & Facebook Shops adapter├── jumia/                # Jumia seller adapter (docs only — no webhook endpoint)├── lazada/               # Lazada open platform adapter (SE Asia)├── mercadolibre/         # Mercado Libre adapter (Latin America)├── myob/                 # MYOB AccountRight poll-based adapter├── onbuy/                # OnBuy marketplace adapter (UK)├── printful/             # Printful print-on-demand adapter├── printify/             # Printify print-on-demand adapter (docs only — no webhook endpoint)├── quickbooks-online/    # QuickBooks Online invoice adapter├── rakuten/              # Rakuten marketplace adapter├── sage-business-cloud/  # Sage Business Cloud invoice adapter├── shopee/               # Shopee open platform adapter (SE Asia)├── telegram/             # Telegram Bot payment adapter├── tokopedia/            # Tokopedia seller adapter (Indonesia)├── truelayer/            # TrueLayer open banking adapter (ES512 — needs real signing key)├── walmart/              # Walmart Marketplace adapter├── wave/                 # Wave Accounting invoice adapter├── whatsapp/             # WhatsApp Business API adapter├── wormhole/             # Wormhole cross-chain bridge adapter├── x402-ai-agents/       # x402 autonomous AI agent payment adapter├── ai-adapters/│   ├── openai/           # Payment-gated OpenAI / compatible API wrappers (MPP + AP2 + x402)│   ├── claude/           # Payment-gated Anthropic Claude wrappers (MPP + AP2 + x402)│   ├── gemini/           # Payment-gated Google Gemini wrappers (MPP + AP2 + x402)│   ├── bedrock/          # Payment-gated Amazon Bedrock Converse API wrappers (MPP + AP2 + x402)│   ├── cohere/           # Payment-gated Cohere ClientV2 wrappers (MPP + AP2 + x402)│   ├── xai/              # Payment-gated xAI Grok wrappers (MPP + AP2 + x402)│   └── mistral/          # Payment-gated Mistral AI wrappers (MPP + AP2 + x402)├── ai-agent-frameworks/│   ├── langchain/        # LangChain gate — any ChatModel, LCEL chain, RAG pipeline, or ReAct agent│   ├── llamaindex/       # LlamaIndex gate — QueryEngine, ChatEngine, RAG pipeline, or ReAct agent│   ├── crewai/           # CrewAI gate — crew.kickoff() + BaseTool for multi-agent crews│   ├── huggingface/      # Hugging Face gate — InferenceClient, transformers pipeline, smolagents tool│   ├── autogen/          # AutoGen gate — initiate_chat() + callable tool (0.2.x + 0.4.x)│   ├── semantic-kernel/  # Semantic Kernel gate — chat completion, KernelFunction, SK plugin│   ├── pydantic-ai/      # Pydantic AI gate — any Agent, deps injection, provider:model strings│   ├── dspy/             # DSPy gate — any Predict / ChainOfThought / ReAct / compiled program│   ├── vercel-ai-sdk/    # Vercel AI SDK gate — generateText, streamText, tool() — TypeScript│   ├── a2a/              # Google A2A gate — A2A v1.0 REST (6 routes), agent card + extended card, task store│   ├── langgraph/        # LangGraph gate — StateGraph invoke/stream, ToolNode, create_react_agent│   └── agno/             # Agno gate — pre_hooks, ASGI middleware (AgentOS), run_agent + arun_agent├── no-code/              # No-code / automation adapters (Zapier, Make, n8n, X) — v1.0.0, 225+ tests│   ├── zapier/           #   AlgoVoiZapier — ZapierActionResult, webhook bridge, action handlers│   ├── make/             #   AlgoVoiMake — Make bundle dict, module handlers│   ├── n8n/              #   AlgoVoiN8n — n8n item dict, operation handlers│   └── x/                #   AlgoVoiX — X (Twitter) webhook adapter; auto-posts payment confirmations & checkout links via OAuth 1.0a├── mcp-server/           # MCP server — 13 AlgoVoi tools for Claude Desktop / Claude Code / Cursor / Windsurf│   ├── typescript/       #   @algovoi/mcp-server (npm) — `npx -y @algovoi/mcp-server`│   └── python/           #   algovoi-mcp (PyPI) — `uvx algovoi-mcp`├── drupal-commerce/      # Drupal 10/11 + Commerce 2/3 payment gateway module├── easy-digital-downloads/ # EDD 3.2+ WordPress plugin (digital downloads, licensing)├── ghost/                # Ghost 5.x paid-membership grant-on-payment adapter├── xero/                 # Xero invoice payment adapter├── yapily/               # Yapily open banking adapter├── zoho-books/           # Zoho Books invoice adapter│├── {platform}.md         # Integration guides (45+ platforms)└── README.md

Live-tested adapters

The following adapters have been end-to-end tested against a live AlgoVoi tenant on algorand_mainnet, voi_mainnet, hedera_mainnet, stellar_mainnet, base_mainnet, and solana_mainnet:

PlatformDemo store / notesHosted chainsExtension chains
OpenCart 4your-domain.exampleAlgorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
PrestaShop 8.2.5your-domain.exampleAlgorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
Shopware 6.7.8.2your-domain.exampleAlgorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
WooCommerce 10.6.2 / WordPress 6.9.4your-domain.exampleAlgorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
Shopify (Cloudflare Pages)algovoi-3.myshopify.comAlgorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Magento 2 / Adobe Commerce—Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Amazon SP-API— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
TikTok Shop— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Squarespace— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Wix eCommerce— (SPI checkout)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Native PHP—Algorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
Native Python—Algorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
Native Go—Algorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
Native Rust—Algorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
AlgoVoi 1.0api.algovoi.co.uk/shop-demoAlgorand, VOI, Hedera, Stellar, Base, Solana, TempoAlgorand, VOI
QuickBooks Online— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Xero— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
FreshBooks— (B2B webhook, form-urlencoded + fetch_order)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Sage Business Cloud— (polling, no push webhooks)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Zoho Books— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Wave— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
MYOB— (polling, no push webhooks)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
eBay— (Platform Notifications webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Ecwid / Lightspeed E-Series— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Etsy— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Rakuten Ichiba— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
OnBuy— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Yapily— (open banking webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Walmart Marketplace— (B2B webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
CeX— (operator bypass webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Printful— (print-on-demand webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Wormhole— (cross-chain bridge webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
WhatsApp Business— (Meta webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Instagram Shops— (Meta webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Telegram— (Bot API webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Allegro— (marketplace webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Bol.com— (marketplace webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Cdiscount— (marketplace webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Flipkart— (Seller API webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Lazada— (open platform webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Mercado Libre— (marketplace webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Shopee— (open platform webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Tokopedia— (marketplace webhook)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
x402 AI Agent adapter— (x402 spec v1: accepts array, CAIP-2 networks, microunit amounts, payload.signature proof)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
MPP Gate— (100% IETF draft-ryan-httpauth-payment: challenge echo, CAIP-2 routing, HMAC IDs, on-chain verification — v2.1.0, 153/153 tests, live smoke-tested all 4 original chains 13 Apr 2026; Base + Solana added 2026-04-22/23; Tempo added 2026-04-23)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
AP2 Gate— (payment request + local ed25519 verification)Algorand, VOI—
LangChain (AI agent frameworks)— (MPP + AP2 + x402; gates any ChatModel, LCEL chain, RAG pipeline, or ReAct agent tool — 76/77 tests, Phase 1+2 PASS 5/5 chains 16 Apr 2026, Comet-validated)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
LlamaIndex (AI agent frameworks)— (MPP + AP2 + x402; gates LlamaIndex LLM, QueryEngine, ChatEngine, or ReAct agent tool — 80/80 tests, Comet-validated 16 Apr 2026)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
CrewAI (AI agent frameworks)— (MPP + AP2 + x402; gates crew.kickoff() + BaseTool with PaymentToolInput args_schema — 68/68 tests, Comet-validated 16 Apr 2026)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Hugging Face (AI agent frameworks)— (MPP + AP2 + x402; gates InferenceClient.chat_completion(), transformers pipeline, and smolagents Tool — 83/83 tests, 16 Apr 2026)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
AutoGen (AI agent frameworks)— (MPP + AP2 + x402; gates initiate_chat() + callable FunctionTool-compatible tool; llm_config property; 0.2.x + 0.4.x — 86/86 tests, 16 Apr 2026)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Semantic Kernel (AI agent frameworks)— (MPP + AP2 + x402; gates chat completion, kernel.invoke(), and @kernel_function plugin; asyncio.run() sync wrappers — 76/76 tests, 16 Apr 2026)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Pydantic AI (AI agent frameworks)— (MPP + AP2 + x402; gates any Agent with deps injection, all provider:model strings, pydantic_ai.tools.Tool-compatible — 77/77 tests, 16 Apr 2026)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
DSPy (AI agent frameworks)— (MPP + AP2 + x402; gates any Predict / ChainOfThought / ReAct / compiled program; dspy.context isolation, plain callable tool for ReAct — 78/78 tests, Phase 1 9/9 PASS 16 Apr 2026, Comet-validated)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Vercel AI SDK (AI agent frameworks)— (MPP + AP2 + x402; TypeScript; generateText + streamText + tool() + nextHandler; any @ai-sdk/* provider — 79/79 tests, Phase 1 12/12 PASS 16 Apr 2026, Comet-validated)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Google A2A (AI agent frameworks)— (MPP + AP2 + x402; A2A v1.0 REST server + client; 6 live endpoints: /.well-known/agent.json, /extendedAgentCard, /message:send, /tasks, /tasks/{id}, /tasks/{id}:cancel; extended agent card with payment auth metadata; legacy JSON-RPC 2.0 compat kept — 120/120 tests, Phase 1 12/12 PASS 16 Apr 2026, Comet-validated)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
LangGraph (AI agent frameworks)— (MPP + AP2 + x402; gates compiled StateGraph invoke/stream; AlgoVoiPaymentTool is BaseTool subclass, ToolNode-compatible, create_react_agent-compatible; flask_guard + flask_agent convenience wrappers — 77/77 tests, Phase 1 12/12 PASS 16 Apr 2026, Comet-validated)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Agno (AI agent frameworks)— (MPP + AP2 + x402; gates any Agno Agent via pre_hooks, ASGI middleware for AgentOS, run_agent/arun_agent wrappers, flask_guard + flask_agent; AgnoPaymentRequired exception — 88/88 tests, Phase 1 13/13 PASS 16 Apr 2026, Comet-validated)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—
Zapier (no-code)— (webhook bridge + action handlers: create_payment_link, verify_payment, list_networks, generate_challenge MPP/x402/AP2; ZapierActionResult return type — 77/77 tests, Phase 1+2 PASS 17 Apr 2026, Comet-validated)24 networks (12 mainnet + 12 testnet)—
Make / Integromat (no-code)— (module handlers: create_payment_link, verify_payment, list_networks, generate_challenge MPP/x402/AP2; Make bundle dict return type — 71/71 tests, Phase 1+2 PASS 17 Apr 2026, Comet-validated)24 networks (12 mainnet + 12 testnet)—
n8n (no-code)— (operation handlers: create_payment_link, verify_payment, list_networks, generate MPP/x402/AP2 challenges; n8n item dict return type — 77/77 tests, Phase 1+2 PASS 17 Apr 2026, Comet-validated)24 networks (12 mainnet + 12 testnet)—
X / Twitter (no-code)— (webhook adapter + OAuth 1.0a tweet posting; auto-posts payment confirmations & checkout links when AlgoVoi fires a webhook; 62/62 unit tests; 4-chain mainnet e2e verified 18 Apr 2026; Base + Solana added 2026-04-22/23; Tempo added 2026-04-23 — payments confirmed on-chain, tweets posted automatically)Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo—

Last webhook test: 14 April 2026 — all 39 testable adapters passed on all 4 original chains (algorand_mainnet, voi_mainnet, hedera_mainnet, stellar_mainnet); Base and Solana added 2026-04-22/23. Checkout pages validated live via Comet CDP. 6 adapters skipped: BigCommerce (partial — order-amount fetch needs real API credentials), Discord (Ed25519), TrueLayer (ES512), Faire/Jumia/Printify (docs only).

Accounting adapters unit tests: 339 passing, 0 failing (includes replay attack prevention coverage — commit 5025c4e)

AI agent adapters — production ready as of 13 April 2026:

  • x402: spec v1 compliant — x402Version: 1, accepts array, CAIP-2 network IDs, string microunit amounts, payload.signature proof format. Real payments smoke-tested on all 4 original chains (Algorand, VOI, Stellar, Hedera mainnet); Base and Solana added 2026-04-22/23. x402/verify confirmed verified:true on each. 76/76 unit tests passing. Adapter v2.0.0.
  • MPP: 100% IETF spec compliant (v2.1.0) — id (HMAC-SHA256), method, intent="charge", request= (charge intent object), expires, challenge echo validation (Table 3), CAIP-2 network routing, replay protection, spec-compliant Payment-Receipt. On-chain verification smoke-tested on all 4 original chains (Algorand, VOI, Hedera, Stellar) 13 Apr 2026 ×2; Base and Solana added 2026-04-22/23. 153/153 unit tests.
  • AP2: production ready (v2.0.0) — AP2 v0.1 CartMandate/PaymentMandate with AlgoVoi crypto-algo extension. CartMandate issues PaymentMethodData per extension schema (network, receiver, amount_microunits, asset_id, min_confirmations, memo_required). PaymentMandate accepts payment_response.details.{network, tx_id, note_field}. ed25519 sig + on-chain AVM verification. PyNaCl + cryptography fallback both confirmed. 81/81 tests.

Two payment flows

Hosted checkout — Customer is redirected to a secure AlgoVoi-hosted payment page. Supports Algorand, VOI, Hedera, Stellar, Base, Solana, and Tempo. Works with any wallet (Pera, Defly, Lute, HashPack, Freighter, LOBSTR, MetaMask, Phantom, …). Payment confirmed via webhook or API status check. Used by all platforms including Shopify.

Extension payment — Customer pays directly on the store page using the AlgoVoi browser extension and algosdk. Supports Algorand and VOI only (AVM chains). Buyers paying on Hedera or Stellar use hosted checkout with their chain-native wallet. No redirect required for extension flow. Available on WooCommerce, OpenCart, PrestaShop, and Shopware.

Shopify checkout extension — "Pay with Crypto →" link rendered on the thank-you page via Shopify Checkout UI Extension (Preact). Customer selects their chain on a dedicated pay page. Webhook automatically adds payment link to order notes.


E-commerce integrations

PlatformGuideFilesStatus
Native PHP—native-php/Available — drop-in, zero dependencies
Native Python—native-python/Available — stdlib only, no pip install
Native Go—native-go/Available — stdlib only, no go get
Native Rust—native-rust/Available — zero crates, pure stdlib
Shopifyshopify.mdPrivate (hosted service)Available — managed by AlgoVoi
WooCommercewoocommerce.mdwoocommerce/Available — hosted + extension
Magento 2 / Adobe Commercemagento.mdmagento2/Available — hosted checkout, Knockout.js
BigCommercebigcommerce.mdbigcommerce/Partial — webhook sig verified; order-amount fetch requires real store_hash / access_token
Wix eCommercewix.mdwix/Available — Payment Provider SPI (real checkout)
PrestaShopprestashop.mdprestashop/Available — hosted + extension
Squarespacesquarespace.mdsquarespace/Available — B2B webhook adapter
eBayebay.mdebay/Available — Python webhook adapter
Walmartwalmart.mdwalmart/Available — Python webhook adapter
Amazon SP-APIamazon.mdamazon-mws/Available — B2B webhook adapter
CeXcex.mdcex/Available — Python operator-bypass adapter
Ecwid / Lightspeed E-Seriesecwid.mdecwid/Available — Python webhook adapter
OpenCartopencart.mdopencart/Available — hosted + extension
Shopwareshopware.mdshopware/Available — hosted + extension
TikTok Shoptiktok-shop.mdtiktok-shop/Available — B2B webhook adapter

CMS integrations

Drop-in payment gateways for major content-management and publishing platforms. All three were shipped together on 15 April 2026 and Comet-validated end-to-end. Each adapter applies the full April 2026 + pass-2 hardening set (cancel-bypass guard, empty-secret HMAC reject, timing-safe compare, 64 KB body cap, https-only outbound, amount sanity, scheme guards, token length caps, mandatory payment cross-check on webhooks).

PlatformGuideFilesEngineStatus
Drupal Commercedrupal-commerce/README.mddrupal-commerce/Drupal 10 / 11 + Commerce 2 / 3Available — OffsitePaymentGatewayBase module, DI-driven, v1.0.0
Easy Digital Downloadseasy-digital-downloads/README.mdeasy-digital-downloads/EDD 3.2+ WordPress pluginAvailable — digital downloads + licensing + recurring, v1.0.0
Ghostghost/README.mdghost/Ghost 5.x (Python, Admin API / JWT)Available — grant-on-payment member upgrade, v1.0.0

Each adapter folder ships a README.md with a how-it-works diagram, quick-start, supported chains, webhook endpoint, security posture table, and dependency list.

Regional & international marketplace integrations

All regional marketplace adapters have been end-to-end tested on 14 April 2026 across all 4 original chains; Base and Solana added 2026-04-22/23. Checkout pages validated live via Comet CDP.

PlatformGuideRegionStatus
Flipkartflipkart.mdIndiaAvailable — flipkart/
Etsyetsy.mdGlobalAvailable — etsy/
Printfulprintful.mdGlobal (print-on-demand)Available — printful/
Printifyprintify.mdGlobal (print-on-demand)Docs only — no webhook endpoint
Bol.combolcom.mdNetherlands / BelgiumAvailable — bolcom/
Lazadalazada.mdSE Asia (MY, TH, PH, SG, ID, VN)Available — lazada/
Tokopediatokopedia.mdIndonesiaAvailable — tokopedia/
Rakutenrakuten.mdJapan / France / GermanyAvailable — rakuten/
Allegroallegro.mdPoland / Central & Eastern EuropeAvailable — allegro/
Shopeeshopee.mdSE Asia / BrazilAvailable — shopee/
Mercado Libremercadolibre.mdLatin AmericaAvailable — mercadolibre/
OnBuyonbuy.mdUnited KingdomAvailable — onbuy/
Jumiajumia.mdAfrica (NG, KE, EG, GH + more)Docs only — no webhook endpoint
Cdiscountcdiscount.mdFrance / BelgiumAvailable — cdiscount/
Fairefaire.mdGlobal (B2B wholesale)Docs only — faire/ — requires Faire API approval

Accounting integrations

All 7 accounting adapters are end-to-end tested on 14 April 2026 against api.algovoi.co.uk across all 4 original chains (28/28 pass); Base and Solana added 2026-04-22/23.

Adapter source is not publicly distributed. Integration guides are below. Download your adapter from the AlgoVoi dashboard after signing in with your API key.

PlatformGuideStatus
QuickBooks Onlinequickbooks-online.mdAvailable — private download
Xeroxero.mdAvailable — private download
FreshBooksfreshbooks.mdAvailable — private download (form-urlencoded webhook + fetch_order)
Sage Business Cloudsage-business-cloud.mdAvailable — private download (polling model, no push webhooks)
Zoho Bookszoho-books.mdAvailable — private download (webhook body must include ${INVOICE.INVOICE_TOTAL})
Wavewave.mdAvailable — private download
MYOBmyob.mdAvailable — private download (polling model, no push webhooks)

Social commerce integrations

PlatformGuideStatus
Telegramtelegram.mdAvailable — telegram/
Discorddiscord.mddiscord/ — Ed25519 signature; requires real Discord application keypair
WhatsApp Businesswhatsapp.mdAvailable — whatsapp/
Instagram & Facebook Shopsinstagram-shops.mdAvailable — instagram-shops/

Financial services integrations

PlatformGuideStatus
TrueLayertruelayer.mdtruelayer/ — ES512 JWK signature; requires real TrueLayer signing key
Yapilyyapily.mdAvailable — yapily/
Wormholewormhole.mdAvailable — wormhole/

AI agent & machine payment adapters

AdapterFilesDescriptionStatus
x402x402-ai-agents.md / x402-ai-agents/Autonomous AI agent payments via the x402 protocol (spec v1 — accepts array, CAIP-2 IDs, microunit amounts, payload.signature)Production ready — real payments smoke-tested on all 4 original chains (Algorand, VOI, Stellar, Hedera); Base and Solana added 2026-04-22/23, x402/verify confirmed on each. Adapter v2.0.0, 76/76 tests.
MPPmpp-adapter/mpp-adapter.md / mpp-adapter/Machine Payments Protocol server middleware — 100% IETF draft-ryan-httpauth-payment compliant (challenge echo validation, CAIP-2 network routing, HMAC challenge IDs, on-chain verification, replay protection)Production ready — 0.01 USDC live smoke-tested on all 4 original chains (Algorand, VOI, Hedera, Stellar) 13 Apr 2026; Base and Solana added 2026-04-22/23. Adapter v2.1.0, 153/153 tests.
AP2ap2-adapter/ap2-adapter.md / ap2-adapter/AP2 v0.1 CartMandate/PaymentMandate server middleware with AlgoVoi crypto-algo extension. ed25519 mandate signing + on-chain tx verification across all 7 chains (Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo).Production ready — 0.01 USDC live smoke-tested on all 4 original chains 13 Apr 2026; Base + Solana added 2026-04-22/23; Tempo added 2026-04-23. Real ed25519 sig verified. v2.0.0, 81/81 tests.

AI Platform Adapters

Drop-in payment gates for AI provider APIs. Each adapter wraps the AI call behind an on-chain payment check — the caller pays 0.01 USDC (or any configured amount) before the AI responds. All adapters accept OpenAI-format message lists and share a common interface: check(headers, body) → result, complete(messages) → str, flask_guard() convenience method.

PlatformClassSDK installProtocol supportFilesStatus
OpenAI + compatibleAlgoVoiMppAI / AlgoVoiAp2AI / AlgoVoiOpenAIpip install openaiMPP, AP2, x402ai-adapters/openai/Available — 101/101 tests + smoke-tested all 4 original chains 14 Apr 2026; Base + Solana added 2026-04-22/23; Tempo added 2026-04-23
Anthropic ClaudeAlgoVoiClaudepip install anthropicMPP, AP2, x402ai-adapters/claude/Available — 76/76 tests + smoke-tested all 4 original chains 14 Apr 2026; Base + Solana added 2026-04-22/23; Tempo added 2026-04-23
Google GeminiAlgoVoiGeminipip install google-genaiMPP, AP2, x402ai-adapters/gemini/Available — 75/75 tests (Phase 2 pending billing-enabled key)
Amazon BedrockAlgoVoiBedrockpip install boto3MPP, AP2, x402ai-adapters/bedrock/Available — 57/57 tests, Converse API (Nova / Claude / Llama / Titan models)
CohereAlgoVoiCoherepip install cohereMPP, AP2, x402ai-adapters/cohere/Available — Phase 1 + 1.5 + 2 PASS 4/4 chains 15 Apr 2026
xAI (Grok)AlgoVoiXaipip install xai-sdkMPP, AP2, x402ai-adapters/xai/Available — 70/70 tests + Phase 1+2 PASS 4/4 chains 15 Apr 2026 (Comet-validated)
MistralAlgoVoiMistralpip install mistralaiMPP, AP2, x402ai-adapters/mistral/Available — 70/70 tests + Phase 1 PASS 4/4 chains 15 Apr 2026 (Comet-validated)

All adapters support all 7 chains (Algorand, VOI, Hedera, Stellar, Base, Solana, Tempo) and all 3 payment protocols (MPP, AP2, x402).

OpenAI — MPP Quick start

python
from mpp_algovoi import AlgoVoiMppAI
gate = AlgoVoiMppAI(    openai_key        = "sk-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    networks          = ["algorand_mainnet"],   # or voi_mainnet / hedera_mainnet / stellar_mainnet    amount_microunits = 10000,                  # 0.01 USDC per call    resource_id       = "ai-chat",)
@app.route("/ai/chat", methods=["POST"])def chat():    result = gate.check(dict(request.headers))    if result.requires_payment:        return result.as_flask_response()   # 402 + WWW-Authenticate: Payment challenge    # result.receipt.payer, .tx_id, .amount available    return jsonify({"content": gate.complete(request.json["messages"])})

Supports any OpenAI-compatible provider via base_url:

Providerbase_url
OpenAI (default)https://api.openai.com/v1
Mistralhttps://api.mistral.ai/v1
Together AIhttps://api.together.xyz/v1
Groqhttps://api.groq.com/openai/v1
Perplexityhttps://api.perplexity.ai

OpenAI — AP2 Quick start

python
from ap2_algovoi import AlgoVoiAp2AI
gate = AlgoVoiAp2AI(    openai_key        = "sk-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    networks          = ["algorand-mainnet", "voi-mainnet"],    amount_microunits = 10000,                  # 0.01 USDC per call)
@app.route("/ai/chat", methods=["POST"])def chat():    body   = request.get_json(silent=True) or {}    result = gate.check(dict(request.headers), body)    if result.requires_payment:        return result.as_flask_response()   # 402 + X-AP2-Cart-Mandate header    # result.mandate.payer_address, .network, .tx_id available    return jsonify({"content": gate.complete(body["messages"])})

Claude — Quick start

python
from claude_algovoi import AlgoVoiClaude
gate = AlgoVoiClaude(    anthropic_key     = "sk-ant-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",               # "mpp" | "ap2" | "x402"    network           = "algorand-mainnet",    amount_microunits = 10000,               # 0.01 USDC per call)
@app.route("/ai/chat", methods=["POST"])def chat():    body   = request.get_json(silent=True) or {}    result = gate.check(dict(request.headers), body)    if result.requires_payment:        return result.as_flask_response()    return jsonify({"content": gate.complete(body["messages"])})

Models: claude-opus-4-7 · claude-sonnet-4-6 (default) · claude-haiku-4-5-20251001

Gemini — Quick start

python
from gemini_algovoi import AlgoVoiGemini
gate = AlgoVoiGemini(    gemini_key        = "AIza...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",               # "mpp" | "ap2" | "x402"    network           = "algorand-mainnet",    amount_microunits = 10000,               # 0.01 USDC per call)
@app.route("/ai/chat", methods=["POST"])def chat():    body   = request.get_json(silent=True) or {}    result = gate.check(dict(request.headers), body)    if result.requires_payment:        return result.as_flask_response()    return jsonify({"content": gate.complete(body["messages"])})

Models: gemini-2.0-flash (default) · gemini-2.0-flash-lite · gemini-2.5-pro

Bedrock — Quick start

python
from bedrock_algovoi import AlgoVoiBedrock
gate = AlgoVoiBedrock(    aws_access_key_id     = "AKIA...",       # or set AWS_ACCESS_KEY_ID env var    aws_secret_access_key = "wJal...",       # or set AWS_SECRET_ACCESS_KEY env var    aws_region            = "us-east-1",    algovoi_key           = "algv_...",    tenant_id             = "your-tenant-uuid",    payout_address        = "YOUR_ALGORAND_ADDRESS",    protocol              = "mpp",               # "mpp" | "ap2" | "x402"    network               = "algorand-mainnet",    amount_microunits     = 10000,               # 0.01 USDC per call    model                 = "amazon.nova-pro-v1:0",)
@app.route("/ai/chat", methods=["POST"])def chat():    body   = request.get_json(silent=True) or {}    result = gate.check(dict(request.headers), body)    if result.requires_payment:        return result.as_flask_response()    return jsonify({"content": gate.complete(body["messages"])})

Models (any model exposed by Bedrock Converse in your AWS region/account): amazon.nova-pro-v1:0 (default) · amazon.nova-lite-v1:0 · anthropic.claude-3-5-sonnet-20241022-v2:0 · meta.llama3-70b-instruct-v1:0 · amazon.titan-text-premier-v1:0

Cohere — Quick start

python
from cohere_algovoi import AlgoVoiCohere
gate = AlgoVoiCohere(    cohere_key        = "...",                     # Cohere API key    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",                     # "mpp" | "ap2" | "x402"    network           = "algorand-mainnet",    amount_microunits = 10000,                     # 0.01 USDC per call    model             = "command-r-plus-08-2024",)
@app.route("/ai/chat", methods=["POST"])def chat():    body   = request.get_json(silent=True) or {}    result = gate.check(dict(request.headers), body)    if result.requires_payment:        return result.as_flask_response()    return jsonify({"content": gate.complete(body["messages"])})

Models: command-r-plus-08-2024 (default — most capable) · command-r-08-2024 (balanced) · command-r7b-12-2024 (fastest)

xAI (Grok) — Quick start

python
from xai_algovoi import AlgoVoiXai
gate = AlgoVoiXai(    xai_key           = "xai-...",                  # xAI API key    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",                      # "mpp" | "ap2" | "x402"    network           = "algorand-mainnet",    amount_microunits = 10000,                      # 0.01 USDC per call    model             = "grok-4",)
@app.route("/ai/chat", methods=["POST"])def chat():    body   = request.get_json(silent=True) or {}    result = gate.check(dict(request.headers), body)    if result.requires_payment:        return result.as_flask_response()    return jsonify({"content": gate.complete(body["messages"])})

Models: grok-4 (default — latest, most capable) · grok-3 · grok-3-mini (fast + cheap) · grok-2-1212 · grok-2-vision-1212

Mistral — Quick start

python
from mistral_algovoi import AlgoVoiMistral
gate = AlgoVoiMistral(    mistral_key       = "...",                        # Mistral API key    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",                        # "mpp" | "ap2" | "x402"    network           = "algorand-mainnet",    amount_microunits = 10000,                        # 0.01 USDC per call    model             = "mistral-large-latest",)
@app.route("/ai/chat", methods=["POST"])def chat():    body   = request.get_json(silent=True) or {}    result = gate.check(dict(request.headers), body)    if result.requires_payment:        return result.as_flask_response()    return jsonify({"content": gate.complete(body["messages"])})

Models: mistral-large-latest (default — flagship) · mistral-medium-latest · mistral-small-latest · codestral-latest · open-mistral-nemo · pixtral-large-latest

OpenAI-format messages work across all seven platforms — system roles are extracted automatically where required (Claude, Bedrock), Gemini assistant roles are mapped to model internally, and Cohere, xAI, and Mistral all accept the system role natively via their respective SDKs.


AI Agent Framework Adapters

Gate entire orchestration frameworks behind on-chain payment — not just a single model provider. These adapters are LLM-agnostic: pass any pre-built ChatModel, LCEL chain, RAG pipeline, or ReAct agent and the payment check wraps the whole thing.

FrameworkClassInstallProtocol supportFilesStatus
LangChainAlgoVoiLangChain + AlgoVoiPaymentToolpip install langchain-core langchain-openaiMPP, AP2, x402ai-agent-frameworks/langchain/Available — 76/77 tests + Phase 1+2 PASS 5/5 chains 16 Apr 2026 (Comet-validated)
LlamaIndexAlgoVoiLlamaIndex + AlgoVoiPaymentToolpip install llama-indexMPP, AP2, x402ai-agent-frameworks/llamaindex/Available — 80/80 tests, Comet-validated 16 Apr 2026
CrewAIAlgoVoiCrewAI + AlgoVoiPaymentToolpip install crewaiMPP, AP2, x402ai-agent-frameworks/crewai/Available — 68/68 tests, Comet-validated 16 Apr 2026
Hugging FaceAlgoVoiHuggingFace + AlgoVoiPaymentToolpip install huggingface-hub smolagentsMPP, AP2, x402ai-agent-frameworks/huggingface/Available — 83/83 tests, 16 Apr 2026
AutoGenAlgoVoiAutoGen + AlgoVoiPaymentToolpip install pyautogenMPP, AP2, x402ai-agent-frameworks/autogen/Available — 86/86 tests, 16 Apr 2026
Semantic KernelAlgoVoiSemanticKernel + AlgoVoiPaymentPluginpip install semantic-kernelMPP, AP2, x402ai-agent-frameworks/semantic-kernel/Available — 76/76 tests, 16 Apr 2026
Pydantic AIAlgoVoiPydanticAI + AlgoVoiPaymentToolpip install pydantic-aiMPP, AP2, x402ai-agent-frameworks/pydantic-ai/Available — 77/77 tests, 16 Apr 2026
DSPyAlgoVoiDSPy + AlgoVoiPaymentToolpip install dspyMPP, AP2, x402ai-agent-frameworks/dspy/Available — 78/78 tests, Phase 1 9/9 PASS 16 Apr 2026, Comet-validated
Vercel AI SDKAlgoVoiVercelAI + VercelAIResultnpm i ai zodMPP, AP2, x402ai-agent-frameworks/vercel-ai-sdk/Available — 79/79 tests, Phase 1 12/12 PASS 16 Apr 2026, Comet-validated — TypeScript
Google A2AAlgoVoiA2A + AlgoVoiPaymentToolpip install flaskMPP, AP2, x402ai-agent-frameworks/a2a/Available — 84/84 tests, Phase 1 12/12 PASS 16 Apr 2026, Comet-validated
LangGraphAlgoVoiLangGraph + AlgoVoiPaymentToolpip install langgraphMPP, AP2, x402ai-agent-frameworks/langgraph/Available — 77/77 tests, Phase 1 12/12 PASS 16 Apr 2026, Comet-validated
AgnoAlgoVoiAgno + AlgoVoiPaymentToolpip install agnoMPP, AP2, x402ai-agent-frameworks/agno/Available — 88/88 tests, Phase 1 13/13 PASS 16 Apr 2026, Comet-validated

LangChain — Quick start

python
from langchain_algovoi import AlgoVoiLangChain
gate = AlgoVoiLangChain(    openai_key        = "sk-...",          # OpenAI key (or pass llm= to use any ChatModel)    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",             # "mpp" | "ap2" | "x402"    network           = "algorand-mainnet",    amount_microunits = 10000,             # 0.01 USDC per call)
@app.route("/ai/chat", methods=["POST"])def chat():    body   = request.get_json(silent=True) or {}    result = gate.check(dict(request.headers), body)    if result.requires_payment:        return result.as_flask_response()    return jsonify({"content": gate.complete(body["messages"])})

Bring your own model — pass any pre-built LangChain ChatModel instead of an OpenAI key:

python
from langchain_anthropic import ChatAnthropic
gate = AlgoVoiLangChain(    algovoi_key    = "algv_...",    tenant_id      = "...",    payout_address = "...",    llm            = ChatAnthropic(model="claude-opus-4-7"),)

Gate any LCEL chain or RAG pipeline:

python
chain = ChatPromptTemplate.from_template("Answer: {question}") | ChatOpenAI() | StrOutputParser()
result = gate.check(headers, body)if not result.requires_payment:    output = gate.invoke_chain(chain, {"question": body["question"]})

Drop into a ReAct agent as a BaseTool:

python
tool = gate.as_tool(resource_fn=lambda q: my_handler(q), tool_name="premium_kb")
from langchain.agents import create_react_agent, AgentExecutoragent    = create_react_agent(llm, tools=[tool], prompt=prompt)executor = AgentExecutor(agent=agent, tools=[tool])

The tool accepts {"query": "...", "payment_proof": "<base64>"}. Returns a challenge JSON dict if proof is absent or invalid; calls resource_fn(query) and returns the result if verified.

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/langchain/README.md

LlamaIndex — Quick start

python
from llamaindex_algovoi import AlgoVoiLlamaIndex
gate = AlgoVoiLlamaIndex(    openai_key        = "sk-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",    network           = "algorand-mainnet",    amount_microunits = 10000,)
# Gate a LlamaIndex QueryEngine (RAG pipeline)result = gate.check(headers, body)if not result.requires_payment:    answer = gate.query_engine_query(query_engine, body["query"])
# Gate a ChatEngine (multi-turn)if not result.requires_payment:    reply = gate.chat_engine_chat(chat_engine, body["message"])

ReAct agent tool — drop into any LlamaIndex agent:

python
from llama_index.core.agent import ReActAgent
tool  = gate.as_tool(resource_fn=my_handler, tool_name="premium_kb")agent = ReActAgent.from_tools([tool], llm=llm, verbose=True)

The tool accepts {"query": "...", "payment_proof": "<base64>"}. Returns a ToolOutput with .content (challenge JSON or resource result), .tool_name, .raw_input, .raw_output.

Bring your own LlamaIndex LLM (Anthropic, Google, Cohere, Bedrock, etc.):

python
from llama_index.llms.anthropic import Anthropic
gate = AlgoVoiLlamaIndex(    algovoi_key    = "algv_...",    tenant_id      = "...",    payout_address = "...",    llm            = Anthropic(model="claude-opus-4-7"),)

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/llamaindex/README.md

CrewAI — Quick start

python
from crewai_algovoi import AlgoVoiCrewAIfrom crewai import Agent, Task, Crew, LLM
gate = AlgoVoiCrewAI(    openai_key        = "sk-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",    network           = "algorand-mainnet",    amount_microunits = 10000,)
# Gate a crew.kickoff() callresult = gate.check(headers, body)if not result.requires_payment:    output = gate.crew_kickoff(my_crew, inputs={"topic": body["topic"]})
# Or use flask_guard with an inputs extractor@app.route("/ai/research", methods=["POST"])def research():    return gate.flask_guard(my_crew, inputs_fn=lambda b: {"topic": b.get("topic", "")})

Add AlgoVoiPaymentTool to any CrewAI agent:

python
tool = gate.as_tool(resource_fn=my_handler, tool_name="premium_kb")
researcher = Agent(    role      = "Research Analyst",    goal      = "Use premium_kb to answer questions.",    backstory  = "Expert researcher.",    tools     = [tool],    llm       = LLM(model="openai/gpt-4o"),)

The tool uses PaymentToolInput (Pydantic args_schema) — the agent generates {"query": "...", "payment_proof": "<base64>"}, CrewAI validates it, and _run(query, payment_proof) is called directly as kwargs. Any crewai.LLM provider (OpenAI, Anthropic, Gemini, Bedrock, Groq, Together AI, …) is supported via the LiteLLM router.

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/crewai/README.md

Hugging Face — Quick start

python
from huggingface_algovoi import AlgoVoiHuggingFace
gate = AlgoVoiHuggingFace(    hf_token          = "hf_...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",    network           = "algorand-mainnet",    amount_microunits = 10000,    model             = "meta-llama/Meta-Llama-3-8B-Instruct",)
# Gate InferenceClient.chat_completion()result = gate.check(headers, body)if not result.requires_payment:    reply = gate.complete(body["messages"])
# Gate a transformers pipelinefrom transformers import pipelinepipe = pipeline("text-generation", model="HuggingFaceH4/zephyr-7b-beta", token="hf_...")if not result.requires_payment:    answer = gate.inference_pipeline(pipe, body["messages"])

Drop into a smolagents ToolCallingAgent:

python
from smolagents import ToolCallingAgent, InferenceClientModel
tool  = gate.as_tool(resource_fn=my_handler, tool_name="premium_kb")model = InferenceClientModel(model_id="meta-llama/Meta-Llama-3-8B-Instruct")agent = ToolCallingAgent(tools=[tool], model=model)agent.run("Use premium_kb to answer my question.")

The tool accepts query and payment_proof (base64) as kwargs. Returns challenge JSON if proof absent/invalid; calls resource_fn(query) and returns the result if verified. Works with any smolagents agent type (ToolCallingAgent, CodeAgent, custom).

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/huggingface/README.md

AutoGen — Quick start

python
from autogen_algovoi import AlgoVoiAutoGen
gate = AlgoVoiAutoGen(    openai_key        = "sk-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",    network           = "algorand-mainnet",    amount_microunits = 10000,)
# Build agents from gate.llm_configfrom autogen import AssistantAgent, UserProxyAgentassistant  = AssistantAgent("assistant",  llm_config=gate.llm_config)user_proxy = UserProxyAgent("user_proxy", human_input_mode="NEVER",                             max_consecutive_auto_reply=3,                             code_execution_config=False)
# Gate a conversationresult = gate.check(headers, body)if not result.requires_payment:    output = gate.initiate_chat(assistant, user_proxy, body["message"], max_turns=5)

Callable tool — AutoGen 0.2.x:

python
tool = gate.as_tool(resource_fn=my_handler, tool_name="premium_kb")
@user_proxy.register_for_execution()@assistant.register_for_llm(description=tool.description, name=tool.name)def premium_kb(query: str, payment_proof: str = "") -> str:    return tool(query=query, payment_proof=payment_proof)

AutoGen 0.4.x FunctionTool:

python
from autogen_core.tools import FunctionToolfn_tool = FunctionTool(tool, description=tool.description, name=tool.name)

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/autogen/README.md

Semantic Kernel — Quick start

python
from semantic_kernel_algovoi import AlgoVoiSemanticKernel
gate = AlgoVoiSemanticKernel(    openai_key        = "sk-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",    network           = "algorand-mainnet",    amount_microunits = 10000,    model             = "gpt-4o",)
# Gate SK chat completion (sync wrapper around async SK API)result = gate.check(headers, body)if not result.requires_payment:    reply = gate.complete(body["messages"])
# Gate any KernelFunctionoutput = gate.invoke_function(kernel, summarise_fn, input=body["text"])

Add as a @kernel_function plugin:

python
plugin = gate.as_plugin(resource_fn=my_handler, plugin_name="premium_kb")kernel.add_plugin(plugin, plugin_name="premium_kb")# The LLM can select plugin.gate() via function calling (auto-invocation)

The gate function accepts query and payment_proof (base64). Returns challenge JSON if proof absent/invalid; calls resource_fn(query) and returns the result if verified.

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/semantic-kernel/README.md

Pydantic AI — Quick start

python
from pydanticai_algovoi import AlgoVoiPydanticAI
gate = AlgoVoiPydanticAI(    openai_key        = "sk-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",    network           = "algorand-mainnet",    amount_microunits = 10000,    model             = "openai:gpt-4o",     # any Pydantic AI provider:model string)
# Gate chat completionresult = gate.check(headers, body)if not result.requires_payment:    reply = gate.complete(body["messages"])
# Gate any pre-built Agent (with optional dependency injection)from pydantic_ai import Agentmy_agent = Agent("anthropic:claude-opus-4-7", system_prompt="Be concise.")output   = gate.run_agent(my_agent, body["prompt"], deps=my_deps)

Add as a pydantic_ai.tools.Tool:

python
from pydantic_ai.tools import Tool
tool  = gate.as_tool(resource_fn=my_handler, tool_name="premium_kb")agent = Agent("openai:gpt-4o", tools=[Tool(tool, name=tool.name, description=tool.description)])

The tool accepts query and payment_proof (base64). Returns challenge JSON if proof absent/invalid; calls resource_fn(query) if verified. Supports all Pydantic AI providers — OpenAI, Anthropic, Google, Groq, Ollama, and any OpenAI-compatible endpoint via base_url.

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/pydantic-ai/README.md

DSPy — Quick start

python
from dspy_algovoi import AlgoVoiDSPy
gate = AlgoVoiDSPy(    openai_key        = "sk-...",    algovoi_key       = "algv_...",    tenant_id         = "your-tenant-uuid",    payout_address    = "YOUR_ALGORAND_ADDRESS",    protocol          = "mpp",    network           = "algorand-mainnet",    amount_microunits = 10000,    model             = "openai/gpt-4o",   # DSPy provider/model string (slash, not colon))
# Gate any DSPy moduleimport dspy
class QA(dspy.Signature):    """Answer the question."""    question: str = dspy.InputField()    answer:   str = dspy.OutputField()
result = gate.check(headers, body)if not result.requires_payment:    answer = gate.run_module(dspy.ChainOfThought(QA), question=body["question"])

Gate a compiled DSPy program:

python
# Works with any compiled / optimised DSPy program (Predict, ChainOfThought, ReAct, MIPROv2…)result = gate.run_module(my_compiled_program, question=body["question"])

Drop into a ReAct agent as a plain callable tool:

python
tool  = gate.as_tool(resource_fn=my_handler, tool_name="premium_kb")react = dspy.ReAct(QA, tools=[tool])
lm = gate._ensure_lm()with dspy.context(lm=lm):    out = react(question=body["question"])

All LLM calls use dspy.context(lm=...) — global dspy.configure() state is never modified. DSPy's provider/model string format is supported for OpenAI, Anthropic, Google, Cohere, Groq, Ollama, and Azure OpenAI.

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/dspy/README.md

Vercel AI SDK — Quick start

typescript
import { openai } from "@ai-sdk/openai";import { AlgoVoiVercelAI } from "./vercel_ai_algovoi";
const gate = new AlgoVoiVercelAI({  algovoiKey:       "algv_...",  tenantId:         "your-tenant-uuid",  payoutAddress:    "YOUR_ALGORAND_ADDRESS",  protocol:         "mpp",  network:          "algorand-mainnet",  amountMicrounits: 10_000,  model:            openai("gpt-4o"),   // any @ai-sdk/* provider});
// Next.js App Router — one-linerexport const POST = (req: Request) => gate.nextHandler(req);

Streaming:

typescript
export async function POST(req: Request) {  const body = await req.json();  const result = await gate.check(req.headers, body);  if (result.requiresPayment) return result.as402Response();  return gate.streamText(body.messages).toDataStreamResponse();}

Payment tool for LLM function calling:

typescript
const tool = gate.asTool(  async (query) => myPremiumHandler(query),  { toolName: "premium_kb", toolDescription: "Access premium knowledge base." });// Use in generateText({ tools: { premium_kb: tool } })

Supports any @ai-sdk/* provider — OpenAI, Anthropic, Google, Groq, Mistral, Cohere, Ollama, Azure. Uses node:crypto for MPP HMAC; requires Node.js runtime (not Edge) for MPP. x402 and AP2 work on Edge runtimes.

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/vercel-ai-sdk/README.md


Google A2A — Quick start

python
from a2a_algovoi import AlgoVoiA2A
gate = AlgoVoiA2A(    algovoi_key="algv_...",    tenant_id="your-tenant-uuid",    payout_address="YOUR_ALGORAND_ADDRESS",    protocol="mpp",    network="algorand-mainnet",    amount_microunits=10_000,    agent_name="My AlgoVoi Agent",)
# Flask A2A serverfrom flask import Flask, jsonifyapp = Flask(__name__)
@app.route("/a2a", methods=["POST"])def a2a_endpoint():    return gate.flask_agent(lambda text: my_llm(text))
@app.route("/.well-known/agent-card.json")def card():    return jsonify(gate.agent_card("https://myhost.com/a2a"))
# A2A client — call another agentresponse = gate.send_message("https://other-agent.example.com/a2a", "hello", payment_proof="proof")task = response["result"]  # {"id": "...", "status": {"state": "completed"}, "artifacts": [...]}
# Payment tool for A2A pipelinestool = gate.as_tool(lambda q: fetch_kb(q), tool_name="premium_kb")

All 7 chains and all 3 protocols supported. Full reference: ai-agent-frameworks/a2a/README.md


No-Code / Automation Adapters

Drop-in Python classes that bridge AlgoVoi crypto payment flows into Zapier, Make (Integromat), and n8n — the three leading no-code / low-code automation platforms. Each adapter is a single file with zero external dependencies (stdlib HTTP only), mirrors the native Python adapter pattern, and applies the full April 2026 + pass-2 security hardening.

All three adapters were shipped on 17 April 2026 and are Comet-validated end-to-end.

PlatformClassReturn formatFilesTestsStatus
ZapierAlgoVoiZapierZapierActionResult dataclassno-code/zapier/77Available — Phase 1+2 PASS
Make (Integromat)AlgoVoiMakeMake bundle dictno-code/make/71Available — Phase 1+2 PASS
n8nAlgoVoiN8nn8n item dictno-code/n8n/77Available — Phase 1+2 PASS

Total: 225/225 tests · 21/21 smoke checks (Phase 1) · 3/3 live create_payment_link + verify_payment (Phase 2)

Supported across all 14 networks (7 mainnet + 7 testnet) on Algorand, VOI, Hedera, Stellar, Base, Solana, and Tempo. All three adapters support MPP, x402, and AP2 challenge generation.

Zapier — Quick start

python
from zapier_algovoi import AlgoVoiZapier
handler = AlgoVoiZapier(    algovoi_key    = "algv_...",    tenant_id      = "your-tenant-uuid",    payout_algorand= "YOUR_ALGORAND_ADDRESS",    webhook_secret = "whsec_...",                          # optional    zapier_hook_url= "https://hooks.zapier.com/hooks/catch/XXXX/YYYY/",  # optional)
# Create a payment link (Zapier action)result = handler.action_create_payment_link({    "amount":   5.00,    "currency": "USD",    "label":    "Premium access",    "network":  "algorand_mainnet",})# result.success, result.data["checkout_url"], result.data["token"]
# Verify payment statusresult = handler.action_verify_payment({"token": "tok_..."})# result.data["paid"] → True/False, result.data["status"] → "active"|"paid"|...
# Receive and forward an AlgoVoi webhook to a Zapier Catch Hookresult = handler.receive_and_forward(raw_body=..., signature=...)
# Generate MPP / x402 / AP2 challengeresult = handler.action_generate_challenge({    "protocol":          "mpp",        # "mpp" | "x402" | "ap2"    "resource_id":       "/api/premium",    "amount_microunits": 10_000,    "network":           "algorand_mainnet",})

Make (Integromat) — Quick start

python
from make_algovoi import AlgoVoiMake
handler = AlgoVoiMake(    algovoi_key     = "algv_...",    tenant_id       = "your-tenant-uuid",    payout_algorand = "YOUR_ALGORAND_ADDRESS",    payout_stellar  = "G...",    # optional — add any chain)
# Create a payment link (Make module)bundle = handler.module_create_payment_link({    "amount":   10.00,    "currency": "USD",    "label":    "API access — 30 days",    "network":  "stellar_mainnet",})# bundle["data"]["checkout_url"], bundle["data"]["token"]# on error: bundle["error"]["message"], bundle["error"]["code"]
# Verify paymentbundle = handler.module_verify_payment({"token": "tok_..."})# bundle["data"]["paid"], bundle["data"]["status"]
# Generate challenge (MPP / x402 / AP2)bundle = handler.module_generate_challenge({    "protocol":          "x402",    "resource_id":       "/api/v1/data",    "amount_microunits": 500_000,    "network":           "stellar_mainnet",})
# Receive AlgoVoi webhookbundle = handler.receive_webhook(raw_body=..., signature=...)

n8n — Quick start

python
from n8n_algovoi import AlgoVoiN8n
handler = AlgoVoiN8n(    algovoi_key   = "algv_...",    tenant_id     = "your-tenant-uuid",    payout_hedera = "0.0.XXXXX",   # set whichever chains you support)
# Create a payment link (n8n Code node operation)item = handler.execute_create_payment_link({    "amount":   2.50,    "currency": "USD",    "label":    "Agent service call",    "network":  "hedera_mainnet",})# item["json"]["success"], item["json"]["checkout_url"], item["json"]["token"]
# Verify paymentitem = handler.execute_verify_payment({"token": "tok_..."})# item["json"]["paid"], item["json"]["status"]
# Generate challengesitem = handler.execute_generate_mpp_challenge({    "resource_id": "/api/premium", "amount_microunits": 10_000, "network": "algorand_mainnet"})item = handler.execute_generate_x402_challenge({    "resource_id": "/api/data",    "amount_microunits": 500_000, "network": "algorand_mainnet"})item = handler.execute_generate_ap2_mandate({    "resource_id": "/service",     "amount_microunits": 2_000_000, "network": "voi_mainnet"})
# Receive and verify an AlgoVoi webhookitem = handler.receive_webhook(raw_body=..., signature=...)item = handler.execute_verify_webhook_signature({"raw_body": ..., "signature": ...})

Full reference: no-code/README.md


MCP Server

An MCP (Model Context Protocol) server that exposes AlgoVoi's payment infrastructure as tools directly inside Claude Desktop, Claude Code, Cursor, Windsurf, and any other MCP-compatible AI assistant. Ships as two packages — pick whichever runtime your client supports:

PackageInstallCommand
@algovoi/mcp-server (npm)npm i -g @algovoi/mcp-servernpx -y @algovoi/mcp-server
algovoi-mcp (PyPI)pip install algovoi-mcpuvx algovoi-mcp

13 built-in tools

#ToolWhat it does
1create_payment_linkCreate a hosted-checkout URL for a given amount and chain
2verify_paymentVerify a checkout token (optionally with a tx_id)
3prepare_extension_paymentIn-page wallet-flow params (Algorand / VOI)
4verify_webhookHMAC-SHA256 signature check for AlgoVoi webhooks
5list_networksSupported chains + asset IDs (offline, no API call)
6generate_mpp_challengeIETF MPP 402 WWW-Authenticate headers + challenge_id
7verify_mpp_receiptVerify an MPP on-chain receipt (direct indexer, no API call)
8verify_x402_proofVerify an x402 base64 payment proof (direct indexer)
9generate_x402_challengex402 X-Payment-Required 402 headers + payload
10generate_ap2_mandateAP2 v0.1 PaymentMandate for AI agent payment flows
11verify_ap2_paymentVerify an AP2 mandate payment receipt (direct indexer)
12fetch_agent_cardGET {agent_url}/.well-known/agent.json — discover an A2A agent's capabilities and payment requirements
13send_a2a_messagePOST {agent_url}/message:send — call a payment-gated A2A v1.0 agent; returns task on 200, challenge headers on 402 for pay-and-retry

Quick start — Claude Desktop / Claude Code / Cursor

json
{  "mcpServers": {    "algovoi": {      "command": "npx",      "args": ["-y", "@algovoi/mcp-server"],      "env": {        "ALGOVOI_API_KEY":         "algv_...",        "ALGOVOI_TENANT_ID":       "...",        "ALGOVOI_PAYOUT_ALGORAND": "<your-algorand-address>",        "ALGOVOI_PAYOUT_VOI":      "<your-voi-address>",        "ALGOVOI_PAYOUT_HEDERA":   "0.0.<your-account>",        "ALGOVOI_PAYOUT_STELLAR":  "G<your-stellar-address>",        "ALGOVOI_PAYOUT_BASE":     "0x<your-evm-address>",        "ALGOVOI_PAYOUT_SOLANA":   "<your-solana-address>"      }    }  }}

Single-chain users only need to set the env var for their chain — the others are optional. For Base use ALGOVOI_PAYOUT_BASE; for Solana use ALGOVOI_PAYOUT_SOLANA. For the Python package, swap "command": "uvx", "args": ["algovoi-mcp"].

Config file locations: Claude Desktop %APPDATA%\Claude\claude_desktop_config.json (Windows) / ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) · Claude Code ~/.claude.json · Cursor ~/.cursor/mcp.json

Full reference: mcp-server/README.md · TypeScript source: mcp-server/typescript/ · Python source: mcp-server/python/


Charity Interfaces

Pre-built, self-contained donation pages powered by AlgoVoi and deployed to Cloudflare Pages. Zero external dependencies — drop the HTML file onto any server or share the URL directly.

PageURLCauseAmountChain
Manndeshi Foundationyour-domain.example/manndeshi.htmlEmpowering rural women in India to become successful entrepreneurs$2.75 USDCAlgorand

Source: x402-widget/manndeshi.html · x402-widget/functions/api/manndeshi/donate.js


x402 Embeddable Payment Widget

A drop-in Web Component for accepting x402 payments on any website. Deployed to Cloudflare Pages at your-domain.example. Full source and security guide: x402-widget/

html
<script type="module" src="https://your-domain.example/widget.js"></script><algovoi-x402  amount="29.99"  chains="ALGO,VOI,XLM,HBAR,ETH,SOL"  tenant-id="your-tenant-id"  api-key="algv_your-api-key"></algovoi-x402>
FeatureDetail
Format<algovoi-x402> Web Component — works in any HTML page
ChainsALGO (Algorand), VOI, XLM (Stellar), HBAR (Hedera), ETH (Base), SOL (Solana)
BackendCloudflare Pages Function proxying POST /v1/payment-links
Demo endpointPOST /api/x402/demo — uses server-side env secrets (no client keys)
Pay endpointPOST /api/x402/pay — uses client-supplied tenant-id + api-key
CORSEnabled — embeddable from any origin
SecuritySee x402-widget/README.md — server-side proxy recommended for production

Adapters with limited support

Six adapters have structural blockers that prevent full end-to-end testing:

AdapterBlocker
BigCommerceWebhook signature verifies correctly, but GET /v2/orders/{id} for order amount requires a real store_hash and access_token. All other flow steps work.
DiscordUses Ed25519 asymmetric signing — cannot sign test webhooks without a real Discord application keypair.
TrueLayerUses ES512 JWK signing — cannot sign test webhooks without a real TrueLayer private key.
FaireRequires Faire API approval before any developer access.
JumiaDocumentation only — no webhook endpoint is publicly available.
PrintifyDocumentation only — no webhook endpoint is publicly available.

How payments work

Customer places order and selects chain (Algorand / VOI / Hedera / Stellar / Base / Solana)            ↓Plugin creates payment link via POST /v1/payment-links            ↓Hosted: redirect to AlgoVoi checkout pageExtension: pay in-page via AlgoVoi browser wallet            ↓Customer pays on-chain            ↓AlgoVoi verifies the transaction on-chain            ↓Webhook fires → order marked as paid in your platform

Payments are verified directly on-chain — no intermediary holds funds. Settlement goes straight to the merchant's configured payout address.

Security

Every adapter is hardened against real-world payment attack vectors. Pass 1 (April 2026) covered cancel-bypass / empty-secret / cookie-swap / SSRF / timing attacks across all deployed stores and native adapters. Pass 2 (15 April 2026) added defensive depth across the B2B webhook trio + native SDKs + a critical Rust compile fix.

Vulnerabilities found and fixed — Pass 1 (April 2026)
VulnerabilitySeverityAffectedFix
Cancel-bypassCriticalShopware, PrestaShop (hosted)finalize() / confirm.php now call GET /checkout/{token} and only mark paid if status is paid/completed/confirmed
Webhook empty-secretHighOpenCart, ShopwareReject with HTTP 500 before HMAC check if webhook_secret is empty — prevents hash_hmac('sha256', $body, '', true) forgery
Cookie-swap attackHighPrestaShop (extension)verify.php cross-checks id_customer against logged-in customer before marking order as paid
SSRF on checkout URLMediumAll platformsparse_url() host comparison before any server-side fetch of checkout page
Timing attackMediumWooCommercehash_equals() for order_key comparison instead of !==
Missing SSL verificationMediumOpenCart, PrestaShopCURLOPT_SSL_VERIFYPEER => true and CURLOPT_SSL_VERIFYHOST => 2 on all curl calls
Input validationLowAll platformstx_id length guard (>200 chars rejected), network whitelist with strict in_array()
Webhook replay attackMediumXero (accounting)is_replay() checks eventDateUtc (with firstRetryMoment fallback) — webhooks older than 5 minutes rejected
Vulnerabilities found and fixed — Pass 2 (15 April 2026)

Comet-validated audit across the B2B webhook trio and all 4 native SDKs. All seven adapters bumped from 1.0.0 to 1.1.0.

VulnerabilitySeverityAffectedFix
Native Rust crate did not compileCriticalnative-rusthtml_escape referenced a non-existent html::escape module. Replaced with local implementation; crate now builds clean
XSS via </script> break-outHighnative-pythonCaller-supplied verify_url / success_url were embedded into a <script> block via json.dumps(), which does not escape </. Added _safe_url_for_script() validator + belt-and-braces </ → <\/ neutralisation
SSRF token-leak (caller-supplied URL)Highamazon-mws (confirm_shipment), tiktok-shop (update_shipping)marketplace_url / api_base parameters now allowlisted to *.amazon.com / *.tiktokglobalshop.com only. SP-API access token cannot be sent to attacker-controlled hosts
HMAC TypeError on bytes/None signatureHighAll Python adaptershmac.compare_digest raises uncaught TypeError on type mismatch — surface as 500 instead of clean 401. Type guards added before the comparison
parse_order_webhook AttributeError on null fieldsMediumtiktok-shop, squarespacedict.get(k, default) returns the literal None when the key exists but is JSON null. Added explicit is None checks + AttributeError to except tuple. Squarespace also dropped the flat-payload fallback that allowed unwrapped spoofs
Plaintext API-key leak via post()Highnative-php, native-go, native-rustInternal post() helpers built request URLs from api_base with no scheme check. With misconfigured http://, the Authorization: Bearer header travelled in plaintext on every request. All three now refuse http:// before any request is built
Webhook body-size unboundedLowAll Python adaptersverify_webhook parsed bodies of any size, processing 1 MB+ inputs in full. Added 64 KB cap (MAX_WEBHOOK_BODY_BYTES) before the HMAC computation
Amount sanity (NaN / Inf / negative / zero)LowAll adaptersprocess_order / create_payment_link accepted any float. Added isfinite() && > 0 guard locally so the gateway round-trip is avoided
redirect_url scheme unrestrictedLowAll adaptersfile://, gopher://, javascript: schemes were forwarded to the gateway verbatim. Now rejected with https-only allowlist
verify_payment / verify_hosted_return no scheme guardMediumAll adapters_post() had a guard but the GET /checkout/{token} path bypassed it. Plaintext api_base would leak the token in the URL. Explicit startswith("https://") check added on every read path
token length cap missingLowAll adaptersOnly tx_id had the 200-char cap; token was checked for emptiness only, allowing arbitrary-length payloads to be URL-encoded into the request path. Both inputs now length-capped
Port-mismatch SSRF in _scrape_checkoutLownative-php, native-go, native-rustHost comparison ignored port — same hostname on a different port slipped through. Now compares host:port
Constructor signature drift in READMEsLow (docs)7 adaptersQuick-start examples documented args (refresh_token, app_key, algovoi_api_key, etc.) that did not exist on the actual classes — copy-pasting raised AttributeError. All 7 READMEs rewritten to match real signatures
Security measures in every adapter
  • HMAC webhook verification — hash_equals (PHP), hmac.compare_digest (Python), hmac.Equal (Go), constant_time_eq (Rust)
  • Empty secret rejection — webhooks rejected before HMAC check if secret is not configured
  • SSRF protection — checkout URL host validated against configured API base before server-side fetch
  • Cancel-bypass prevention — hosted checkout returns verified via API status check before marking orders complete
  • Order ownership checks — customer ID cross-referenced on verify endpoints (prevents cookie/session swap)
  • TLS enforced — SSL verification on all outbound HTTP calls across every language
  • Input validation — network whitelist, tx_id length guard, timing-safe comparisons
  • No hardcoded secrets — all credentials read from platform admin config or environment variables
  • Replay attack prevention — is_replay() method on all 7 accounting adapters; real implementation on Xero (eventDateUtc / firstRetryMoment, 5-minute window, fail-open); documented no-op on platforms with no signed timestamp in payload

Getting started

  1. Sign up — Start a free trial with just your wallet address (no email required)
  2. Get your API key — Instant API access with testnet + capped mainnet (30-day trial)
  3. Configure networks — Add payout addresses for Algorand, VOI, Hedera, Stellar, Base, and/or Solana
  4. Install an adapter — Drop the plugin into your store, or use a native adapter for custom apps
  5. Accept payments — Customers select their chain and pay with stablecoins

License

This repository is licensed under the Business Source License 1.1.

Permitted

  • Install plugins on your own store (WooCommerce, OpenCart, PrestaShop, Shopware)
  • Use native adapters (PHP, Python, Go, Rust) in your own application
  • Fork and modify the code for your own internal use
  • Contribute improvements back via pull requests
  • All usage requires a valid AlgoVoi tenant account

Prohibited

  • Operating the adapters (or derivatives) as a competing hosted payment service or payment gateway
  • Reselling, sublicensing, or redistributing as a commercial product
  • Processing payments without a valid AlgoVoi tenant account
  • Removing or altering copyright, attribution, or license notices

Not distributed

  • Shopify app — proprietary hosted service operated by AlgoVoi. Merchants install via the Shopify App Store; source code is not publicly distributed.
  • Accounting adapters (QuickBooks Online, Xero, FreshBooks, Sage Business Cloud, Zoho Books, Wave, MYOB) — source code is not publicly distributed. Integration guides are in this repository. Download your adapter from the AlgoVoi dashboard after signing in.

Support

來源:README.md,提交 31ac983

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.1.3最新Sep 16, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。