io.github.csacanam/lotero
Provably fair on-chain slot machine for AI agents: x402 spins on Base, Chainlink VRF results.
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
lotero-mcpclaude 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
{
"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>"
}
}
}
}
متغيرات البيئة
LOTERO_WALLET_PRIVATE_KEYسري Dedicated wallet with USDC on Base — pays spins/claims via x402. Required only for spin/claim.LOTERO_PLAYER_ADDRESSDefault player — the human's wallet, where winnings accrue and get claimed.LOTERO_MAX_SPINS_PER_SESSIONEnforced responsible-gambling spin limit per session (default 10).
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
المحتويات
🎰 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/frontendis incomplete. The contracts and agent are production-ready.
Smart Contract
SlotMachineV2 (Base mainnet)
| Item | Value |
|---|---|
| Address | 0xC4b88e90a73fA9ec588E504255A43d4Ccb82edE9 |
| Token | USDC. Bet 1 USDC, win up to 30 USDC. |
| VRF | Chainlink VRF 2.5 |
| Events | SpinRequested, SpinResolved |
Core functions
playFor(player, referringUserAddress, amountToPlay)— Pay on behalf of another address; theplayerreceives 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 forplayer.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-mcpon npm, listed on the official Model Context Protocol registry asio.github.csacanam/lotero): exposes 5 MCP tools over stdio —spin(paid via x402),get_round,get_balances,claimandget_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-mcpSee
mcp/README.mdfor 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
| Doc | Description |
|---|---|
| DOCS/AGENT_FLOWS.md | Flow diagrams (cron health, spin, claim) |
| DOCS/AGENT_API.md | API reference, endpoints, env, constants |
| DOCS/DEPLOY_BASE.md | Deploy contracts to Base |
| DOCS/RTP_MODEL.md | RTP 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
الأسئلة الشائعة
ما هو io.github.csacanam/lotero؟
Provably fair on-chain slot machine for AI agents: x402 spins on Base, Chainlink VRF results.
كيف أثبّت io.github.csacanam/lotero؟
يعمل على جهازك. في 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. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج io.github.csacanam/lotero إلى مفتاح API؟
نعم. يتطلب LOTERO_WALLET_PRIVATE_KEY، وتضبطها في إعداداته.
هل io.github.csacanam/lotero مفتوح المصدر؟
نعم. شيفرته متاحة على GitHub بترخيص MIT.
من يصون io.github.csacanam/lotero؟
ينشره csacanam. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.