Subir

Chat Inteligente | Servidores MCP

AdministradorSuper Administrador

Un servidor MCP es una herramienta externa que el asistente puede usar durante la conversación, por ejemplo para consultar una base de datos, llamar a una API o enviar correos. La conexión la hace el agente, el servicio de la aplicación que ejecuta las conversaciones, mediante el protocolo MCP (Model Context Protocol, el estándar para conectar el asistente con servicios de fuera de la aplicación). Desde esta pantalla, titulada «MCP Servers», podrás dar de alta esos servidores, buscarlos entre los que ya existen, editarlos, borrarlos y comprobar si el agente ha conseguido conectarse a cada uno. Para llegar a ella, haz clic en «Integraciones» en el menú superior de la pantalla y escoge «MCP Servers». Solo la ven los roles Administrador y Super Administrador.

Pantalla MCP Servers con el buscador por nombre, el filtro Transporte, el botón Crear y la tabla de servidores con las columnas NOMBRE, DESCRIPCIÓN, TRANSPORTE, ESTADO y RUNTIME

Buscar y filtrar servidores

En el panel situado sobre la tabla dispones de dos controles que se combinan entre sí, de modo que el listado muestra los servidores que cumplen ambos criterios a la vez. No hace falta confirmar la búsqueda con la tecla Intro: la tabla se actualiza medio segundo después de que escribas o cambies una opción.

  • Buscar por nombre: escribe en la caja con la lupa, arriba a la izquierda del panel, que lleva el texto de ayuda «Buscar por nombre» en lugar de etiqueta. El listado mostrará los servidores cuyo nombre contenga ese texto, aparezca donde aparezca dentro del nombre.
  • Transporte: el desplegable situado debajo del buscador, también a la izquierda, limita el listado a un tipo de conexión, «stdio» o «streamable_http». La opción «Todos», que es la que viene marcada, quita el filtro.

Para volver al listado completo, borra el texto del buscador o vuelve a seleccionar «Todos» en «Transporte». Si ningún servidor cumple los dos criterios, la tabla se queda sin filas y el contador que hay debajo marca cero, sin ningún mensaje adicional. Cuando la consulta falla, en cambio, sí aparece el aviso "Error al buscar MCP Servers" y la tabla conserva el resultado anterior, así que repite la búsqueda antes de dar por bueno lo que ves. De esta forma localizarás rápidamente un servidor concreto aunque tengas muchos dados de alta.

Consultar el listado y el estado de conexión

La tabla muestra una fila por servidor, con los servidores ordenados alfabéticamente por nombre. Estas son sus columnas:

  • NOMBRE: el nombre con el que identificaste el servidor al darlo de alta.
  • DESCRIPCIÓN: el texto descriptivo del servidor. Cuando supera los 40 caracteres se recorta con puntos suspensivos, así que deja el cursor encima para leerlo completo. Si el servidor no tiene descripción, la celda muestra un guion.
  • TRANSPORTE: la forma de conexión configurada, «stdio» o «streamable_http».
  • ESTADO: la configuración que tú decides con la casilla «Activo» del formulario, «Activo» en verde o «Inactivo» en rojo.
  • RUNTIME: el resultado del último intento de conexión del agente con el servidor. La aplicación lo consulta cada diez segundos, por lo que verás el resultado sin recargar la página.

Cada fila termina con dos botones: «Editar», que abre el formulario con los valores actuales, y «Borrar», que elimina el servidor previa confirmación.

Interpretar el estado de conexión

La columna «RUNTIME» te indica si el agente consiguió conectarse al servidor, y toma tres valores:

  • Connected: el agente se conectó al servidor y cargó sus herramientas, que ya están disponibles en las conversaciones de los perfiles que lo tengan asignado.
  • Error: el intento de conexión falló, por ejemplo porque el comando no arranca, la dirección no responde, se agota el tiempo de espera o la autenticación no es válida. La tabla no indica cuál de esos motivos ha fallado, así que abre «Editar» y revisa la configuración del servidor (comando, argumentos, dirección o cabeceras) frente a la documentación del servidor MCP al que te conectas.
  • Disconnected: el agente no tiene ninguna conexión con ese servidor. Es el estado normal de un servidor marcado como «Inactivo». Si aparece en un servidor «Activo», el agente no ha recibido su configuración, porque falló el envío al guardarlo o porque el agente arrancó sin poder leerla. En ese caso, abre «Editar» y guárdalo sin cambios para que la aplicación se la envíe.

Es importante tener en cuenta que el agente comprueba la conexión al conectarse, no de forma continua: si el servidor MCP deja de responder más tarde, la fila sigue en «Connected» y el fallo solo se nota en la conversación, cuando el asistente intenta usar alguna de sus herramientas. En el apartado siguiente se explica cómo forzar la reconexión en ese caso.

Además, cuando la aplicación no consigue consultar el estado de las conexiones, todas las filas muestran «Error» aunque la configuración de cada servidor sea correcta. Si ves «Error» en toda la tabla a la vez, espera unos segundos a la siguiente consulta antes de tocar nada. De esta forma podrás comprobar de un vistazo si el agente consiguió conectarse a cada servidor tras el último cambio.

Reintentar la conexión de un servidor

El agente no vuelve a intentar por su cuenta una conexión que ha fallado. Cada vez que creas, editas o borras un servidor, la aplicación envía al agente la configuración de todos los servidores activos, y este vuelve a conectar los que han cambiado de configuración o no estaban en «Connected». El agente también recoge la configuración de todos los servidores activos cada vez que arranca.

La forma de reintentar la conexión depende del estado que muestre la fila:

  • Error o Disconnected: si el fallo venía del propio servidor MCP y ya está resuelto, abre «Editar» y vuelve a guardar el servidor sin cambiar nada. El agente intentará conectarse de nuevo y verás el resultado en la siguiente consulta de estado.
  • Connected, pero el servidor no responde: guardarlo sin cambios no sirve, porque el agente mantiene la conexión que figura como «Connected» mientras su configuración no cambie. Desmarca «Activo» y guarda para que el agente cierre la conexión, y después vuelve a marcar la casilla y guarda de nuevo. Mientras el servidor está inactivo, los perfiles que lo tienen asignado no pueden usar sus herramientas.

Ordenar y paginar el listado

Haz clic en la cabecera de cualquier columna para ordenar el listado por ese dato. Cada clic sobre la misma cabecera recorre tres estados: ascendente, descendente y el orden de partida por nombre. La aplicación recuerda en tu navegador la ordenación, el número de filas por página y la página en la que estabas, de modo que la próxima vez que entres encontrarás la tabla tal y como la dejaste. Esta pantalla no tiene un botón para borrar esa configuración, así que, para volver al orden de partida, haz clic en la cabecera hasta que desaparezca la flecha que marca el sentido.

Bajo la tabla, el texto «Mostrando … elementos de …» indica cuántos servidores ha devuelto la búsqueda actual, y su desplegable cambia el número de filas por página: 10 por defecto y, a medida que haya suficientes servidores, 20, 40 u 80, además de «Todos». Con «Todos» el listado completo se muestra en una sola página y el texto pasa a «Mostrando Todos los elementos». A la derecha, los botones «<<», el número de página y «>>» te mueven entre páginas.

Crear un servidor MCP

  1. Haz clic en «Crear»: el botón está situado en la esquina superior derecha del panel de búsqueda.
  2. Rellena la ventana «Crear MCP Server»: se abre con el cursor en «Nombre», el transporte «stdio» ya seleccionado y la casilla «Activo», al final del formulario, marcada, de manera que el servidor empieza a funcionar en cuanto lo guardes. Los campos se describen en los apartados siguientes.
  3. Guarda el servidor: haz clic en «Guardar», en la esquina inferior derecha de la ventana, para crearlo, o en «Cancelar», a su izquierda, para descartarlo.
Ventana Crear MCP Server con transporte stdio: campos Nombre, Descripción, Transporte, Command, Args, Variables de entorno, la casilla Activo y los botones Cancelar y Guardar

Dentro de la ventana, la tecla Intro equivale a «Guardar» y Esc a «Cancelar», también cuando estás escribiendo en un campo de varias líneas como «Descripción», «Args» o «Headers». Para insertar un salto de línea en ellos usa Mayús+Intro. Si has llevado el foco a uno de los botones de la ventana, Intro activa ese botón, de forma que con el foco en «Cancelar» la ventana se cierra sin guardar. Mientras la ventana está abierta, la tecla Tab recorre solo sus campos y botones.

Mientras la aplicación avisa al agente, el botón «Guardar» muestra un indicador de carga y queda deshabilitado, y la ventana puede tardar unos segundos en cerrarse, sobre todo si el comando o la dirección no responden. Espera a que se cierre sin volver a usar la tecla Intro: cada Intro envía una nueva creación y, como el nombre no tiene que ser único, acabarías con el servidor duplicado.

Al guardar aparece el aviso "Se creó el servidor MCP correctamente" y el agente intenta conectarse al servidor. El resultado lo verás en la columna «RUNTIME» en la siguiente consulta de estado. Si el agente no está disponible en ese momento, el servidor se guarda igualmente y el aviso de éxito aparece, pero el agente no recibe la configuración y la columna «RUNTIME» marcará «Disconnected» o «Error». Si el agente se reinicia, recogerá la configuración al arrancar. Si no, cuando vuelva a responder, abre «Editar» y guarda el servidor sin cambiar nada para que la aplicación se la envíe de nuevo.

Si algún campo no es válido, el mensaje aparece en rojo justo debajo de ese campo y el servidor no se guarda. Los errores de «Variables de entorno» y de los valores de «Headers» son la excepción, ya que no señalan ningún campo: se muestran como el aviso "Error inesperado al crear el servidor MCP", así que revisa esos dos campos cuando lo veas. Si el guardado falla por cualquier otro motivo, la ventana sigue abierta y no aparece ningún aviso.

Rellenar los campos comunes

  • Nombre: obligatorio, hasta 255 caracteres. Es el nombre con el que localizarás el servidor en el listado. La aplicación no impide repetir un nombre, así que elige uno que lo distinga de los demás. Si lo dejas vacío aparece "El nombre del MCP Server es obligatorio.".
  • Descripción: opcional, pero rellénala siempre, ya que es el texto con el que se identifica el servidor al asignarlo a un perfil de conversación. Si la dejas vacía, la casilla del perfil aparece sin texto y no podrás distinguirla de las demás.
  • Transporte: la forma en que el agente se conecta al servidor, y el campo que decide qué otros campos se piden a continuación. Al cambiar de transporte, la ventana vacía los campos del transporte anterior.
    • stdio: el agente arranca el servidor MCP ejecutando un comando en el mismo entorno en el que él se ejecuta.
    • streamable_http: el agente se conecta por HTTP a un servidor MCP que ya está publicado en una dirección.
  • Variables de entorno: opcional. Indica aquí los nombres de las variables de entorno que el servidor MCP necesita, como una clave de API o una cadena de conexión, separados por coma tal y como recuerda el texto de ayuda "Indica las variables de entorno separadas por coma (opcional).". Cada nombre debe empezar por una letra mayúscula y contener solo letras mayúsculas, números y guiones bajos, por ejemplo API_KEY, DB_HOST. El agente solo las usa con el transporte «stdio», ya que se las entrega al proceso que arranca; con «streamable_http» el campo sigue visible, pero no tiene efecto.
  • Activo: la casilla situada al final del formulario. Si la dejas marcada, el agente se conecta al servidor y este queda disponible para asignarlo a perfiles de conversación. Si la desmarcas, el servidor se guarda pero permanece desconectado y desaparece del bloque «MCP Servers» de los perfiles.

La aplicación no guarda los valores de las variables de entorno: los toma de su propia configuración, en el servidor donde está instalada, y se los pasa al servidor MCP en el momento de conectarlo, por lo que hay que pedir al equipo técnico que los defina allí. Si una variable no está definida, se envía vacía y la aplicación no avisa, así que, si el servidor acaba en «Error», confirma con el equipo técnico que la variable existe. Aunque el ejemplo del campo muestre VAR1=value1, VAR2=value2, escribe solo el nombre de cada variable: si incluyes un = o cualquier otro carácter no permitido, el servidor no se guarda y aparece el aviso "Error inesperado al crear el servidor MCP" (o "Error inesperado al editar el servidor MCP") sin señalar el campo.

Configurar el transporte stdio

Al elegir «stdio» la ventana muestra dos campos más, los dos obligatorios, tal y como los ves en la captura anterior:

  • Command: hasta 255 caracteres. Es el ejecutable que arranca el servidor MCP, como sugiere el propio campo con "npx, python, node…", y debe estar instalado donde se ejecuta el agente. Si lo dejas vacío aparece "El comando es obligatorio para transporte stdio.".
  • Args: los argumentos que recibe ese comando, separados por coma tal y como indica el texto de ayuda "Indica los argumentos separados por coma.". Los espacios y saltos de línea que dejes alrededor de cada coma se ignoran. Como la coma separa los argumentos, no es posible pasar un argumento que contenga una coma, como --tools=read,write: la aplicación lo partiría en dos. Si dejas el campo vacío aparece "El campo args es requerido cuando el campo transporte es stdio.".

Configurar el transporte streamable_http

Al elegir «streamable_http» desaparecen «Command» y «Args», y en su lugar la ventana muestra:

  • URL: obligatoria, hasta 500 caracteres. Es la dirección en la que está publicado el servidor MCP, con el formato del ejemplo del campo, https://example.com/mcp. Si la dejas vacía aparece "La URL es obligatoria para transporte streamable_http.".
  • Headers: opcional. Son las cabeceras HTTP que se envían al servidor MCP, normalmente para autenticarse, y se escriben como un objeto JSON, tal y como indica el texto de ayuda del campo con el ejemplo {"Authorization": "Bearer token"}. Cada valor debe ser un texto entre comillas; si pones un número u otro objeto, el servidor no se guarda y aparece "Error inesperado al crear el servidor MCP".

Revisa bien el JSON antes de guardar, porque, si lo que escribes en «Headers» no es un JSON válido, la aplicación descarta las cabeceras y guarda el servidor sin ellas, con el aviso de éxito habitual. Si el servidor MCP las necesitaba, la conexión acabará en «Error» en la columna «RUNTIME».

Editar un servidor MCP

  1. Haz clic en «Editar»: el botón está a la derecha de la fila del servidor.
  2. Modifica los campos que necesites en la ventana «Editar MCP Server», que se abre con los valores actuales. Son los mismos campos que al crear y con las mismas validaciones. «Args» y «Variables de entorno» aparecen separados por comas, y «Headers», como un JSON repartido en varias líneas; si añades una línea en ese campo, hazlo con Mayús+Intro, ya que Intro guarda el formulario.
  3. Guarda los cambios: haz clic en «Guardar», en la esquina inferior derecha de la ventana, o descártalos con «Cancelar», a su izquierda. Intro y Esc funcionan igual que al crear.

Al guardar, el botón «Guardar» muestra el mismo indicador de carga que al crear mientras la aplicación avisa al agente. A continuación aparece el aviso "Se editó el servidor MCP correctamente" y el agente vuelve a conectarse con la nueva configuración, de forma que la columna «RUNTIME» reflejará el resultado en la siguiente consulta de estado. Si el agente no responde en ese momento, los cambios se guardan igualmente, con la misma consecuencia que al crear: el agente se queda con la configuración anterior hasta que arranque de nuevo o vuelvas a guardar el servidor cuando ya responda. Los errores de validación se comportan como al crear: bajo el campo correspondiente, salvo los de «Variables de entorno» y de los valores de «Headers», que aparecen como el aviso "Error inesperado al editar el servidor MCP". Si los valores del servidor no se pueden cargar, aparece "Error al cargar el servidor MCP" y la ventana se cierra sola.

Antes de tocar un servidor que ya funciona, ten en cuenta lo siguiente:

  • Cambiar el transporte: se vacían en la ventana los campos del transporte anterior, es decir, si pasas de «stdio» a «streamable_http» pierdes «Command» y «Args», y al revés pierdes «URL» y «Headers». Si te has equivocado, haz clic en «Cancelar» y el servidor conservará los valores que tenía guardados.
  • Desmarcar «Activo»: desconecta el servidor y lo retira del bloque «MCP Servers» de los perfiles de conversación. Los perfiles que ya lo tenían asignado conservan la asignación, pero el asistente no usará ese servidor mientras siga inactivo, lo que te permite desactivarlo temporalmente sin perder la configuración.

Borrar un servidor MCP

  1. Haz clic en «Borrar»: el botón rojo del final de la fila.
  2. Revisa la confirmación en la ventana «Borrar MCP Server», que pregunta "¿Estás seguro que deseas borrar el servidor MCP '…'?" con el nombre del servidor dentro de la pregunta.
  3. Haz clic en «Confirmar», el botón rojo de la esquina inferior derecha de la ventana, para eliminarlo, o en «Cancelar», a su izquierda, para conservarlo. Intro equivale a «Confirmar» y Esc a «Cancelar».

Al borrar un servidor, la aplicación lo retira también de todos los perfiles de conversación que lo tenían asignado y el agente cierra la conexión con él. A continuación aparece el aviso "Servidor MCP eliminado con éxito" y el servidor desaparece de la tabla. Si el borrado falla, aparece un aviso de error y el servidor sigue en el listado. El borrado no se puede deshacer desde la aplicación, por lo que, si solo quieres dejar de usar el servidor durante un tiempo, desmarca «Activo» en lugar de borrarlo.

Poner un servidor a disposición de un perfil de conversación

Dar de alta un servidor en esta pantalla no lo pone a trabajar por sí solo: el asistente solo usa las herramientas de los servidores que estén asignados al perfil de conversación con el que estás hablando. Esa asignación se hace desde el formulario del perfil, en el bloque «MCP Servers», que muestra una casilla por servidor con su descripción como etiqueta.

Ese bloque aparece en los perfiles cuyo «Graph» sea «Default Graph» y solo cuando existe al menos un servidor marcado como activo, ya que la lista únicamente recoge los servidores activos. Es importante tener en cuenta que solo el rol Super Administrador ve el bloque «MCP Servers» en el formulario del perfil, tanto al crearlo como al editarlo. Si entras como Administrador, podrás dar de alta y mantener los servidores desde esta pantalla, pero la asignación a los perfiles la tiene que hacer un Super Administrador. De esta forma podrás decidir, perfil a perfil, qué herramientas externas tiene a mano el asistente en cada tipo de conversación.