Celo Agents at Work · Judges' Favorite

SUBI Concierge Agent

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.

El flujo, paso a paso
SUBI Concierge
● en línea · agent 9822
celo mainnet · chain 42220
Hacé clic en cualquier paso para saltar ahí.

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.

On-chain

Lo que está desplegado de verdad

4
contratos en
Celo mainnet
9822
agent ID
ERC-8004
Self
identidad verificada
con prueba ZK
13
monedas locales
de cobro
SubiRegistry0x72Aa7f3B4ca2c230cd710Ef847015f0B963F0232Blockscout ↗
SubiTreasury0x093D55468acee5a9b11644d1E55097C4E99C2739Blockscout ↗
SubiDistributor0x1f945618F4bFa0e131E07FfA0335e7Ada6556279Blockscout ↗
PledgeRegistry0x642b4F2737E85f42bae5Fc4830544EBCf48F1F13Blockscout ↗
Hub de Self0xe57F4773bd9c9d8b6Cd70431117d353298B9f5BFCeloscan ↗
Agent wallet0x35422f585e1f570515147E557aEF8fD6a6e1b3b3Celoscan ↗
Probarlo

Tres maneras de probar la demo

Son caminos independientes: podés recorrer uno solo. Los dos primeros tocan contratos que ya están en Celo mainnet.

A

Aportar al treasury

Para empresas, agencias y cualquiera con USDT en Celo
  1. Tener USDT en Celo. No hace falta CELO para el gas.
  2. Aprobar el gasto al contrato del treasury.
  3. Llamar a deposit(monto, "tu atribución").
  4. El aporte queda con tu nombre en el ledger público.
B

Verificarte y cobrar el SUBI

Para cualquier persona con documento
  1. Escaneás tu documento con la app de Self. La prueba se genera en tu teléfono.
  2. El hub de Self valida la prueba y te da el alta: no hay otra puerta de entrada.
  3. El dividendo empieza a devengar desde ese momento.
  4. Llamás a claim() cuando quieras, sin apuro: el costo es el mismo.
C

Desde un agente, por MCP

Para agentes y herramientas de IA
  1. Apuntar el cliente a /api/mcp del proyecto.
  2. subi_status devuelve fondo, padrón y dividendo del día.
  3. subi_claimable y subi_registration consultan una dirección.
  4. 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.

Correrlo local

# 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
Desde un agente

El MCP, con los comandos exactos

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.

Levantarlo

# 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

Ver qué herramientas expone

curl -s -X POST http://localhost:3000/api/mcp \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Preguntar por el estado del fondo

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":{}}}'

Armar un cobro sin firmarlo

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.

Conectarlo a un cliente MCP

{
  "mcpServers": {
    "subi": { "url": "http://localhost:3000/api/mcp" }
  }
}

Las seis herramientas

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.
El piloto

Qué se lanza en Argentina Space

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.

Oct 2026
Cierre técnico. Verificador de Self conectado, contratos auditados y treasury enlazado al distributor.
11-13 nov
Argentina Space, Salta. Demostración en vivo, apertura del Space Dividend Pledge a firma y primeras altas del padrón.
Dic 2026
Cohorte cerrada. Mil personas verificadas y grupo de control definido con la universidad.
2027
Doce meses de reparto e informe público con el auditor. Presentación ante el Grupo de Trabajo de UNCOPUOS antes de su informe final.

Las métricas que queremos probar

MétricaCómo se mideObjetivo
Personas en el padrónactiveCount on-chain1.000
Tiempo de altaDel escaneo del documento a la confirmación< 3 min
Costo de verificarGas total de altas dividido por altas< USD 0,01
Overhead de infraestructuraGas total sobre monto repartido< 0,5%
Cobros sin CELO en la walletClaims con feeCurrency en stablecoin100%
Retención a 90 díasDirecciones que cobraron al menos una vez en el trimestre> 70%
Organizaciones con PledgeCompromisos firmados en PledgeRegistry≥ 3
Retiro a moneda localProporción que convirtió a wARSMedició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.