VeriTeknik

Gestiona los servidores de VeriTeknik, DNS, copias de seguridad y tickets de soporte desde tu asistente de IA: estado del servidor, registros, cambios de DNS y tickets.

Servidor MCP alojado

npx add-mcp 'https://veriteknik.com/api/mcp'

Se instala en Claude Code, Codex, Cursor y más

Documentación

Conecta Agentes de IA (MCP)

La belleza del pez Babel era que hacía que todos se entendieran sin enseñar a nadie un idioma nuevo. MCP (Model Context Protocol) hace el mismo trabajo: una aplicación como Claude Desktop puede hacer una pregunta a tu cuenta de VeriTeknik, mirar tus servidores o abrir un ticket de soporte, sin aprender nunca VeriTeknik.

Te pones el pez en la oreja y te lo vuelves a quitar. Haces la conexión, dibujas sus límites y la revocas con un clic.

¿Para qué sirve?

Una vez que existe la conexión, puedes decir cosas como estas en Claude Desktop:

  • "Lista mis servidores de VeriTeknik: ¿cuáles están en ejecución?"
  • "¿Cuáles eran las cifras de disco y memoria de web-01?"
  • "¿Tengo alguna factura impagada?"
  • "¿Cuándo caduca yourcompany.com y cuáles son sus registros DNS?"
  • "Abre un ticket de soporte para este error y resume los registros en él."

Claude lleva la pregunta a VeriTeknik, lee la respuesta y te la explica. Sin segundo panel, sin segunda contraseña, sin ir y venir de copiar y pegar en medio.

[!info] ¿Qué es exactamente MCP? Un protocolo común que las aplicaciones usan para hablar con un servicio. En nuestro lado vive en https://veriteknik.com/api/mcp; Claude Desktop, claude.ai y otros clientes MCP que se ejecutan dentro de un navegador pueden conectarse a él. Así que esto no es una "integración de Claude Desktop" sino una puerta estándar: Claude Desktop simplemente resulta ser el invitado que llama más a menudo ahora mismo.

Antes de Empezar

Tres cosas deben cumplirse:

  1. El acceso MCP debe estar activado para tu empresa. La función se habilita por empresa y está desactivada por defecto. Un propietario o administrador de la empresa activa Habilitar acceso MCP en la tarjeta Configuración > Conexiones de Agente > Acceso de Agente de IA (MCP). Cada miembro activo puede ver la tarjeta; solo un propietario o administrador puede cambiar el interruptor, y la tarjeta lo indica con una pista de solo lectura.
  2. Tu cuenta debe pertenecer a una empresa. Una conexión siempre se hace en nombre de una empresa; si tu cuenta aún no está vinculada a una, la pantalla de consentimiento te rechazará amablemente.
  3. Autenticación de dos factores: opcional, pero muy recomendada. Con 2FA activado, cada conexión que pasa por la página de consentimiento —incluida la primera que hagas— te pide un código nuevo, y también lo hacen ampliar una conexión y aprobar una acción irreversible. Una vez verificado, no se te vuelve a preguntar durante dos horas.

[!tip] Apagar el interruptor no borra nada Apagar Habilitar acceso MCP bloquea inmediatamente todas las aplicaciones conectadas. Volver a encenderlo restaura el acceso sin una nueva aprobación. Es un fusible, no un botón de demolición.

Configuración: clientes

La URL de conexión es la misma para todos los clientes, y el bloque Detalles de conexión en la tarjeta Configuración > Conexiones de Agente > Acceso de Agente de IA (MCP) te la entrega:

https://veriteknik.com/api/mcp

La mayoría de los clientes que leen su configuración de un archivo aceptan esta forma (Claude Code insiste en la línea type, Cursor y los demás la ignoran):

{
  "mcpServers": {
    "veriteknik": {
      "type": "http",
      "url": "https://veriteknik.com/api/mcp"
    }
  }
}

Sea cual sea el cliente que uses, el orden es el mismo: declaras la URL, tu primera llamada de herramienta abre la página de consentimiento de VeriTeknik en el navegador (empresa, grupos de permisos, tope mensual, 90 días), y una vez que la apruebas, la misma conexión se reutiliza hasta que caduca o la revocas.

[!warning] El cliente debe ser compatible con OAuth VeriTeknik no emite tokens estáticos de larga duración. El cliente debe ser compatible con OAuth 2.1 con registro dinámico de clientes (DCR): Claude Desktop, Claude Code y Cursor lo son. Un cliente sin ello no puede conectarse hoy: no hay ninguna clave que copiar en una casilla.

Dónde: Configuración > Conectores.

  1. Abre Claude Desktop y ve a Configuración > Conectores.
  2. Elige Añadir conector personalizado y pega la URL: https://veriteknik.com/api/mcp
  3. Inicia sesión y aprueba la conexión cuando se te pida.

En el tercer paso, tu navegador abre la página de consentimiento de VeriTeknik. Si ya has iniciado sesión, llegas directamente allí; si no, primero inicias sesión.

Dónde: la terminal.

claude mcp add --transport http veriteknik https://veriteknik.com/api/mcp

O ponlo en .mcp.json en la raíz del proyecto (este es el bloque que la tarjeta de conexión del hub copia para ti; Claude Code lo rechaza sin la línea type):

{
  "mcpServers": {
    "veriteknik": {
      "type": "http",
      "url": "https://veriteknik.com/api/mcp"
    }
  }
}

Luego inicia una sesión, escribe /mcp e inicia sesión en veriteknik; la página de consentimiento se abre en tu navegador. Claude Code ejecuta el flujo OAuth por ti y nunca pide un token.

Dónde: Configuración > Conectores > Crear.

El modo desarrollador debe estar activado primero (Configuración > Seguridad e inicio de sesión); en un espacio de trabajo empresarial, un administrador lo activa. Crear un conector pide un nombre, una descripción y la URL del servidor MCP; pon https://veriteknik.com/api/mcp en el campo de URL.

Los conectores personalizados no están disponibles en todos los planes (el plan gratuito no tiene ninguno). OpenAI renombró estos menús durante 2026, así que si tu pantalla no coincide, busca "conector" o "MCP" en la configuración.

Dónde: ~/.cursor/mcp.json (todos los proyectos) o .cursor/mcp.json en la raíz del proyecto.

{
  "mcpServers": {
    "veriteknik": {
      "url": "https://veriteknik.com/api/mcp"
    }
  }
}

Después de guardar, Cursor marca el servidor como Necesita inicio de sesión; haz clic en él y la página de consentimiento se abre en tu navegador.

Dónde: .vscode/mcp.json en la raíz del proyecto.

{
  "servers": {
    "veriteknik": {
      "type": "http",
      "url": "https://veriteknik.com/api/mcp"
    }
  }
}

La clave es servers, no mcpServers, y toma "type": "http". La primera llamada en modo agente te pide iniciar sesión.

Dónde: ~/.codeium/windsurf/mcp_config.json (también accesible desde Cascade > MCP).

{
  "mcpServers": {
    "veriteknik": {
      "serverUrl": "https://veriteknik.com/api/mcp"
    }
  }
}

Para servidores remotos, el campo es serverUrl, no url. Windsurf admite OAuth en todos los transportes; la primera llamada abre la página de consentimiento.

Dónde: Configuración > Herramientas > Asistente de IA > Protocolo de Contexto de Modelo (MCP) > Añadir, luego pega JSON en el diálogo.

{
  "mcpServers": {
    "veriteknik": {
      "url": "https://veriteknik.com/api/mcp"
    }
  }
}

Los servidores remotos declarados por URL necesitan 2025.3 o posterior. Nota: la documentación propia de JetBrains no dice nada sobre un flujo de inicio de sesión OAuth para servidores MCP remotos; si AI Assistant no puede abrir la página de consentimiento en un navegador, la conexión no se puede hacer, porque no entregamos ningún token para pegar. Si lo has probado, cuéntanos cómo fue.

Dónde: Configuración > Comportamiento del Agente > Servidores MCP, o ~/.config/kilo/kilo.jsonc directamente (.kilo/kilo.jsonc para un proyecto).

{
  "mcp": {
    "veriteknik": {
      "type": "remote",
      "url": "https://veriteknik.com/api/mcp"
    }
  }
}

Cuando el servidor admite OAuth, Kilo Code inicia el flujo por sí mismo al conectarse.

Roo Code no inicia el flujo OAuth contra un servidor MCP remoto protegido (mejora abierta #8119; el repositorio pasó a solo lectura en mayo de 2026). Como no emitimos tokens estáticos, no puede conectarse a VeriTeknik hoy.

Kilo Code, de la misma familia y aún mantenido, sí admite OAuth; su pestaña te da la misma configuración.

Dónde: la terminal, o ~/.config/devin/mcp_config.json.

devin mcp add veriteknik https://veriteknik.com/api/mcp
devin mcp login veriteknik

El comando login abre la página de consentimiento de VeriTeknik en tu navegador. Para configurarlo manualmente en su lugar:

{
  "mcpServers": {
    "veriteknik": {
      "url": "https://veriteknik.com/api/mcp",
      "transport": "http"
    }
  }
}

Devin recurre a SSE cuando ve un 4xx; nuestro endpoint habla HTTP Streamable estándar, así que no se necesita ningún respaldo.

Dónde: ~/.gemini/settings.json.

{
  "mcpServers": {
    "veriteknik": {
      "httpUrl": "https://veriteknik.com/api/mcp"
    }
  }
}

El campo es httpUrl, no url. Luego inicia sesión en el servidor veriteknik con /mcp auth dentro de una sesión; Gemini CLI hace el registro dinámico de clientes y almacena el token por sí mismo.

Dónde: la terminal, o ~/.codex/config.toml.

codex mcp add veriteknik --url https://veriteknik.com/api/mcp
codex mcp login veriteknik

Para escribirlo manualmente en su lugar:

[mcp_servers.veriteknik]
url = "https://veriteknik.com/api/mcp"

El mismo config.toml es compartido por la CLI de Codex, la extensión del IDE y la aplicación de escritorio. Verifica la conexión con /mcp.

Para añadirlo desde la aplicación en su lugar: abre el menú de la cuenta en la esquina superior derecha, luego Configuración > Plugins > Añadir (esquina superior derecha) > Añadir servidor MCP. En el formulario, establece Tipo en HTTP Streamable, pon https://veriteknik.com/api/mcp en URL y haz clic en Guardar. El nombre es tuyo para elegir; es lo que verás en la lista de servidores.

Deja los campos de token de portador y cabecera vacíos. Este servidor no usa una clave que lleves contigo: pulsa Autenticar junto a la fila en la pestaña MCPs, y tu navegador se abre, te inicia sesión en VeriTeknik y te pregunta qué permisos estás otorgando. La aplicación empieza a ver herramientas una vez que apruebas.

Dónde: Integraciones en la barra lateral derecha > Instalar > editar mcp.json.

{
  "mcpServers": {
    "veriteknik": {
      "type": "http",
      "url": "https://veriteknik.com/api/mcp"
    }
  }
}

Guarda, luego pulsa Autenticar junto al servidor: tu navegador se abre, pasas por la pantalla de consentimiento y aterrizas en "Autenticación Exitosa".

LM Studio añadió OAuth para servidores MCP remotos en 0.4.10 (abril de 2026); en una versión anterior, actualiza primero.

Dónde: el icono de Servidores MCP en el panel de Cline > Configurar > Configurar Servidores MCP.

{
  "mcpServers": {
    "veriteknik": {
      "type": "streamableHttp",
      "url": "https://veriteknik.com/api/mcp"
    }
  }
}

El valor type es camelCase: escribe streamable-http y Cline recurre a SSE y obtiene un 405. La documentación de Cline no dice nada sobre un inicio de sesión OAuth para servidores remotos; si lo has probado, cuéntanos cómo fue.

Para un cliente que no está listado, empieza con la forma genérica anterior (mcpServers + url). Si pide un transporte, elige HTTP Streamable: https://veriteknik.com/api/mcp es un único endpoint HTTP, y no hay una dirección SSE separada.

El único requisito es OAuth: un cliente que no puede abrir la página de consentimiento en un navegador no puede conectarse, porque no entregamos ningún token estático para pegar.

Clientes que probamos

ClienteEstado
Claude DesktopProbado por nosotros
MCP InspectorProbado por nosotros
DevinVerificado por un usuario (informe de usuario, septiembre de 2026)
Claude CodeProbado por nosotros (las 26 herramientas, septiembre de 2026)
ChatGPTEscrito a partir de su documentación, cuéntanos cómo fue
CursorEscrito a partir de su documentación, cuéntanos cómo fue
VS Code / GitHub CopilotEscrito a partir de su documentación, cuéntanos cómo fue
WindsurfEscrito a partir de su documentación, cuéntanos cómo fue
JetBrains AI AssistantEscrito a partir de su documentación, soporte OAuth poco claro
Kilo CodeEscrito a partir de su documentación, cuéntanos cómo fue
Roo CodeSegún su documentación: sin OAuth, no puede conectarse hoy
Gemini CLIEscrito a partir de su documentación, cuéntanos cómo fue
Codex (app y CLI)Probado por nosotros (septiembre de 2026)
LM StudioProbado por nosotros (septiembre de 2026)
ClineEscrito a partir de su documentación, soporte OAuth poco claro

Estos clientes renombran sus menús aproximadamente una vez al mes. Si un paso no coincide con lo que ves, abre un ticket de soporte: te conectaremos y arreglaremos esta página.

La Página de Consentimiento: Tú Dibujas el Sobre

La página de consentimiento es más que un botón de "aceptar". Aquí es donde dibujas el sobre de seguridad de esa conexión: qué puede tocar, cuánto puede gastar al mes y cuánto tiempo vive.

Empresa

Elige la empresa para la que se hace la conexión en Seleccionar empresa. Una conexión pertenece a una empresa; una segunda empresa significa una segunda conexión.

Grupos de permisos

Los permisos se entregan en grupos significativos, no uno a uno:

GrupoQué concedePredeterminado
Servidores: verVer el estado de VPS, servidores y monitoreo, y leer la salud en vivo de un servidor: tiempo de actividad, carga, memoria, discos, qué servicios están en ejecución o fallaron, contenedores y puertos en escuchaActivado
Servidores: gestionarIniciar, detener y reiniciar un servidor, y tomar instantáneasDesactivado
Investigación de servidoresLeer registros y archivos del servidor, listar directorios, buscar contenido de archivos y ver el inventario de respaldos (solo lectura)Desactivado
Servidores: crear y eliminarSolicitar un servidor desde el saldo y eliminar un servidor creado por MCP con confirmación exacta del nombre de hostDesactivado
Servidores: ejecutar tareasInstalar SSL, publicar sitios estáticos y ejecutar comandos segurosDesactivado
Servidores: comandos de administraciónComandos de cambio como instalar paquetes, configurar y reiniciar servicios, escribir archivos; se aplican las reglas de BIOS, clasificación y autonomía del propio servidor, la clase destructiva nunca se ejecuta, una notificación después de cada loteDesactivado
Dominios: verVer dominios y registros DNSActivado
DNS: gestionarAgregar, editar y eliminar registros DNSDesactivado
Dominios: registrar y gestionarRegistrar un nuevo dominio desde el saldoDesactivado
Facturación: verVer facturas, contratos y cotizacionesActivado
Soporte: ver tus propios ticketsVer los tickets que abristeActivado
Soporte: abrir y responder ticketsAbrir un ticket y responder a los existentesActivado
Equipo: verVer miembros del equipoActivado

La lista muestra los grupos que realmente tienen una herramienta detrás hoy. Una capacidad sin herramienta detrás no aparece en la página de consentimiento: pedirte que apruebes algo que la conexión no puede usar hace que el sobre parezca más amplio de lo que es. El día que una capacidad llega a MCP, su grupo vuelve a la lista por sí solo; así llegaron Servidores: crear y eliminar y Dominios: registrar y gestionar.

Debajo de cada interruptor, los nombres de las herramientas que ese grupo activa se imprimen como etiquetas pequeñas (stop_vps, register_domain, etc.). Las etiquetas provienen de la misma fuente que la lista de herramientas que verá tu aplicación; un grupo sin etiquetas debajo tiene todas sus herramientas desactivadas ahora mismo, y activarlo no te aporta nada.

Un grupo que tu rol no posee llega bloqueado, con "Tu rol actual no tiene este permiso" a su lado. Nadie puede otorgar a una aplicación un permiso que no posee él mismo: el sobre nunca puede superar el techo del propio rol.

No puedes continuar sin seleccionar ningún grupo: "Selecciona al menos un grupo de permisos. Una conexión que no puede hacer nada no vale la pena crearla."

Límite de gasto mensual

Límite de gasto mensual (USD) es el tope de lo que esta conexión puede gastar en un mes calendario. El valor predeterminado es 0.00 USD. Hasta que establezcas un límite, la conexión no puede realizar pedidos desde tu saldo (crear un servidor, registrar un dominio); las herramientas de lectura y gestión no se ven afectadas. El dinero solo sale del saldo prepago existente de VeriTeknik de tu empresa; la conexión nunca solicita, almacena ni usa datos de tarjeta, y no puede recargar el saldo. Estableces el límite en la pantalla de consentimiento o más tarde con Editar. Las conexiones creadas antes del 2 de octubre de 2026 conservaron el límite que tenían.

Gastado este mes lee el precio bruto en USD registrado en los pedidos creados a través de esta conexión desde el inicio del mes calendario UTC. Un reembolso restaura el crédito de la billetera pero no reduce ese total mensual. Las herramientas de billetera y costos solo leen datos; la creación y eliminación de servidores requieren el permiso de ciclo de vida por separado.

90 días

Una conexión es válida por 90 días desde el momento en que la apruebas, luego expira por sí sola. Reconectar la misma aplicación reinicia el reloj y vuelve a poner el sobre frente a ti para una nueva aprobación. No entregamos una clave permanente; entregamos una cita renovable.

La advertencia de "identidad no verificada"

Algunas aplicaciones se registran con nosotros de forma anónima. Para una de esas, la página de consentimiento lleva este aviso: "Esta aplicación se registró de forma anónima el {fecha} y su identidad no fue verificada. Solo permite una aplicación que reconozcas."

La advertencia es información, no una acusación: no tenemos forma de verificar quién es esa aplicación. Si iniciaste la conexión tú mismo, todo está bien. Si apareció una página de consentimiento que no solicitaste, pulsa Denegar.

Denegar no crea ninguna conexión: la aplicación recibe una respuesta de "acceso denegado", no se crea ninguna conexión ni concesión en tu cuenta, y no se lee ni una sola fila de tus datos. La decisión en sí se escribe en el registro de auditoría: rechazar también es un evento de seguridad.

Lo que tu agente puede hacer hoy

El catálogo contiene 46 herramientas; una conexión solo ve aquellas que su sobre permite. Una herramienta perteneciente a un grupo que no concediste ni siquiera aparece en la lista de la aplicación.

Servidores

  • Listar tus servidores; leer un servidor completo (direcciones IP, sistema operativo, CPU/RAM/almacenamiento/ancho de banda)
  • Listar instantáneas y tomar una nueva
  • Una instantánea que no se pudo tomar (el servidor ya tiene 3, o su nodo no tiene almacenamiento de instantáneas) se informa como un error con el motivo, nunca como un éxito; los comandos de energía pueden devolver un taskId vacío, lo cual no es un fallo: lee el estado de nuevo con get_vps_details
  • Iniciar, detener y reiniciar un servidor
  • Leer el uso de CPU, memoria, red y disco de un servidor a lo largo del tiempo
  • Leer el consumo de ancho de banda contra la cuota incluida y cualquier excedente
  • Leer el monitoreo de tiempo de actividad de un servidor: si está activo ahora mismo, tiempo de actividad de 24 horas / 7 días / 30 días, ping promedio y eventos recientes
  • Estado activo/inactivo en vivo de servidores y dominios monitoreados
  • Listar los servidores dedicados en tu cuenta con nombre de host, IPv4/IPv6, estado registrado, ID de contrato vinculado y recursos de CPU/RAM/almacenamiento (list_my_dedicated_servers)
  • El catálogo de servidores dedicados (físicos) en venta, con precios

Dominios y DNS

  • Listar tus dominios con estado y fechas de vencimiento
  • Verificar si un nombre está disponible y cuánto cuesta una extensión
  • Registrar un nuevo dominio desde el saldo (sección propia abajo)
  • Leer la zona DNS de un dominio y todos sus registros
  • Listar tus monitores de dominio y leer el estado de uno, incluida la vida útil del certificado

Facturación

  • Leer tus facturas y las partidas de una sola factura
  • Leer tus contratos, sus partidas y términos de renovación

Soporte

  • Listar tus tickets y leer el historial de conversación de uno
  • Abrir un nuevo ticket y responder a uno existente

Equipo

  • Listar los miembros de tu empresa, sus roles y su estado

Dentro de tu servidor (ver la sección abajo)

  • Una instantánea de salud en vivo de un servidor: carga, memoria, discos, servicios en ejecución y fallidos, contenedores, puertos en escucha
  • Las últimas líneas de un registro conocido y una búsqueda dentro de él
  • El contenido de un directorio y una ventana de líneas de un archivo de texto
  • Una búsqueda de texto dentro de un directorio
  • Estado del respaldo: cuándo se tomó el respaldo más reciente, cuánto espacio usa, si existe un programa

Billetera y costo de VPS

HerramientaQué devuelveGrupo de permisos
get_balanceSaldo disponible, anticipo reservado, uso no facturado, moneda, presupuesto de conexión y el reloj del servidor (serverTime, UTC)Facturación: lectura
estimate_costLímite mensual, precio USD por hora, configuración, impuestos, anticipo requerido y si la billetera lo cubreServidores: lectura

Para una cotización, proporciona vcpu, ram en MB, disk en GB y opcionalmente ips (predeterminado: 1), usando valores del catálogo VPS actual. La cotización usa la moneda de facturación y el perfil fiscal de tu empresa y no crea ningún pedido. balanceCovers verifica el anticipo requerido contra el saldo disponible de la billetera; remainingUsd describe por separado el presupuesto de pedido restante de la conexión. balance es la cantidad gastable: el anticipo reservado para servidores en ejecución ya se ha movido fuera de ella y se muestra como reservedBalance (crear un servidor reduce el saldo por el anticipo de inmediato); uninvoicedUsage es la parte de ese anticipo consumida hasta ahora, no un cargo adicional. Toda la billetera es balance + reservedBalance. Los nuevos pedidos de VPS MCP reservan el límite mensual y la configuración como anticipo; no se emite ninguna factura mensual en la creación. La tarifa por hora es el precio mensual dividido por 720; las horas iniciadas se redondean hacia arriba, se aplica el límite mensual y la configuración se agrega una vez. Cada monto neto por período de recurso se redondea hacia arriba a un centavo una vez, seguido del cálculo de impuestos. El uso se agrupa por empresa y moneda al final del mes calendario UTC, con un umbral de factura de 10 USD. La fecha límite obligatoria de facturación anula el umbral; eliminar un servicio puede requerir una factura antes del fin de mes. Los servicios mensuales existentes mantienen su modelo actual. Una conexión existente puede necesitar que Facturación: ver se apruebe nuevamente para ver su saldo de billetera.

Durante las últimas 48 horas de un período, se prepara una advertencia una vez para ese período si el saldo disponible no puede cubrir el próximo anticipo; la verificación diaria proporciona una oportunidad de advertencia mientras funciona normalmente. Puedes recargar tu saldo en el panel. Se te notifica después de que los fondos insuficientes realmente causen una suspensión; una vez que haya suficiente saldo, el servidor se reanuda en la siguiente verificación diaria y recibes una notificación separada. Estas notificaciones enlazan al servidor, no a una factura. Los fallos de tipo de cambio se informan al equipo técnico sin enviar al cliente una notificación de saldo bajo.

Descubrir opciones de pedido de VPS

Pide a tu agente que llame a list_vps_catalog antes de estimar o crear un servidor. Lee el mismo catálogo que la página de VPS y requiere Servidores: lectura. Omite kind para todo el catálogo, o selecciona plans, images o applications.

SecciónQué devuelve
plansMatrices seleccionables de vcpu, ram (MB), disk (GB) y ips. Los tamaños retirados están excluidos. El disco adicional está actualmente fijado en cero para pedidos MCP.
imagesNombre del SO, versión, id para enviar como osImageVersionId y minimumRamMb. Selecciona suficiente RAM para el SO elegido.
applicationsNombre de la aplicación, slug, categoría, disponibilidad y recursos: el minimumRamMb publicado por el proveedor, minimumDiskGb, minimumVcpu y recommendedRamMb (null cuando no está publicado), más enforcedMinimums, los campos mínimos que un pedido aplica. Solo las entradas availability: "mcp" se pueden pedir con applicationSlug.

Las aplicaciones hub_configuration_required necesitan el formulario en la página de VPS; las aplicaciones unavailable no están listas para pedidos. Elige exactamente una imagen de SO o aplicación, luego llama a estimate_cost con valores de recursos de plans y revisa la cotización antes de create_vps. Los valores del catálogo y los ID de imagen pueden cambiar; el pedido los revalida. Si una fuente de catálogo solicitada falla, la herramienta informa un error en lugar de tratar el fallo como un catálogo vacío.

Registrar un dominio

Aprueba Dominios: registrar y gestionar; la herramienta register_domain viene con él. El interruptor de herramienta del personal también debe estar habilitado.

HerramientaComportamiento
register_domainToma domainName y un period opcional (1 a 10 años). Pregunta a search_domain primero por disponibilidad y precio. Un plazo de varios años se cotiza como un primer año al precio de registro más los años restantes al precio de renovación; una promoción cubre solo el primer año. La tarifa se paga solo desde el saldo; nunca se cobra una tarjeta. Si el registrador rechaza, el monto regresa al saldo.
Los datos del registrante nunca se inventan: el nombre, el correo electrónico y el teléfono verificado provienen del usuario que realiza el pedido; la dirección y el país, del perfil de facturación de la empresa; y los cuatro contactos (registrante, administrador, técnico y de facturación) son la misma persona. Si la dirección de facturación no tiene código postal, el agente puede pasar postalCode, o añadirlo a la dirección; cualquier otro campo faltante se devuelve como requisito previo de finalización del perfil en el hub, y no se crea ningún pedido. Para un nombre de .tr, la identidad del registrante (documento nacional de identidad para personas físicas, número de identificación fiscal y oficina tributaria para empresas) se lee del perfil de la empresa; si falta, se te envía al hub de la misma manera. Un dominio registrado se delega a los servidores de nombres de VeriTeknik, por lo que add_dns_record funciona en él de inmediato. Si otro pedido sigue en ejecución en la misma conexión (por ejemplo, la creación de un servidor), el segundo espera a que termine; así es como el límite de gasto mensual ve cada pedido por separado.

Crear y eliminar un VPS

Aprueba Servidores: crear y eliminar para usar create_vps y delete_vps. El interruptor de herramientas del personal también debe estar habilitado.

HerramientaComportamiento
create_vpsToma hostname, vcpu, ram (MB), disk (GB), ips opcional, y exactamente una versión de sistema operativo o slug de aplicación. El límite mensual y la configuración se reservan solo del saldo; el uso se factura más tarde. El acceso a Morpheus (la puerta a través de la cual se conectan las herramientas del servidor) está activado por defecto y se configura automáticamente una vez que el servidor ha arrancado; la empresa debe haber aceptado el anexo CogMem-AI una vez; de lo contrario, el paso accept_cogmem_contract se devuelve antes de que se mueva cualquier dinero. morpheusAccess: false crea el servidor sin Morpheus.
get_vps_detailsRellena una IP pendiente desde Solus. Los servidores creados por MCP incluyen createdViaMcp y refundIfDeletedNow de la misma autoridad de reembolso por eliminación. Cada servidor lleva morpheus.access, ya sea que las herramientas del servidor puedan alcanzarlo: active, pending (configuración automática después de la creación aún en ejecución), failed (no completado en un día, actívalo en el hub), not_enabled (nunca activado), unreachable (existe una credencial pero el servidor no se puede alcanzar en este momento), disabled (la credencial fue deshabilitada; vuelve a habilitarla en el hub).
delete_vpsPrimero envía vpsId para el nombre de host y la vista previa del reembolso. Luego envía el confirmHostname exacto con un nuevo requestId para eliminar permanentemente.

Cada llamada de creación/eliminación requiere un UUID requestId. Repetir una llamada completada dentro de diez minutos devuelve su primer resultado. Si la creación devuelve ipAddress: null y provisioning: true, llama a get_vps_details para la dirección. monthlyUsd es el límite mensual en USD; hourlyUsd es la tarifa horaria en USD. reservedFromBalance es el anticipo; el campo de compatibilidad chargedFromBalance devuelve la misma cantidad en el currency de la empresa. Esta cantidad no representa el uso facturado en la creación. Los requisitos previos faltantes devuelven una acción del hub: top_up, complete_company, verify_phone. No envíes datos de tarjetas de pago.

MCP solo puede eliminar un servidor creado a través de MCP para la misma empresa. Otra conexión autorizada puede eliminarlo incluso después de que se revoque su conexión de origen. Elimina los servidores creados desde el panel en el hub. Una discrepancia en el nombre de host devuelve una vista previa de confirmación nueva; no se requiere un clic de aprobación separado en el hub. Eliminar un servicio por horas nuevo libera solo su anticipo no utilizado; el uso consumido permanece para la facturación agrupada. Liberar el anticipo no reabre el presupuesto mensual bruto de pedidos de la conexión. Para cambiar la configuración o recrear un servicio por horas, solicita un nuevo servidor con las especificaciones requeridas.

Una creación incierta devuelve review_order o reconciliationRequired. No vuelvas a pedir con un nuevo requestId; pide al soporte que inspeccione los identificadores del servidor/pedido. Los nuevos pedidos a través de esa conexión esperan hasta que se complete la revisión. Las lecturas de billetera y la eliminación de servidores elegibles siguen disponibles.

Mirando dentro de tu servidor

Cuando una aplicación se comporta mal, la pregunta real generalmente no es "¿está mi servidor activo?" sino "¿qué pasó en mi servidor?". Estas seis herramientas permiten que Claude mire dentro de tu servidor, solo lectura: lee registros, lee archivos, verifica el estado de los servicios y cuenta tus copias de seguridad. Ninguna de ellas cambia nada, detiene un servicio o escribe en un archivo.

La instantánea de salud (si el servicio está activo, cuánto disco queda, qué está escuchando) depende de Servidores: ver, el grupo que casi con seguridad ya concediste. Las otras cinco (leer un registro, leer un archivo, listar un directorio, buscar contenido en archivos, el inventario de copias de seguridad) devuelven CONTENIDO de archivos, por lo que necesitan Investigación de servidores, que está desactivada a menos que la actives.

En una aplicación que lo admita, la instantánea de salud se abre como un panel interactivo dentro del chat, con su propio botón de Actualizar. En una aplicación que no lo admita, los mismos datos llegan como texto plano, como siempre ha sido. Qué aplicaciones admiten el panel depende del cliente, no de nosotros.

[!warning] Tienes que activar el acceso SSH de Morpheus primero Estas herramientas se conectan a tu servidor por SSH, y tú abres esa puerta: ve a Sunucular (Servidores) > el servidor > Morpheus en el hub y pulsa Morpheus'u Etkinleştir (Activar Morpheus). El menú del hub está en turco sin importar en qué idioma leas esta página, así que las etiquetas aquí son las que realmente verás. En servidores creados por una instalación de aplicación (app) de un clic, también necesitas ejecutar el comando de arranque que se muestra en pantalla, una vez, en el propio servidor.

Un servidor que crees a través de la aplicación conectada con create_vps abre esta puerta por ti: el acceso a Morpheus se configura una vez que el servidor ha arrancado (generalmente unos minutos), y morpheus.access en get_vps_details pasa de pending a active. Una herramienta de servidor llamada mientras tanto responde "configurándose automáticamente, reintenta en un minuto". El único requisito es que tu empresa haya aceptado el anexo CogMem-AI una vez.

Si el acceso no está activado, la herramienta te lo dice en una frase sencilla y nombra el interruptor. No intenta nada y no adivina.

Una vez conectado, puedes escribir cosas como estas en Claude Desktop:

  • "¿Está MySQL en ejecución?"
  • "Muéstrame las últimas 200 líneas del registro de errores de nginx"
  • "Encuentra dónde aparece 'TypeError' bajo /var/www/app"

Dónde puede mirar, y dónde no

Los lugares legibles son fijos y la lista es corta: /var/log, /var/www, /srv, /opt, /home, y los directorios de configuración web, PHP y base de datos (/etc/nginx, /etc/apache2, /etc/httpd, /etc/php, /etc/mysql, /etc/postgresql). /etc en su totalidad no está en la lista.

Algunos archivos se rechazan incluso dentro de esos directorios:

  • .env y todas sus variantes (.env.local, .env-production, app.env)
  • claves privadas y almacenes de claves: *.pem, *.key, *.p12, *.pfx, *.ppk, *.kdbx, *.jks, *.keystore, la familia id_rsa
  • archivos de contraseñas y cuentas: shadow, .htpasswd, .netrc, .pgpass, .my.cnf, debian.cnf, .git-credentials, .npmrc, .pypirc, credentials, secrets.yml/.yaml/.json
  • archivos de base de datos: *.sqlite, *.sqlite3, *.db
  • y el contenido completo de estos directorios: .ssh, .gnupg, .aws, .docker

Claude los verá en un listado de directorio (describiendo tu servidor tal como es realmente) y se negará a abrirlos. La herramienta de búsqueda se comporta igual: si una búsqueda bajo /var/www coincide con una línea dentro de un archivo .env, esas líneas no se te devuelven; solo te dice cuántas retuvo.

wp-config.php sigue siendo legible a propósito: es el clásico archivo de "por qué mi sitio está caído". Las contraseñas dentro de él son trabajo del enmascarador.

Además de eso:

  • Cuando pides un registro, la respuesta dice qué archivo leyó. El mismo registro vive en lugares diferentes en distintas distribuciones (/var/log/apache2/error.log en Debian, /var/log/httpd/error_log en RHEL); Claude los prueba en orden e informa lo que encontró, no lo que intentó. Si ninguno existe, también lo dice.
  • Cada línea que regresa pasa por un enmascarador: cualquier cosa con forma de contraseña, clave de API, token o clave privada llega como [REDACTED:...], y se te dice cuántos valores fueron enmascarados. El enmascarador es una lista de patrones, así que es de mejor esfuerzo: no pegues un archivo de credenciales en un chat para probar si lo detecta. Es exactamente por eso que esos archivos nunca se abren en primer lugar.
  • Un archivo de copia de seguridad nunca se abre. check_backups solo cuenta, pesa y mira las fechas.
  • Una respuesta nunca supera los 64 KB, y lo dice claramente cuando se cortó.
  • La instantánea de salud dice qué servicio de firewall del host está activo (firewall) y, cuando un puerto de base de datos o caché está vinculado a todas las interfaces (MySQL 3306, PostgreSQL 5432, Redis 6379 y similares), lo escribe en warnings: "verifica que el firewall lo bloquee" cuando hay un firewall activo, "accesible desde internet a menos que exista un filtro ascendente" cuando no lo hay: mira el firewall del propio host y no puede ver un grupo de seguridad en la nube ni un firewall ascendente. Tampoco lee las reglas en sí; pregunta a run_command por sudo -n firewall-cmd --list-all para eso.
  • El nombre por el que pides un servicio no importa: ssh y sshd, apache2 y httpd, mysql y mariadb, php-fpm y php8.x-fpm se prueban juntos, y la respuesta dice qué unidad respondió (unit).
  • Una llamada nunca dura más de 30 segundos; si lo hace, obtienes lo que tenía más una advertencia de "incompleto".

[!tip] Tu nivel de autonomía no bloquea estas lecturas El nivel de autonomía en la pestaña Sunucular (Servidores) > Morpheus es tuyo y permanece exactamente como lo configuraste, pero cada comando que emiten estas seis herramientas es de solo lectura, así que funcionan incluso en el nivel más estricto (confirm_all, y observe_only también). Se pide un código para comandos que cambian algo, y estos no cambian nada. El chat del hub ya ejecutaba estas lecturas sin código; ahora la aplicación conectada también lo hace.

Una excepción, y se trata de tu cuenta más que del canal: si tu servidor está en confirm_all o safe_auto, tu cuenta debe tener la autenticación de dos factores habilitada. Esa regla es independiente del canal: el chat del hub pide lo mismo en el mismo servidor, y en full_auto nunca se pide en absoluto.

Lo que no puede hacer

Algunas cosas se mantuvieron deliberadamente fuera de MCP:

  • Pagar facturas, recargar saldo y gestionar tarjetas. Usa el hub para esto. MCP puede pedir un VPS usando el saldo existente de la billetera dentro del límite de gasto de la conexión.
  • Reinstalar un servidor, restablecer una contraseña root y redimensionar uno. Estas siguen siendo solo del panel. La eliminación está disponible solo para un VPS creado a través de MCP para la misma empresa, con una coincidencia exacta del nombre de host; un VPS creado a través del panel no se puede eliminar a través de MCP.
  • Actuar con autoridad de personal. Las conexiones actuales funcionan solo con identidad de cliente.

[!note] Revisa los permisos de conexión para nuevas capacidades La página de consentimiento muestra solo grupos con una herramienta disponible. Servidores: crear y eliminar, DNS: gestionar y las tareas de servidor ahora se ofrecen; estos grupos no están seleccionados por defecto. Versiones anteriores eliminaron permisos sin herramienta de conexiones antiguas; amplía explícitamente el alcance de la conexión para una nueva capacidad. El permiso existente de lectura de registros/archivos no otorga acceso a tareas de servidor. Los permisos independientes activos en una conexión antigua aparecen como chips separados en la tarjeta Apps conectadas (MCP), y Editar los conserva. Para eliminar esos permisos independientes, revoca la conexión y vuelve a conectar.

Las Salvaguardas Que Notarás

La misma solicitud enviada dos veces nunca crea una segunda acción. Cada llamada que cambia el estado lleva un id de solicitud (la aplicación lo genera; no se te pide nada). Una solicitud repetida porque la red falló devuelve la respuesta de la primera llamada; sin segundo ticket, sin segunda instantánea. Esa protección dura diez minutos.

La eliminación de servidores verifica la procedencia y el nombre de host exacto. Solo un VPS creado a través de MCP para la misma empresa puede eliminarse. Si el nombre de host falta o es diferente, la aplicación muestra el nombre correcto y la vista previa del reembolso antes de eliminar; una llamada con la confirmación exacta lo elimina. Esta herramienta no envía un enlace adicional de aprobación por hub/correo. La puerta de aprobación general sigue disponible para otras herramientas irreversibles; ninguna herramienta del catálogo actual usa esa puerta general.

Las aprobaciones pendientes están limitadas. Una conexión puede mantener como máximo tres aprobaciones en espera. Una aplicación indecisa no tiene derecho a llenar tu bandeja de entrada.

Cambiar el alcance surte efecto de inmediato. Desactiva un grupo y la siguiente llamada de la aplicación se encuentra con el alcance más restringido; nadie espera a que termine una sesión o muera un token.

Las conexiones terminan después de 90 días. Una conexión caducada no sigue funcionando silenciosamente; le dice a la aplicación que esta conexión ha caducado y que debe reconectar.

[!warning] Un enlace de aprobación es de un solo uso y dura 15 minutos El enlace de aprobación que recibes puede usarse exactamente una vez y caduca después de 15 minutos. Deliberadamente corto: una aprobación no debe quedarse en tu bolsillo como un cheque en blanco. Si caducó, pide el mismo trabajo a la aplicación de nuevo y llegará una nueva aprobación. El enlace es inútil en manos de cualquier otra persona: abierto con una cuenta diferente se comporta como una página que nunca existió.

Gestionando Tus Conexiones

La tarjeta Configuración > Conexiones de agente > Apps conectadas (MCP) muestra cada aplicación conectada:

  • El nombre de la aplicación y si su identidad fue verificada (la insignia Identidad no verificada)
  • Los grupos de permisos que otorgaste
  • Límite mensual: {amount} USD y Gastado este mes: {amount} USD
  • Válido hasta {date}

Hay dos acciones:

Editar: cambia los grupos y el límite, luego pulsa Guardar. La restricción se aplica de inmediato y no pide nada. La ampliación (otorgar un nuevo grupo o subir el límite) pide un nuevo código de dos factores en cuentas con 2FA activado; después de eso no se te volverá a pedir durante dos horas.

Revocar acceso: invalida la conexión y sus tokens de inmediato.

[!tip] No entres en pánico: revocar no rompe nada Pulsa Revocar acceso y la aplicación se detiene en la puerta en su siguiente intento y se le pide reconectar. Tu servidor sigue funcionando, tus facturas se siguen emitiendo, tu dominio sigue resolviendo: lo único que revocaste es el derecho de una aplicación a hacer preguntas en tu nombre. Si cambias de opinión, reconectas desde tu cliente MCP, pasas por la página de consentimiento y continúas donde lo dejaste.

Cuando Algo Sale Mal

Cuando la aplicación encuentra un problema, recibe una frase simple. Las más comunes:

Mensaje que vesQué significaQué hacer
El acceso MCP está deshabilitado para esta empresaEl acceso MCP está desactivado para tu empresaPide a un propietario o administrador de la empresa que lo active en la tarjeta Acceso de agente de IA (MCP)
Esta conexión ha caducadoLos 90 días se agotaronReconecta desde tu cliente MCP; la página de consentimiento inicia 90 días nuevos
step_up_required / "Debes verificar tu identidad antes de continuar"Ampliar o aprobar requiere una verificación nuevaIntroduce tu código de dos factores; no se te volverá a pedir durante dos horas
Esta conexión carece del permiso...Ese grupo no está en el alcanceAbre el grupo en la tarjeta Apps conectadas (MCP) con Editar
Límite mensual... USDSe alcanzó el techo mensualSúbelo con Editar
requestId ya usado con argumentos diferentesLa aplicación reutilizó un id de solicitud para una llamada distintaEs un fallo del lado de la aplicación; reinicia la solicitud y abre un ticket con nosotros si sigue ocurriendo
Los argumentos de identidad nunca se aceptan a través de MCPLa aplicación intentó nombrar la empresa en cuyo nombre hablaNo tienes que hacer nada; la empresa siempre viene de la conexión misma, nunca de lo que dice la aplicación
El acceso SSH de Morpheus no está habilitado en este servidorEl acceso SSH de Morpheus está desactivado para ese servidorActívalo en Sunucular (Servidores) > el servidor > Morpheus; en servidores con aplicación instalada, ejecuta el comando de arranque una vez
El agente DevOps de Morpheus está desactivado para este servidorEl agente está deshabilitado en el servidorActívalo desde la misma pestaña de Morpheus
Esa ruta es una credencial... y nunca es legibleSe solicitó un archivo o directorio que nunca se abre (.env, una clave, una contraseña o archivo de base de datos, o cualquier cosa bajo .ssh, .gnupg, .aws, .docker)Este es el comportamiento correcto; si necesitas el contenido, míralo en el servidor tú mismo
El nivel de autonomía de este servidor... / autenticación de dos factoresEl servidor pide un código antes de los comandos y tu cuenta no tiene unoActiva la autenticación de dos factores en Ayarlar (Configuración) > Güvenlik (Seguridad), o establece el nivel de autonomía del servidor en full_auto
El servidor no tiene la utilidad fileLa herramienta no puede distinguir texto de binario en esa máquina, por lo que se niega a leer cualquier cosaInstala el paquete file en el servidor e inténtalo de nuevo
No se pudo alcanzar el servidorLa máquina no respondióVerifica que esté en ejecución y que el acceso SSH de Morpheus siga habilitado; inténtalo de nuevo en breve

Si la aplicación no puede conectarse en absoluto, verifica esto en orden: ¿está activado el acceso MCP para tu empresa?, ¿pegaste la dirección correctamente (https://veriteknik.com/api/mcp)?, y ¿está tu sesión de VeriTeknik abierta en el navegador?

Los mensajes están en inglés: toda la superficie MCP (nombres de herramientas, descripciones, frases de error) habla un solo idioma, y tu agente te los transmite en el tuyo. La única excepción es un fallo genérico o un mensaje de cuota, donde solo la herramienta misma conoce la razón; allí su propia frase se transmite sin cambios, porque es la única información disponible.

[!note] Las apps conectadas no sobreviven a una cuenta archivada Cuando se archiva una cuenta de cliente, sus aplicaciones conectadas se revocan con ella. Una aplicación conectada no es una sesión: puede seguir funcionando durante meses sin que nadie haga clic en nada, por lo que cerrar la cuenta también debe cerrar la conexión.


Si algo no está claro, abre un ticket de soporte. Respondemos, y sin la espera de siete millones y medio de años.

Ejecutando tareas de servidor

Selecciona Servidores: ejecutar tareas por separado en la conexión. Un consentimiento existente para leer registros y archivos no otorga la ejecución de tareas. setup_ssl verifica que tu registro A autoritativo apunte a la IP principal del VPS antes de instalar nginx y un certificado. deploy_static_site escribe bajo /var/www/<domain>/, verifica y recarga nginx, y conserva una configuración TLS gestionada existente. Estas plantillas usan Debian/Ubuntu y sudo; las políticas de Morpheus, BIOS, autonomía y OTP del servidor siguen aplicándose.

HerramientaEntrada
add_dns_recordzoneName, name, type, content; opcional ttl, priority
update_dns_recordLos mismos campos más el previousContent exacto a reemplazar
delete_dns_recordEl content exacto a eliminar; confirm:true para eliminación de alto impacto
setup_sslvpsId, domain; opcional email (por defecto: el correo del usuario que autorizó la conexión)
deploy_static_sitevpsId, domain, files:[{path,content}]
run_commandvpsId, command, opcional timeoutSec (1-60)

Las herramientas DNS requieren el grupo de gestión de DNS; la propiedad de la empresa y las políticas de cambios gestionados siguen aplicándose. Las rutas de archivo deben ser relativas; se rechazan el traversal, las rutas absolutas y NUL. Envía hasta 50 archivos de texto UTF-8, de como máximo 512 KiB cada uno y 5 MiB combinados; los archivos binarios no son compatibles. run_command acepta solo comandos clasificados como seguros, limita cada flujo de salida a 16 KiB e informa truncated. Un comando que se ejecutó y salió con código distinto de cero es una respuesta, no un error (systemctl status sale con 3 para un servicio detenido); el resultado lleva exitCode, y solo un comando que no devolvió ningún resultado se informa como error. Las lecturas de firewall y sockets también se aceptan: firewall-cmd --state / --list-* / --get-*, nft list ..., iptables -L -n, ufw status, ss -tlnp. Requieren root, por lo que pueden tener el prefijo sudo -n; sudo se acepta solo para las familias que necesitan root (ver la lista a continuación). Las expresiones de filtro ss también pasan: ss -tnp state established (quién está conectado), ss -tn sport = :22 or dport = :443, ss -tn dst 10.0.0.5, ss -tn sport lt :1024; se rechazan paréntesis, comillas, corchetes y los signos < / > (redirección de shell): compara con =, == o las palabras eq neq lt gt le ge. En Ubuntu, ufw dice más de lo que muestra iptables -L: lee la política efectiva con sudo -n ufw status verbose, y en sistemas basados en nftables con sudo -n nft list ruleset; iptables -L muestra solo las tablas heredadas, y una lista vacía allí no significa que el firewall esté apagado. Las herramientas de tareas requieren un requestId; inspecciona el estado del servidor antes de repetir trabajo fallido con una nueva solicitud. El campo de comando libre está limitado a un vocabulario de diagnóstico; cada familia son los verbos de lectura de un programa: archivos (ls, cat, head, tail, df, du, stat, wc, find solo con pruebas, grep sobre archivos nombrados con un patrón simple (sin -r recursivo; la búsqueda de contenido es la herramienta search_server_files), tree), sistema (top -bn1, vmstat 1 3, iostat, nproc, lscpu, lsblk, free, uptime, hostnamectl, date, w, who, last -n, dmesg), diario (journalctl con -u/-n/-p/-b/-k/--since/--until/-o; sin -f), servicios (systemctl status/is-active/is-enabled/show/list-units/list-timers/cat/--failed), red (ip addr/route/link/neigh, ss con filtros, netstat, lsof -i, dig, host, nslookup, ping -c 1..5, traceroute, mtr -rw -c N, curl -sSI / curl -sS -m N con una URL http(s), sin seguir redirecciones, una URL localhost responde solo a HEAD (-I)), cortafuegos, configuración y versiones (nginx -t/-T, apachectl -t, certbot certificates, crontab -l, php -v/-m, node -v, python3 -V, mysql --version, which, getent), contenedores (docker ps/images/logs --tail N NAME/stats --no-stream/version/info/top, docker compose ps/logs), paquetes (apt list --installed, apt-cache policy, dpkg -l, rpm -qa, dnf list installed, snap list). Las lecturas que requieren root llevan un prefijo sudo -n (journalctl, dmesg, netstat, lsof, lecturas de cortafuegos, nginx -t, certbot certificates, crontab -l -u, docker). Los comodines en patrones de find -name y grep se escriben con escape de barra invertida (find /var/www -name \*.log); la línea de comandos se ejecuta sin comillas, por lo que un * sin escapar sería expandido por el shell y se rechaza. find, tree y du recorren solo bajo las raíces legibles (/var/log, /var/www, /srv, /opt, /home y los directorios de configuración web, PHP y base de datos, menos los directorios propios del agente); un recorrido desde / o desde el directorio de trabajo se rechaza. Los archivos de credenciales (.env, id_rsa, *.pem, credentials...) se rechazan por nombre, exactamente como en las herramientas de lectura de archivos. No se aceptan: env / printenv (volcados de credenciales), docker inspect y docker compose config (los entornos de contenedores contienen secretos), php -i, journalctl -f, find -exec / -delete, curl con cuerpo, método, cabecera, archivo de salida o credenciales, URLs de enlace local o de metadatos; comillas, tuberías, redirecciones, sustitución y cualquier programa que no esté en la lista.

Comandos de administración (run_admin_command)

Aprueba Servers: admin commands por separado en la conexión; el consentimiento de tarea existente no lo incluye. run_admin_command {vpsId, commands:[...], intent, timeoutSec} ejecuta hasta 10 comandos en orden, se detiene en la primera salida distinta de cero e informa qué línea falló (failedIndex) y cuántas se ejecutaron (ran). Instalar paquetes, configurar y reiniciar servicios, clonar y compilar una aplicación, escribir archivos y añadir reglas de cortafuegos se hace con él; prefija el trabajo de root con sudo -n.

La propia política del servidor decide qué se ejecuta: las reglas BIOS en su pestaña Morpheus, la clasificación de seguridad y el nivel de autonomía. La clase destructiva (eliminación masiva, formateo de disco, eliminación de usuarios, reinstalación) nunca se ejecuta a través de esta conexión en ningún nivel; la respuesta es PANEL_ONLY y haces ese trabajo en el hub. Si el nivel de autonomía requiere un código para comandos moderados (el confirm_all predeterminado), la herramienta responde PRECONDITION_REQUIRED y no se ejecuta nada: una aplicación conectada no puede pedirte un código. Ambas salidas están en el hub, en Sunucular (Servers) > el servidor > Morpheus: introduce tu código de verificación en la tarjeta Komut kilidi (bloqueo de comandos) y dile al agente que reintente, o sube el Yetki seviyesi (nivel de autonomía) en la misma pestaña (solo el propietario de la empresa o un administrador puede cambiar el nivel). Un servidor creado con create_vps por una conexión que tenga este grupo nace totalmente autónomo: los comandos de cambio fluyen sin código.

Cada línea es un programa: ;, &&, ||, | y la sustitución de comandos se rechazan (incluso entre comillas); pon el siguiente paso en la siguiente línea. Se permiten comillas y redirecciones; escribe un archivo del sistema con sudo -n tee /etc/x <<< "content" (una redirección del shell hacia /etc, echo ... > /etc/x, es la clase destructiva del clasificador y se rechaza). Cada lote se escribe en el registro de comandos del servidor bajo el id de la conexión, y se notifica a la empresa: qué servidor, qué intención, cuántos comandos, el último código de salida. No se pide aprobación por llamada; ves y confirmas el comando en tu cliente (Claude Desktop).

Si falta el catálogo

Cuando apruebas un nuevo grupo en la página de consentimiento, o publicamos una nueva herramienta, el servidor envía a tu cliente conectado una notificación de "lista de herramientas cambiada", y los clientes que la entienden actualizan la lista por sí mismos. En un cliente que no lo haga, recarga la lista de herramientas manualmente o elimina y vuelve a añadir la conexión; esa es la razón más común por la que una capacidad aprobada no aparece como herramienta, no una puerta cerrada en el servidor. En clientes que cargan la lista al iniciar un chat, como claude.ai, abrir un nuevo chat es suficiente. Si una herramienta no tiene etiqueta bajo su interruptor en la página de consentimiento, el personal la ha desactivado; reconectar no ayudará ahí, abre un ticket de soporte en su lugar. Para una investigación de soporte, comparte la hora de la prueba y la cabecera X-App-Version de la respuesta /api/mcp; no compartas tu token de acceso. La cabecera identifica el commit de la aplicación que sirve; el número de herramientas mostradas por un cliente no identifica su versión. Una elección de imagen o recurso inválida devuelve INVALID_ARGUMENT sin crear un pedido. Una configuración por debajo de un mínimo indicado en el enforcedMinimums de una aplicación (GitLab con menos de 4 GB de RAM, por ejemplo) se rechaza también con INVALID_ARGUMENT, porque el instalador no puede completarse ahí; los mínimos no listados y las recomendaciones son orientativos. Obtén las opciones actuales de list_vps_catalog y envía argumentos de pedido corregidos con un nuevo requestId. Instala aplicaciones que requieran un formulario adicional a través del hub.

La búsqueda de archivos aplica includeGlob a los nombres de archivo manteniendo excluidos los archivos de credenciales y minificados. redactions cuenta los reemplazos de enmascaramiento en la salida de comandos recopilada antes del filtrado y truncamiento, por lo que puede diferir del número de marcadores mostrados. También puedes filtrar contratos por customer_signed, fully_signed y cancelled.