- El Model Context Protocol permite integrar LLMs con herramientas y datos externos de forma estandarizada.
- La configuración se realiza mediante la edición del archivo anythingllm_mcp_servers.json y la gestión desde la interfaz de Habilidades del Agente.
- Soporta diversos transportes como STDIO y SSE, permitiendo además el control manual del arranque de los servidores para optimizar recursos.
- Es compatible con aplicaciones externas como Bluebeam Revu y puede extenderse a entornos Docker mediante puentes HTTP.
AnythingLLM no solo permite conversar con modelos de inteligencia artificial y consultar documentos mediante RAG. Sus agentes también pueden conectarse a herramientas externas gracias al Model Context Protocol (MCP), un estándar abierto desarrollado originalmente por Anthropic.
Esta compatibilidad permite añadir funciones que no vienen incorporadas en la aplicación. Dependiendo del servidor MCP utilizado, el agente puede consultar una base de datos, interactuar con otra aplicación, revisar documentos abiertos o ejecutar determinadas acciones en el sistema.
La configuración requiere editar un archivo JSON y comprobar que el servidor utiliza un transporte compatible. También conviene revisar cuidadosamente los permisos, ya que una herramienta MCP puede procesar información sensible o ejecutar código en el ordenador.
Qué es MCP y cómo funciona en AnythingLLM

MCP define una forma común de comunicar aplicaciones de inteligencia artificial con herramientas y fuentes externas. En este sistema, AnythingLLM actúa como cliente o host, mientras que el servidor MCP publica las funciones que el agente puede utilizar.
Esto evita tener que programar una integración diferente para cada modelo y aplicación. El servidor describe sus herramientas y sus parámetros, AnythingLLM se los presenta al modelo y este decide cuándo debe llamar a cada función.
Sin embargo, la compatibilidad actual tiene límites. Tanto AnythingLLM Desktop como la versión autohospedada mediante Docker admiten la carga de Tools, pero no soportan MCP Resources, Prompts ni Sampling.
Por tanto, no basta con que un servidor se anuncie como compatible con MCP. Para utilizarlo en AnythingLLM debe ofrecer herramientas mediante un transporte admitido y poder ejecutarse en el entorno donde está instalada la aplicación.
Cómo añadir un servidor MCP a AnythingLLM

La configuración se guarda en un archivo llamado anythingllm_mcp_servers.json, situado dentro de la carpeta plugins del directorio de almacenamiento de AnythingLLM.
Si todavía no existe, la aplicación lo crea automáticamente al abrir la página Agent Skills. También puedes acceder desde esa misma sección a la opción para editar la configuración MCP.
La estructura general puede tener este aspecto:
{
"mcpServers": {
"mi-servidor": {
"command": "npx",
"args": [
"-y",
"paquete-del-servidor"
],
"env": {
"API_KEY": "TU_CLAVE"
}
}
}
}
Debes sustituir el nombre, el comando, los argumentos y las variables por los valores indicados en la documentación del servidor que quieras instalar.
Después de guardar los cambios, pulsa Refresh en Agent Skills. AnythingLLM volverá a leer el archivo, cerrará los procesos MCP que estén funcionando y tratará de iniciarlos con la nueva configuración, sin necesidad de reiniciar toda la aplicación.
Desde esta pantalla puedes comprobar el estado de cada servidor, consultar sus errores, ver las herramientas cargadas, iniciarlo o detenerlo y eliminarlo de la configuración.
Transportes stdio, SSE y Streamable HTTP

AnythingLLM admite distintas formas de conexión con los servidores MCP. La elección no depende de las preferencias del usuario, sino del transporte implementado por cada servidor.
stdio es el sistema predeterminado y ejecuta el servidor como un proceso local. Requiere el campo command y puede incluir argumentos y variables de entorno:
{
"mcpServers": {
"servidor-local": {
"command": "uvx",
"args": [
"nombre-del-servidor"
]
}
}
}
Los transportes SSE y Streamable HTTP se conectan a un servidor mediante una dirección web. En estos casos debes utilizar el campo url y no command:
{
"mcpServers": {
"servidor-remoto": {
"type": "streamable",
"url": "http://servidor:3003/mcp",
"headers": {
"Authorization": "Bearer TU_TOKEN"
}
}
}
}
Si se proporciona una URL y no se indica el tipo, AnythingLLM presupone que se trata de SSE. Las cabeceras permiten enviar tokens u otros datos requeridos por el servidor, pero debes evitar compartir el archivo si contiene credenciales.
Cómo impedir que un servidor MCP arranque automáticamente
Los servidores MCP pueden consumir memoria, mantener procesos abiertos o conectarse a servicios externos. Para evitar que uno concreto se inicie junto con los demás, AnythingLLM dispone de la propiedad autoStart.
Esta opción debe incluirse dentro del objeto anythingllm:
{
"mcpServers": {
"servidor-pesado": {
"command": "npx",
"args": [
"-y",
"paquete-del-servidor"
],
"anythingllm": {
"autoStart": false
}
}
}
}
El servidor continuará apareciendo en Agent Skills, pero tendrás que iniciarlo manualmente desde la interfaz cuando quieras utilizarlo.
AnythingLLM no lanza los servidores MCP nada más abrir Desktop o iniciar el contenedor. Para evitar una sobrecarga durante el arranque, comienza a activarlos en segundo plano cuando entras en Agent Skills o utilizas la directiva @agent.
Diferencias entre MCP en AnythingLLM Desktop y Docker
En AnythingLLM Desktop, los servidores MCP se ejecutan directamente en el sistema anfitrión. Por ello, cualquier comando utilizado en la configuración debe estar instalado y accesible mediante el PATH, o indicarse mediante la ruta completa del ejecutable.
Esto afecta a comandos como npx, uv, uvx, node o bash. AnythingLLM Desktop no instala automáticamente estos programas ni las dependencias externas requeridas por cada servidor.
Las herramientas descargadas permanecen en el ordenador incluso después de desinstalar AnythingLLM. Si ya no las necesitas, tendrás que eliminarlas por separado.
En Docker, los servidores se ejecutan dentro del contenedor de AnythingLLM. La imagen incluye comandos habituales como npx, uv, uvx, node y bash, aunque algunos servidores pueden necesitar programas adicionales.
Los paquetes y ejecutables instalados manualmente dentro del contenedor se perderán al eliminarlo. Además, para leer o escribir archivos persistentes del equipo anfitrión deben utilizarse rutas situadas bajo:
/app/server/storage/
Esta ubicación corresponde al directorio definido mediante la variable STORAGE_LOCATION al desplegar AnythingLLM.
Cómo conectar AnythingLLM con Bluebeam Revu

Uno de los ejemplos más interesantes es la integración con Bluebeam Revu, orientada a consultar PDFs activos, ejecutar búsquedas, generar resúmenes y automatizar determinados procesos de revisión.
Esta función requiere Revu 21.10 o posterior, un plan Bluebeam Max y AnythingLLM Desktop. En Revu debes entrar en:
Revu > Preferences > Admin > MCP
Después, activa MCP y selecciona AnythingLLM Desktop. En AnythingLLM, abre los ajustes, entra en Agent Skills y utiliza la opción para editar la configuración MCP.
Bluebeam proporciona un JSON con la ruta de su ejecutable MCP. Una vez guardado, pulsa Refresh y comprueba que el servidor aparece en la lista. También debes activar las habilidades para generar y guardar archivos, así como para visualizar y resumir documentos.
Con un PDF abierto en Revu, puedes probar la conexión iniciando el modo agente:
@agent ¿Cuántas páginas tiene el PDF activo en Revu?
La disponibilidad de una herramienta no garantiza que el modelo vaya a utilizarla correctamente. Conviene revisar siempre los archivos y cambios generados por el agente.
Cómo utilizar servidores MCP con Docker
AnythingLLM Docker admite servidores MCP en instalaciones autohospedadas, pero esta función no está disponible en el servicio AnythingLLM Cloud.
Un servidor basado en stdio puede ejecutarse dentro del propio contenedor. Si el servidor MCP se encuentra en otro contenedor, normalmente puedes conectarlos mediante una red compartida de Docker y utilizar el nombre del servicio como dirección.
Por ejemplo, un servidor HTTP llamado mcp-server y disponible en el puerto 3003 podría configurarse mediante una URL interna similar a:
http://mcp-server:3003/mcp
La dirección y la ruta exactas dependen del servidor utilizado. No es necesario crear siempre un puente HTTP adicional: este solo tendría sentido si el servidor original no ofrece un transporte compatible o si la arquitectura concreta exige adaptar la comunicación.
Revisa también las reglas de red, la autenticación y los volúmenes montados. No debes publicar un servidor MCP directamente en Internet sin protección, especialmente si permite leer archivos, ejecutar comandos o modificar servicios internos.
Qué hacer si el agente no utiliza las herramientas MCP

Si el modelo ignora el servidor MCP, comprueba primero que aparece como activo en Agent Skills y que sus herramientas están disponibles. Si el servidor no arranca, revisa los registros de Desktop o los logs del contenedor.
En una conexión mediante stdio, verifica que el comando exista, que la ruta sea correcta y que todas las dependencias estén instaladas. En SSE o Streamable HTTP, comprueba la URL, las cabeceras, la red y el método de autenticación.
El problema también puede estar en el modelo. Los modelos pequeños o muy cuantizados pueden tener dificultades para interpretar la definición de las herramientas y generar correctamente la llamada requerida. Una ventana de contexto limitada empeora el problema cuando existen muchas funciones activas.
Puedes probar estas medidas:
- Desactivar temporalmente las herramientas que no necesitas.
- Reiniciar el historial mediante
/reset. - Utilizar un modelo mayor o con mejor soporte para llamadas a herramientas.
- Escribir una instrucción más concreta indicando qué acción debe realizar.
- Comprobar que el agente muestra que la herramienta se ha ejecutado realmente.
No debes confundir una respuesta convincente con una ejecución real. Un modelo puede afirmar que ha consultado una herramienta aunque no haya realizado ninguna llamada.
Riesgos de seguridad al instalar servidores MCP
Un servidor MCP es software con capacidad para recibir información y ejecutar acciones. Instalarlo implica confiar tanto en su desarrollador como en sus dependencias, por lo que no debes ejecutar paquetes desconocidos únicamente porque aparezcan en una recopilación de herramientas.
Antes de añadir uno, revisa su repositorio, los permisos necesarios, las variables de entorno y las acciones que expone. Utiliza claves con privilegios mínimos y evita guardar credenciales personales o empresariales en configuraciones que puedan terminar compartiéndose.
También conviene desactivar las herramientas que no vayas a utilizar y mantener una confirmación humana para acciones irreversibles. MCP facilita la conexión entre aplicaciones, pero no convierte automáticamente una herramienta en segura.
Con una configuración adecuada, AnythingLLM y MCP permiten ampliar un asistente con herramientas locales, aplicaciones profesionales y servicios internos. La clave está en utilizar servidores compatibles, limitar sus permisos y comprobar cada acción antes de confiarles información o procesos importantes.
Soy un apasionado de la tecnología que ha convertido sus intereses «frikis» en profesión. Llevo más de 10 años de mi vida utilizando tecnología de vanguardia y trasteando todo tipo de programas por pura curiosidad. Ahora me he especializado en tecnología de ordenador y videojuegos. Esto es por que desde hace más de 5 años que trabajo redactando para varias webs en materia de tecnología y videojuegos, creando artículos que buscan darte la información que necesitas con un lenguaje entendible por todos.
Si tienes cualquier pregunta, mis conocimientos van desde todo lo relacionado con el sistema operativo Windows así como Android para móviles. Y es que mi compromiso es contigo, siempre estoy dispuesto a dedicarte unos minutos y ayudarte a resolver cualquier duda que tengas en este mundo de internet.