Self-host
Gratis
Licencia MIT
- Todos los módulos y herramientas
- Tu proyecto de Google Cloud y tu verificación
- Tu Postgres y tu clave del vault
- Las cuotas son las de tu proyecto
CLI + MCP · 100% open source · MIT
Una colección open source de conectores: una CLI y un MCP para que Claude, Cursor, n8n o tu shell usen Search Console, GA4, Google Ads y Workspace. Empezamos por Google; vienen más. Solo lectura y errores que dicen cómo arreglarse.
Ejemplo de sesión de terminal con la CLI de CONCAT: npx @lucasleguizamo/concat login / sesión iniciada · ana@ejemplo.com / concat connect gsc / autorizando webmasters.readonly ... / probe sites.list → 3 propiedades · connected / concat gsc striking-distance --site onconcat.com / QUERY POS IMPR +CLK / facturas con n8n 11.4 1.840 ~96 / bot whatsapp pyme 9.7 920 ~61 / n8n vs make 14.2 2.310 ~48 / 3 de 41 · pos 8-20 · 28 d · sin marca
Datos de ejemplo
demo / misma pregunta, dos gateways
A la izquierda, lo que suele pasar con un wrapper MCP genérico. A la derecha, CONCAT. La sesión es ilustrativa.
Las tools de tarea (striking distance, canibalización, content decay, CTR gaps, join GSC↔GA4) llegan en v1.1 sobre los módulos GSC y GA4. Hoy el gateway ya expone las herramientas base de lectura.
01 / problema
Los wrappers registran una herramienta por cada método de la API. El agente gasta el contexto eligiendo en vez de resolver.
Miles de filas JSON sin resumir. El modelo se ahoga en datos y tú pagas los tokens.
El login termina y el panel dice OK. La primera consulta vuelve vacía y nadie sabe por qué.
Forbidden. Ni tú ni el agente saben qué permiso falta, ni en qué pantalla de Google se arregla.
Scopes de escritura desde el primer día y refresh tokens en un .env que el propio agente puede leer.
02 / solución
Inicias sesión una vez. El gateway guarda el refresh token cifrado y el agente solo recibe un token del gateway. Cada servicio es un módulo con sus scopes, su probe y sus herramientas.
Primera en verificarse
Módulos nativos. Los primeros que pasan la verificación de Google.
Tu correo debe ser usuario de la propiedad.
scope webmasters.readonly
gsc_list_sitesgsc_performancegsc_list_sitemapsRol Viewer en la propiedad.
scope analytics.readonly
ga4_list_propertiesga4_daily_reportAcceso a la cuenta, o login-customer-id del MCC.
scope adwords
ads_list_customersads_searchPerfil y contactos.
scope userinfo.profile
Scopes sensibles
Funcionan en pruebas con lista de invitados. Requieren demo y justificación por scope.
Calendarios y eventos.
scope calendar.events.readonly
Lectura de documentos.
scope documents.readonly
Valores y metadatos.
scope spreadsheets.readonly
Lectura de presentaciones.
scope presentations.readonly
Scopes restringidos
Exigen evaluación de seguridad CASA, renovada cada 12 meses. Solo lista de prueba.
Scope restringido.
scope gmail.readonly
Scope restringido.
scope drive.readonly
Scope restringido.
scope chat.messages.readonly
striking_distanceQueries en posición 8-20 con clics por ganar.cannibalizationPáginas que compiten entre sí por la misma query.content_decayQué páginas pierden tráfico y por qué.ctr_gapsCTR por debajo de la curva propia del sitio.gsc_ga4_joinJoin GSC↔GA4 con match_rate reportado.03 / cómo funciona
Una sola vez. Navegador con PKCE; en una máquina sin navegador, device code. El token queda en el keychain del sistema.
npx -y @lucasleguizamo/concat@1 loginAutorización incremental: cada módulo pide solo sus scopes de lectura, cuando lo conectas.
concat connect gsc ga4"Conectado" significa que la llamada de lista devolvió datos. Si viene vacía, el estado dice exactamente qué hacer.
Dos puertas, un mismo catálogo. El host MCP hace el OAuth; la CLI sirve a n8n, CI o a un agente con shell.
claude mcp add --transport http concat https://gw.onconcat.com/mcp{
"mcpServers": {
"concat": { "url": "https://gw.onconcat.com/mcp" }
}
}concat gsc performance --site sc-domain:onconcat.com --by query04 / por qué concat
La v1 pide únicamente scopes de lectura. Los refresh tokens se cifran con AES-256-GCM. Escribir será un permiso por módulo, auditado y revocable.
readOnlyHint: trueLicencia MIT. Levanta tu propio gateway con tu proyecto de Google Cloud, o usa la instancia que opera CONCAT.
LICENSE: MITCada fallo trae message, fix y next_action. Dice en qué pantalla de Google arreglar el permiso y, cuando aplica, la URL para reconectar.
next_action: "reconnect_module"La CLI es un cliente MCP delgado. Sus subcomandos se generan desde tools/list: una tool nueva aparece en las dos puertas sin publicar versión.
gsc_performance → concat gsc performance05 / precios
Gratis
Licencia MIT
Beta
Lista de espera
06 / siguiente paso
Open source, MIT. Prueba la CLI o apunta tu host MCP a la instancia de CONCAT.