docs.theus.pe/docs/mcp theus.peInicio docs

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, los transportes soportados y los servidores internos que Theus monta por su cuenta (Ñaupa, computer-use y el contexto del proyecto).

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"
La pista de argumentos del comando es [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ónDescripció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-secretSolicita 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
Todo lo que va después de -- 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

SubcomandoQué hace
theus mcp listLista 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-choicesRestablece 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:

ÁmbitoSignificadoDónde se guarda
localPrivado para ti en este proyecto (por defecto).Configuración global de Theus, asociada a la ruta del proyecto.
projectCompartido con el equipo vía control de versiones..mcp.json en la raíz del proyecto.
userDisponible 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}" }
    }
  }
}
Los valores admiten expansión de variables de entorno con la sintaxis ${VAR} y ${VAR:-valor-por-defecto}. Así puedes versionar .mcp.json sin exponer secretos: los tokens se resuelven desde tu entorno al conectar.

Servidores internos: los que Theus monta solo

Además de los servidores que configuras tú, Theus trae servidores MCP propios que se montan sin tocar .mcp.json ni theus mcp add:

ServidorCómo se activaQué aporta
theus-naupa Automático si el binario naupa está instalado. Kill-switch: THEUS_NO_NAUPA=1. El motor de inteligencia de código Ñaupa: grafo AST del proyecto (tree-sitter), cadenas de llamadas, consultas Cypher y búsqueda semántica en <1 ms. Las herramientas de lectura van pre-permitidas; las que escriben pasan por el flujo de permisos normal. Ver Ñaupa.
theus-computer-use Opt-in explícito: THEUS_COMPUTER_USE=1 theus (solo macOS). Certifica tu equipo antes con theus --theus-computer-use-selftest. Control de escritorio: el agente ve la pantalla y opera mouse y teclado (screenshot, clics, type, key, scroll…). Requiere los permisos de Grabación de pantalla y Accesibilidad. Ver Computer-use.
theus --project-context-mcp Modo servidor: lo arrancas tú (o el cliente MCP) como subproceso stdio. Expone el contexto del proyecto — índice, recall híbrido y memorias — a otros agentes y editores MCP-compatibles. Detalle en la sección siguiente y en Theus como servidor MCP; sobre la memoria que sirve, ver Memoria.

Theus como servidor MCP: el contexto de tu proyecto

Además de consumir servidores MCP, Theus puede servir la inteligencia de tu proyecto por MCP. El comando theus --project-context-mcp arranca un servidor MCP por stdio que expone el índice del proyecto — el mismo grafo vivo, recall híbrido y memorias persistentes que usa el agente — a cualquier herramienta compatible con MCP.

Herramientas expuestas:

  • recall — búsqueda híbrida sobre el proyecto: devuelve símbolos con archivo:línea, memorias relacionadas y el subgrafo de relaciones, sin gastar tokens leyendo código.
  • symbols — símbolos del proyecto (funciones, clases, interfaces) con ubicación exacta; admite filtrar por archivo.
  • project_map — resumen del proyecto: archivos indexados, conteo de símbolos, entidades principales y esquema de base de datos si existe.
  • remember — persiste una decisión o aprendizaje como memoria del proyecto (sobrevive sesiones y es recuperable por recall).
  • memories — lista las memorias guardadas del proyecto.

Registro en el .mcp.json del cliente (cualquier agente o editor MCP-compatible):

{
  "mcpServers": {
    "theus-context": {
      "command": "theus",
      "args": ["--project-context-mcp"]
    }
  }
}
Si hay una sesión de Theus corriendo en el proyecto, el servidor usa el índice vivo (actualizado en tiempo real mientras el agente trabaja). Si no, carga el índice persistido en ~/.theus/knowledge/; y si el proyecto nunca se indexó, lo indexa automáticamente al arrancar. La raíz del proyecto se toma del directorio de trabajo o de THEUS_PROJECT_ROOT.

Transportes soportados

  • stdio — Theus lanza el servidor como subproceso local y se comunica por entrada/salida estándar. Requiere command, opcionalmente args y env. Es el transporte por defecto.
  • http — Servidor remoto por HTTP (streamable). Requiere url; admite headers y OAuth.
  • sse — Servidor remoto vía Server-Sent Events. Requiere url; admite headers y 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

VariableEfecto
MCP_TIMEOUTTiempo máximo de arranque/conexión de un servidor MCP.
MCP_TOOL_TIMEOUTTiempo máximo de ejecución de una herramienta MCP.
MAX_MCP_OUTPUT_TOKENSLímite de tokens en la salida devuelta por una herramienta MCP.
MCP_CLIENT_SECRETFuente del client secret de OAuth cuando usas --client-secret.

Flujo recomendado

  1. Añade el servidor con theus mcp add … eligiendo el ámbito según quién debe verlo.
  2. Verifica con theus mcp list y theus mcp get <name> en un directorio de confianza.
  3. Dentro de la sesión, gestiona el estado con /mcp, /mcp enable, /mcp disable y /mcp reconnect.
Theus — agente de código local-first y multimodelo · Hecho en Perú