Servidores MCP (Model Context Protocol)
MCP es el estándar abierto que Theus usa para conectar herramientas externas —bases de datos, APIs, sistemas de tickets, navegadores— como servidores que exponen tools, recursos y prompts a tu sesión.
Cuando conectas un servidor MCP, sus herramientas aparecen automáticamente en la sesión de Theus con el prefijo del servidor y el modelo puede invocarlas igual que las herramientas nativas. Esta página cubre el comando /mcp dentro de la TUI, los subcomandos de línea de comandos theus mcp …, el formato de configuración y los transportes soportados.
El comando /mcp
Dentro de una sesión de Theus, /mcp abre el panel de gestión de servidores MCP, donde ves el estado de cada conexión (conectado, deshabilitado, error) y puedes reconectar o activar/desactivar servidores. Acepta estos argumentos directos:
/mcp # abre el panel de configuración de servidores
/mcp enable [server] # habilita un servidor (o todos si omites el nombre)
/mcp disable [server] # deshabilita un servidor (o todos)
/mcp reconnect <server> # fuerza la reconexión de un servidor
Ejemplos:
/mcp enable # habilita todos los servidores configurados
/mcp disable sentry # deshabilita el servidor "sentry"
/mcp reconnect sentry # reconecta el servidor "sentry"
[enable|disable [server-name]]. Deshabilitar un servidor mantiene su configuración pero retira sus herramientas de la sesión hasta que vuelvas a habilitarlo.Añadir y configurar servidores MCP
Desde tu terminal (fuera de la sesión interactiva) usa el grupo de subcomandos theus mcp para administrar servidores. El subcomando principal es add:
theus mcp add <name> <commandOrUrl> [args...]
Opciones de theus mcp add
| Opción | Descripción |
|---|---|
-s, --scope <scope> | Ámbito de configuración: local (por defecto), user o project. |
-t, --transport <transport> | Tipo de transporte: stdio, sse o http. Por defecto stdio. |
-e, --env <env...> | Variables de entorno para el subproceso stdio (ej. -e API_KEY=xxx). |
-H, --header <header...> | Cabeceras HTTP/SSE (ej. -H "Authorization: Bearer ..."). |
--client-id <clientId> | Client ID de OAuth para servidores HTTP/SSE. |
--client-secret | Solicita el client secret de OAuth (o toma MCP_CLIENT_SECRET del entorno). |
--callback-port <port> | Puerto fijo para el callback de OAuth (para servidores con redirect URI pre-registrado). |
Ejemplos reales
# Servidor HTTP:
theus mcp add --transport http sentry https://mcp.sentry.dev/mcp
# Servidor HTTP con cabecera de autorización:
theus mcp add --transport http corridor https://app.corridor.dev/api/mcp --header "Authorization: Bearer ..."
# Servidor stdio con variables de entorno:
theus mcp add -e API_KEY=xxx my-server -- npx my-mcp-server
# Servidor stdio con flags del subproceso:
theus mcp add my-server -- my-command --some-flag arg1
-- se pasa tal cual como argumentos del subproceso stdio. Si el commandOrUrl parece una URL (empieza por http://, https://, localhost o termina en /sse o /mcp) pero no especificaste --transport, Theus te avisa de que lo está tratando como servidor stdio.Añadir con JSON
Para pegar una configuración completa (stdio o SSE) en formato JSON:
theus mcp add-json <name> '<json>' [--scope local|user|project]
Otros subcomandos theus mcp
| Subcomando | Qué hace |
|---|---|
theus mcp list | Lista los servidores MCP configurados. |
theus mcp get <name> | Muestra los detalles de un servidor. |
theus mcp remove <name> [--scope …] | Elimina un servidor. Sin --scope, lo quita del ámbito donde exista. |
theus mcp serve [--debug] [--verbose] | Arranca el propio Theus como servidor MCP. |
theus mcp add-from-theus-desktop [--scope …] | Importa servidores desde Theus Desktop (solo Mac y WSL). |
theus mcp reset-project-choices | Restablece las aprobaciones y rechazos de servidores de ámbito proyecto (.mcp.json). |
theus mcp list y theus mcp get omiten el diálogo de confianza del espacio de trabajo e inician los servidores stdio de .mcp.json para comprobar su estado. Usa estos comandos solo en directorios de confianza.Ámbitos de configuración
El ámbito (--scope) decide dónde se guarda la configuración y quién la ve:
| Ámbito | Significado | Dónde se guarda |
|---|---|---|
local | Privado para ti en este proyecto (por defecto). | Configuración global de Theus, asociada a la ruta del proyecto. |
project | Compartido con el equipo vía control de versiones. | .mcp.json en la raíz del proyecto. |
user | Disponible en todos tus proyectos. | Configuración global de tu usuario Theus. |
Formato del archivo .mcp.json
Los servidores de ámbito project viven en un archivo .mcp.json en la raíz del repositorio, bajo la clave mcpServers. Cada entrada se identifica por su nombre y describe su transporte:
{
"mcpServers": {
"my-server": {
"type": "stdio",
"command": "npx",
"args": ["my-mcp-server"],
"env": { "API_KEY": "${MY_API_KEY}" }
},
"sentry": {
"type": "http",
"url": "https://mcp.sentry.dev/mcp",
"headers": { "Authorization": "Bearer ${SENTRY_TOKEN}" }
}
}
}
${VAR} y ${VAR:-valor-por-defecto}. Así puedes versionar .mcp.json sin exponer secretos: los tokens se resuelven desde tu entorno al conectar.Transportes soportados
stdio— Theus lanza el servidor como subproceso local y se comunica por entrada/salida estándar. Requierecommand, opcionalmenteargsyenv. Es el transporte por defecto.http— Servidor remoto por HTTP (streamable). Requiereurl; admiteheadersy OAuth.sse— Servidor remoto vía Server-Sent Events. Requiereurl; admiteheadersy OAuth.
Autenticación OAuth
Los servidores HTTP y SSE pueden requerir OAuth. Pasa --client-id y usa --client-secret para que Theus te pida el secreto de forma segura (o léelo de la variable MCP_CLIENT_SECRET). Si el servidor exige un redirect URI pre-registrado, fija el puerto de callback con --callback-port. Las opciones de OAuth solo aplican a HTTP/SSE; para stdio se ignoran con un aviso.
Variables de entorno relacionadas
| Variable | Efecto |
|---|---|
MCP_TIMEOUT | Tiempo máximo de arranque/conexión de un servidor MCP. |
MCP_TOOL_TIMEOUT | Tiempo máximo de ejecución de una herramienta MCP. |
MAX_MCP_OUTPUT_TOKENS | Límite de tokens en la salida devuelta por una herramienta MCP. |
MCP_CLIENT_SECRET | Fuente del client secret de OAuth cuando usas --client-secret. |
Flujo recomendado
- Añade el servidor con
theus mcp add …eligiendo el ámbito según quién debe verlo. - Verifica con
theus mcp listytheus mcp get <name>en un directorio de confianza. - Dentro de la sesión, gestiona el estado con
/mcp,/mcp enable,/mcp disabley/mcp reconnect.