https://latinum.ai Latinum Tutorial
This project provides two stateless validators ("facilitators") for processing cryptographically verifiable payments used by Multi-Agent Commerce Protocol (MCP) tools:
- Solana Facilitator – validates signed Solana transactions
- Base Facilitator – validates signed Ethereum L2 (Base) transactions
Both facilitators are exposed via a unified endpoint: /api/facilitator.
If you have questions or need help, contact us at dennj@latinum.ai.
- Node.js
^18.xor higher (nvm recommended) npmorpnpm
npx npm-check-updates -u
npm install
# or
pnpm installnpx nitro devServer runs at: http://localhost:3000/
The payload must include a chain field set to either solana or base, and corresponding transaction metadata.
{
"chain": "base",
"signedTransactionHex": "<hex string>",
"expectedRecipient": "0xRecipientAddress",
"expectedAmountWei": "50000000000000000"
}{
"allowed": true,
"txHash": "0x...",
"type": "eth" | "token"
}curl -X POST http://localhost:3000/api/facilitator \
-H "Content-Type: application/json" \
-d '{
"chain": "base",
"signedTransactionHex": "0xABC123...",
"expectedRecipient": "0x123abc...",
"expectedAmountWei": "50000000000000000"
}'{
"chain": "solana",
"signedTransactionB64": "<base64 string>",
"expectedRecipient": "RecipientSolanaAddress",
"expectedAmountLamports": 50000
}{
"allowed": true,
"txid": "3Xyz..."
}curl -X POST http://localhost:3000/api/facilitator \
-H "Content-Type: application/json" \
-d '{
"chain": "solana",
"signedTransactionB64": "ABC123...",
"expectedRecipient": "3BMEwjrn9gBfSetARPrAK1nPTXMRsvQzZLN1n4CYjpcU",
"expectedAmountLamports": 50000
}'curl -X POST https://facilitator.latinum.ai/api/facilitator \
-H "Content-Type: application/json" \
-d '{
"chain": "solana",
"signedTransactionB64": "ABC123...",
"expectedRecipient": "3BMEwjrn9gBfSetARPrAK1nPTXMRsvQzZLN1n4CYjpcU",
"expectedAmountLamports": 50000
}'Let us know if you'd like to contribute, suggest improvements, or report issues.
Join our community: Telegram Group