Esta guía cubre los accesos del hackathon en dos bloques: Base (lo que usa todo el mundo) y Por track. No hace falta configurar todo: seguí la Base, y después solo lo que necesite tu track. Cada bloque dice qué es, cómo se conecta y cómo validar que funciona.
Las credenciales reales (tokens, keys, secrets, service accounts) no están en este documento — viven en Passbolt. Acá tenés el cómo; los valores los copiás de ahí. Nunca las pegues en repos, issues ni canales abiertos, y nunca las commitees (van en .env, que está gitignoreado).
GitHub, Claude y MCP
Las tres piezas que usa todo el equipo, sin importar el track. Sin esto no arrancás.
Cuenta en la org requerido
Qué es: el repo del hackathon vive en la organización FARO-DataLab en GitHub. Ahí están las ideas, los prototipos y el board. GitHub Desktop es la app con botones para clonar/commit/push sin terminal (ideal si no sos dev).
Cómo se conecta:
- Creá tu cuenta de GitHub en github.com/signup (es gratis; si ya tenés una, usá esa). Después avisá tu usuario para que te sumen a
FARO-DataLab/gkt-hackaton-julio-2026. - Descargá e instalá GitHub Desktop e iniciá sesión con la cuenta que creaste (la app te lo pide al abrirla). Después File → Clone repository → elegí el repo.
- Alternativa por terminal:
gh auth loginy despuésgh repo clone FARO-DataLab/gkt-hackaton-julio-2026.
En GitHub Desktop, el repo aparece en la lista y ves el historial de commits. Por terminal: gh auth status dice Logged in y gh repo view FARO-DataLab/gkt-hackaton-julio-2026 devuelve el README sin error 404.
El agente y la app requerido
Qué es: Claude Desktop es la app para charlar y conectar MCPs; Claude Code es el agente que corre en la terminal y construye. Con tu cuenta de Growketing.
Cómo se conecta:
# Claude Desktop: descargar de claude.ai/download (Mac/Windows) e iniciar sesión
# Claude Code (CLI) — necesita Node.js
npm install -g @anthropic-ai/claude-code
cd gkt-hackaton-julio-2026
claude # la 1ª vez abre el navegador para loguearte
claude --version imprime una versión; al correr claude entrás a la sesión sin pedir login de nuevo. En Desktop, Settings muestra tu cuenta de Growketing activa. Guía oficial: docs.claude.com/claude-code.
Enchufarle herramientas al agente requerido
Qué es: un MCP es la forma estándar de darle herramientas y datos al agente (un "USB universal"). El más usado acá es el MCP del Data Platform (campañas, métricas, clientes sin tocar SQL); también hay MCPs oficiales de terceros.
Cómo se conecta — Claude Desktop (Settings → Developer → Edit Config, dentro de mcpServers):
{
"mcpServers": {
"data-platform": {
"url": "https://mcp.data-platform.growketing.io/mcp",
"headers": { "Authorization": "Bearer <passbolt>" }
}
}
}
Cómo se conecta — Claude Code:
claude mcp add --transport http data-platform https://mcp.data-platform.growketing.io/mcp \
--header "Authorization: Bearer <passbolt>"
claude mcp list # lista los servers configurados y su estado
claude mcp list muestra el server como conectado (reiniciá Claude después de editar la config). Prueba de fuego: pedile a Claude "listá los clientes del data platform" y tiene que devolver la lista.
Los datos de cada área
Qué necesita cada track: RevOps y Ops → HubSpot · PPC → Data Platform · Finanzas, People y Ops → Odoo y Everhour. Todo de lectura.
CRM · conectado con Level Blue listo
Qué es: el CRM donde viven contactos, empresas, deals, pipelines y actividad. Es la base del ABM y de la higiene del pipeline. La conexión ya está establecida a través de Level Blue (la integración que administra el portal), así que el acceso sale de ahí: no se crea una private app nueva por persona.
Cómo se conecta: copiás el token de acceso (gestionado vía Level Blue) de Passbolt y llamás a la HubSpot API v3 con el header Authorization: Bearer. En Claude Desktop también podés sumar el conector oficial de HubSpot desde Settings → Connectors.
curl "https://api.hubapi.com/crm/v3/objects/deals?limit=1" \
-H "Authorization: Bearer <passbolt>"
La llamada a /crm/v3/objects/deals?limit=1 devuelve 200 con un deal. Un 401 es token vencido o mal copiado; un 403 es scope faltante (pedilo vía Level Blue). Nada de escrituras: secuencias, cambios de etapa o creación de registros van como borrador con gate humano.
Google, Meta y LinkedIn Ads, GA4 listo
Qué es: el MCP del Data Platform (paso 03) ya expone la performance de las plataformas de Ads: campañas, ad groups, keywords, search terms, spend diario y GA4 por cliente. No hace falta tocar SQL ni pedir tokens de cada plataforma.
Cómo se conecta: con el mismo MCP del paso 03. No hay nada extra que configurar.
Pedile a Claude "traé el spend diario de Google Ads del cliente X en los últimos 7 días" y tiene que devolver una tabla con datos. Si responde que no tiene la herramienta, el MCP no está conectado: volvé al paso 03. Solo lectura: el agente no cambia presupuestos, pujas ni keywords.
MCP de Odoo pedir acceso
Qué es: el ERP de Growketing: facturación, cobranzas, P&L por unidad de negocio y cliente, colaboradores y headcount por área. Se accede con el MCP de Odoo, que expone esos datos en modo lectura.
Cómo se conecta: pedile el token a Devs (Tito o Bianca); queda en Passbolt. Después lo sumás como MCP:
claude mcp add --transport http gkt-odoo https://odoo-mcp.growketing.io/mcp \
--header "Authorization: Bearer <passbolt>"
claude mcp list muestra gkt-odoo como conectado. Prueba de fuego: "listá las unidades de negocio de Odoo" devuelve la lista. Ojo con los datos de personas: sueldos y datos de colaboradores no se copian a issues, al repo ni a Slack.
Horas por persona y proyecto token personal
Qué es: donde el equipo carga las horas por cliente y proyecto. Es la mitad del cruce horas vs. facturación y de la vista de capacidad. Se accede con la Everhour API y un token personal.
Cómo se conecta: en Everhour, Settings → My Profile → API token. El token hereda tus permisos: si no ves las horas de todo el equipo en la web, tampoco las vas a ver por API. Guardalo como variable de entorno, nunca en el repo.
export EVERHOUR_API_KEY=<tu-token>
curl "https://api.everhour.com/users/me" -H "X-Api-Key: $EVERHOUR_API_KEY"
/users/me devuelve 200 con tu usuario. Un 401 es token mal copiado. Si necesitás horas de todo el equipo y no las ves, pedí el rol correspondiente en Everhour.
¿Un acceso no anda o falta? No frenes el prototipo: marcá el pendiente en el board y seguí con datos mock. Los estados pedir acceso / token personal se destraban antes o durante el hackathon; no bloquean el arranque.