Un agente conversacional que lleva a una persona de cero a cobrar su dividendo espacial: verificar identidad con Self, aportar al treasury y retirar, sin tener que comprar un token de red para pagar el gas.
Recorrido ilustrado del flujo del agente. Las direcciones y los contratos son reales y están en Celo mainnet; las transacciones que se muestran acá son una reconstrucción, no una ejecución en vivo.
Son caminos independientes: podés recorrer uno solo. Los dos primeros tocan contratos que ya están en Celo mainnet.
deposit(monto, "tu atribución").claim() cuando quieras, sin apuro: el costo es el mismo./api/mcp del proyecto.subi_status devuelve fondo, padrón y dividendo del día.subi_claimable y subi_registration consultan una dirección.subi_build_deposit y subi_build_claim arman la transacción sin firmar: el MCP no custodia nada.Dónde está parado el proyecto. El circuito completo funciona en Celo mainnet: los contratos están cableados, el padrón sólo se escribe tras una prueba de Self validada por su hub, y el treasury tiene fondos que el distributor puede repartir. Lo que falta para el piloto no es técnico: es sumar aportantes al fondo y cerrar el protocolo de evaluación con la universidad.
# clonar y configurar git clone https://github.com/artugrande/subi-concierge-agent cd subi-concierge-agent && npm install cp .env.example .env # cargar RPC y clave del agente # correr los tests de los contratos npx hardhat test # levantar la interfaz del agente npm run dev
SUBI expone su propio servidor MCP: seis herramientas sobre JSON-RPC 2.0. Las cuatro de lectura no necesitan llaves. Las dos de escritura devuelven la transacción armada y sin firmar, así que el servidor nunca custodia nada.
Todavía no está hosteado en una URL pública. Corre local con
npm run dev y queda en http://localhost:3000/api/mcp. Lo digo
acá para que nadie pierda tiempo buscando un endpoint que no existe.
# clonar, instalar y levantar git clone https://github.com/artugrande/subi-concierge-agent cd subi-concierge-agent && npm install npm run dev # MCP en /api/mcp, puerto 3000
curl -s -X POST http://localhost:3000/api/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -s -X POST http://localhost:3000/api/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"subi_status","arguments":{}}}'curl -s -X POST http://localhost:3000/api/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"subi_build_claim",
"arguments":{"address":"0x…"}}}'Devuelve to, data, value y feeCurrency. Firmarlo es tu problema, y esa es la idea.
{
"mcpServers": {
"subi": { "url": "http://localhost:3000/api/mcp" }
}
}subi_statusSaldo del treasury, tamaño del padrón, distribuible y dividendo diario por persona.subi_claimableCuánto tiene acumulado una dirección para cobrar ahora mismo.subi_registrationSi una dirección está en el padrón y cuándo vence su prueba de vida. No expone el nullifier.subi_contractsLas direcciones en Celo mainnet y los datos de la red.subi_build_depositArma el approve y el deposit, sin firmar.subi_build_claimArma el claim, sin firmar.Mil personas verificadas, doce meses, con auditor académico independiente. Estos son los hitos y las métricas contra las que se va a medir.
| Métrica | Cómo se mide | Objetivo |
|---|---|---|
| Personas en el padrón | activeCount on-chain | 1.000 |
| Tiempo de alta | Del escaneo del documento a la confirmación | < 3 min |
| Costo de verificar | Gas total de altas dividido por altas | < USD 0,01 |
| Overhead de infraestructura | Gas total sobre monto repartido | < 0,5% |
| Cobros sin CELO en la wallet | Claims con feeCurrency en stablecoin | 100% |
| Retención a 90 días | Direcciones que cobraron al menos una vez en el trimestre | > 70% |
| Organizaciones con Pledge | Compromisos firmados en PledgeRegistry | ≥ 3 |
| Retiro a moneda local | Proporción que convirtió a wARS | Medición, sin objetivo |
La hipótesis a falsar es concreta: que repartir dinero a mil personas todos los días cuesta menos del 0,5% de lo repartido, y que una persona sin banco, sin CELO y sin conocimiento previo puede darse de alta y cobrar en menos de tres minutos. Si eso no se cumple, el mecanismo no sirve y conviene saberlo antes de proponerlo en UNCOPUOS.