Ir al contenido

Codex, n8n y scripts propios

AdministradorIntegrador3 min de lectura

https://docs.opencrm.es/ia/servidor-mcp/codex-n8n/

Cualquier cliente compatible con MCP puede trabajar con OpenCRM usando un token personal: agentes de programación como Codex, automatizaciones en n8n o desarrollos internos. Siempre a nombre de un usuario y con sus permisos.

  • La URL del servidor MCP, terminada en /mcp.php (Configuración › IA Suite › Servidor MCP › Conexiones).
  • Un token personal generado para un usuario con acceso al servidor MCP. Consulta Configurar el servidor MCP.
  • Un cliente MCP con transporte HTTP (Streamable HTTP) que permita enviar la cabecera Authorization: Bearer <token>.

Guarda el token en una variable de entorno, por ejemplo OPENCRM_MCP_TOKEN, y declara el servidor en la configuración de Codex (~/.codex/config.toml):

[mcp_servers.opencrm]
url = "https://tuempresa.opencrm.es/mcp.php"
bearer_token_env_var = "OPENCRM_MCP_TOKEN"

Si lo configuras desde la interfaz de Codex, elige el tipo HTTP secuenciable, pega la URL del servidor e indica el nombre de la variable en Variable de entorno del token portador. Para comprobarlo, pídele: «Haz un ping a OpenCRM».

En un flujo con un agente de IA, añade la herramienta MCP Client y configúrala así:

  • Endpoint: la URL del servidor MCP.
  • Transporte: HTTP Streamable.
  • Autenticación: Bearer, con el token personal como credencial.

Por ejemplo, puedes leer las facturas que llegan a un buzón, pedir al agente que prepare el pedido de compra en OpenCRM y dejar la confirmación a una persona del equipo.

El servidor habla JSON-RPC 2.0 sobre HTTP. Una llamada de diagnóstico:

Ventana de terminal
curl https://tuempresa.opencrm.es/mcp.php \
-H "Authorization: Bearer $OPENCRM_MCP_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"crm_ping","arguments":{}}}'

La lista de herramientas (tools/list) depende de lo que el administrador haya abierto y del usuario del token, así que dos tokens pueden ver herramientas distintas.

Herramienta Para qué sirve
crm_ping Diagnóstico de la conexión: versión, usuario y tiempo de respuesta.
crm_get_domains, crm_describe_module Qué áreas, módulos, campos y listas puede usar el usuario.
crm_schema_search, crm_find_fields Encontrar dónde está un concepto: «margen», «provincia», «teléfono».
crm_get_relationships, crm_find_relation_path Cómo se relacionan los módulos entre sí.
crm_query Consultas exactas con filtros, agregados, agrupaciones y saltos entre módulos.
crm_manual Los procedimientos de la casa de un módulo (skills).
crm_create, crm_update, crm_delete Preparan un alta, un cambio o un borrado y devuelven la vista previa. No escriben.
crm_commit Ejecuta una vista previa aprobada. Es la única que escribe; su identificador es de un solo uso y caduca a los 10 minutos.

Las herramientas de escritura solo aparecen si el administrador las ha habilitado para ese usuario y ese módulo. En una automatización, la escritura también pasa por la vista previa: puedes revisarla antes de llamar a crm_commit.