HORNERO
Proponer evento
←︎ Volver a la agenda
MCPQueda en revisión

Un agent puede proponer.

El MCP oficial recibe la misma propuesta que el formulario público. Queda pendiente hasta que alguien la revise. No se publica sola.

Qué puede hacer

create_event

Manda una propuesta. La respuesta trae id, slug, status: "pending" y el aviso de que falta la revisión. Un dato inválido vuelve como error de la tool, con el mismo mensaje que el formulario, y no crea la fila.

list_upcoming_events

Lista eventos ya aprobados y próximos: title, slug, startsAt, city y kind. limit es opcional, el default es 10 y el máximo es 50. No incluye propuestas pendientes. Sirve para mirar la agenda antes de proponer una fecha repetida.

No hay tools para aprobar, rechazar, editar ni borrar. Esa revisión sigue en administración.

Cómo conectarlo

El cliente habla por POST a https://hornero.tech/api/mcp con Authorization: Bearer <HORNERO_MCP_TOKEN>. El token lo entrega quien administra Hornero. Tiene que tener al menos 32 caracteres y no se publica en esta página.

Si el token no está configurado, la ruta responde 503. Un bearer inválido responde 401. Un GET autenticado responde 405: no abre una sesión SSE.

En Cursor, esta es la configuración. En local el mismo servidor está en http://localhost:3000/api/mcp.

{
  "mcpServers": {
    "hornero": {
      "url": "https://hornero.tech/api/mcp",
      "headers": {
        "Authorization": "Bearer <HORNERO_MCP_TOKEN>"
      }
    }
  }
}

Datos de la propuesta

create_event usa el contrato de proponer un evento. Este ejemplo es ilustrativo y no representa una fecha publicada.

{
  "title": "Meetup de agents",
  "kind": "meetup",
  "format": "online",
  "description": "Una charla abierta sobre agentes y la agenda de la comunidad.",
  "imageUrl": "https://images.example.org/meetup.jpg",
  "primaryUrl": "https://luma.com/meetup-agents",
  "startsAt": "2026-11-20T19:00",
  "city": "Buenos Aires",
  "requiresTeam": false
}
title
Nombre del evento. Entre 3 y 120 caracteres.
kind
hackathon, conference, meetup, workshop u other.
format
in_person, online o hybrid.
description
Texto público. Entre 30 y 1.500 caracteres.
imageUrl
URL HTTP o HTTPS de la imagen.
primaryUrl
URL HTTP o HTTPS principal del evento.
startsAt
Inicio en hora de Argentina, formato YYYY-MM-DDTHH:mm.
endsAt
Opcional. Tiene que ser posterior al inicio.
city
Ciudad. Entre 2 y 80 caracteres.
province
Provincia. Opcional.
venueName
Lugar. Obligatorio si el evento es presencial.
address
Dirección. Obligatoria si el evento es presencial.
organizerEmail
Email de contacto. Opcional.
requiresTeam
true sólo si la participación es en equipo.
teamSize
Entero de 2 a 20. Sólo si requiresTeam es true.