io.github.csacanam/lotero

Registre officiel IA et agents

Provably fair on-chain slot machine for AI agents: x402 spins on Base, Chainlink VRF results.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

NPM package lotero-mcp
Claude Code
claude mcp add lotero -e 'LOTERO_WALLET_PRIVATE_KEY=<your lotero_wallet_private_key>' -e 'LOTERO_PLAYER_ADDRESS=<LOTERO_PLAYER_ADDRESS>' -e 'LOTERO_MAX_SPINS_PER_SESSION=<LOTERO_MAX_SPINS_PER_SESSION>' -- npx -y lotero-mcp@0.1.0
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "lotero": {
            "command": "npx",
            "args": [
                "-y",
                "lotero-mcp@0.1.0"
            ],
            "env": {
                "LOTERO_WALLET_PRIVATE_KEY": "<your lotero_wallet_private_key>",
                "LOTERO_PLAYER_ADDRESS": "<LOTERO_PLAYER_ADDRESS>",
                "LOTERO_MAX_SPINS_PER_SESSION": "<LOTERO_MAX_SPINS_PER_SESSION>"
            }
        }
    }
}

Variables d'environnement

  • LOTERO_WALLET_PRIVATE_KEY secret Dedicated wallet with USDC on Base — pays spins/claims via x402. Required only for spin/claim.
  • LOTERO_PLAYER_ADDRESS Default player — the human's wallet, where winnings accrue and get claimed.
  • LOTERO_MAX_SPINS_PER_SESSION Enforced responsible-gambling spin limit per session (default 10).

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. 🎰 Lotero
  2. Overview
  3. Smart Contract
  4. Agents
  5. Project Structure
  6. Documentation
  7. Requirements
  8. Quick Start
  9. Production
  10. License

🎰 Lotero

A Provably Fair Casino for AI Agents

A provably fair, on-chain slot machine with Chainlink VRF 2.5. Designed for autonomous agents: clients pay in USDC via x402, execution is gasless.

Overview

Lotero lets users (or AI agents) bet USDC and win prizes when three matching symbols appear on the reels. The game uses Chainlink VRF 2.5 for provably fair randomness.

  • RTP ~93% — DOCS/RTP_MODEL.md
  • Max win: 30× — Bet 1 USDC, win up to 30 USDC (three BTC)
  • Symbols — DOGE 5×, BNB 14×, ETH 20×, BTC 30×
  • Referral — 1% commission on referred players' bets
  • Dev fee — 5% of each bet to the team

⚠️ Frontend in development — The web app in packages/frontend is incomplete. The contracts and agent are production-ready.


Smart Contract

SlotMachineV2 (Base mainnet)
ItemValue
Address0xC4b88e90a73fA9ec588E504255A43d4Ccb82edE9
TokenUSDC. Bet 1 USDC, win up to 30 USDC.
VRFChainlink VRF 2.5
EventsSpinRequested, SpinResolved

Core functions

  • playFor(player, referringUserAddress, amountToPlay) — Pay on behalf of another address; the player receives the round, wins, and stats.
  • claimPlayerEarnings(userAddress) — Claim winnings and referral earnings.
  • isResolved(requestId) — Check if a round has been resolved.

Agents

Lotero Agent

Stateless HTTP API that sells spins and claims as a service. Clients pay via x402 (1.1 USDC spin, 0.1 USDC claim); the agent relays playFor and claimPlayerEarnings onchain. Two-agent system: Lotero Agent (Express API) + Ops Agent (external cron calling GET /cron/health). See packages/agent/README.md.

  • POST /spinWith1USDC — Paid (x402). Execute spin for player.
  • POST /claim — Paid (x402). Claim player earnings (gasless).
  • GET /round?requestId=..., GET /player/:address/balances, GET /contract/health — Read-only.
  • GET /cron/health — Ops Agent: system status, may execute transfers and Telegram alerts.
yarn agent        # Start agent
yarn agent:dev    # Dev with watch

Documentation: DOCS/AGENT_FLOWS.md | DOCS/AGENT_API.md

For AI agents:

  • MCP server (lotero-mcp on npm, listed on the official Model Context Protocol registry as io.github.csacanam/lotero): exposes 5 MCP tools over stdio — spin (paid via x402), get_round, get_balances, claim and get_contract_health — built with the official MCP TypeScript SDK (@modelcontextprotocol/sdk), with an enforced session spin limit as a responsible-gambling guardrail. Install:

    claude mcp add lotero -- npx -y lotero-mcp

    See mcp/README.md for configuration and tool reference.

  • Agent skill: npx skills add csacanam/lotero-core (or read it at lotero.xyz/skill.md) — wallet setup, x402 spin/poll/claim flow, payouts, budget guardrails.
  • LLM index: lotero.xyz/llms.txt.

Project Structure

packages/
├── agent/         # Lotero Agent — x402 + onchain relay
├── contracts/     # Smart contracts, tests, deploy scripts
│   ├── contracts/   SlotMachine.sol, SlotMachineV2.sol
│   ├── deploy/
│   └── test/
└── frontend/      # Web app (in development)

Documentation

DocDescription
DOCS/AGENT_FLOWS.mdFlow diagrams (cron health, spin, claim)
DOCS/AGENT_API.mdAPI reference, endpoints, env, constants
DOCS/DEPLOY_BASE.mdDeploy contracts to Base
DOCS/RTP_MODEL.mdRTP math and reel layout

Requirements


Quick Start

1. Install dependencies

git clone https://github.com/csacanam/lotero-core.git
cd lotero-core
yarn install

2. Run local chain

yarn chain

3. Deploy contracts (new terminal)

yarn deploy

4. Run tests

yarn contracts:test

5. Start the frontend (optional, in development)

yarn start

App runs at http://localhost:3000.


Production

For Base mainnet: see DOCS/DEPLOY_BASE.md. Contract address above. Fund the VRF subscription with LINK.


License

MIT

Questions fréquentes

Qu'est-ce que io.github.csacanam/lotero ?

Provably fair on-chain slot machine for AI agents: x402 spins on Base, Chainlink VRF results.

Comment installer io.github.csacanam/lotero ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add lotero -e 'LOTERO_WALLET_PRIVATE_KEY=<your lotero_wallet_private_key>' -e 'LOTERO_PLAYER_ADDRESS=<LOTERO_PLAYER_ADDRESS>' -e 'LOTERO_MAX_SPINS_PER_SESSION=<LOTERO_MAX_SPINS_PER_SESSION>' -- npx -y lotero-mcp@0.1.0. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.csacanam/lotero ?

Oui. Il attend LOTERO_WALLET_PRIVATE_KEY, à renseigner dans sa configuration.

io.github.csacanam/lotero est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.csacanam/lotero ?

Il est publié par csacanam. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.