AI Ops MCP
AI Ops MCP
AI Ops MCP es un intermediario local de credenciales SSH y un servidor MCP stdio. Permite a los clientes de IA realizar operaciones SSH y SFTP mediante alias estables de server_id sin recibir contraseñas, contenidos de claves privadas ni frases de contraseña de claves privadas.
[!WARNING] AI Ops MCP protege el límite de autenticación; no clasifica, aprueba ni bloquea comandos remotos. Cada comando se ejecuta con los permisos de la cuenta SSH configurada. Utilice cuentas dedicadas con privilegios mínimos y controles en el servidor.
La versión 0.1.0 se distribuye únicamente desde el código fuente. Este proyecto no está publicado en npm.
Características
Inscripción interactiva de servidores y fijación de huellas de Host key de confianza
Autenticación mediante SSH Agent, contraseña en el almacén de credenciales del sistema y clave privada
Integración con Windows Credential Manager, macOS Keychain y Linux Secret Service
Agrupación de conexiones con límites de concurrencia por servidor y globales
Comandos remotos, subidas, descargas y listados de directorios
Límites de rutas de archivos locales y remotos, tiempos de espera, límites de salida y límites de tamaño de archivo
Registros de auditoría estructurados con códigos de error públicos estables
Modelo de seguridad
Las contraseñas y las frases de contraseña de claves privadas se solicitan mediante avisos ocultos y se almacenan en el almacén de credenciales del sistema operativo. Los metadatos de conexión no secretos se almacenan en un archivo de configuración local privado. Las claves privadas permanecen como archivos en la máquina local y solo se leen al conectar. Las huellas de Host key se confirman durante la inscripción y los cambios posteriores se rechazan.
La interfaz MCP no puede enumerar ni exportar credenciales. De forma predeterminada, las operaciones de archivos locales se limitan al directorio de trabajo del proceso MCP; se pueden configurar raíces locales y remotas adicionales por servidor. Los registros de auditoría pueden contener comandos y rutas, por lo que debe protegerlos como datos operativos. Consulte SECURITY.md para informar vulnerabilidades.
Este modelo no protege contra una cuenta de usuario local comprometida, salida remota maliciosa, un host remoto comprometido o comandos destructivos emitidos con permisos SSH válidos.
Requisitos
Node.js 22 o 24
Git y un servidor SSH accesible
Una huella de Host key SSH verificada
Un método de autenticación compatible
Usuarios de contraseña/frase de contraseña en Linux: un proveedor de Secret Service en ejecución
Windows Credential Manager se ha validado en Windows 10 con Node.js 24. macOS Keychain y Linux Secret Service necesitan más comentarios de dispositivos reales.
Instalación y compilación
git clone https://github.com/Finn-Aigc/ai-ops-mcp.git
cd ai-ops-mcp
npm ci
npm run typecheck
npm test
npm run build
npm link
ai-ops doctornpm link expone ai-ops y ai-ops-mcp localmente. Ejecute npm run dev -- --help durante el desarrollo de la CLI, o npm start -- --help después de compilar.
Autenticación
SSH Agent
Cargue una clave en su Agent del sistema y luego ejecute ai-ops add --auth agent o importe los metadatos OpenSSH efectivos:
ai-ops import-ssh my-host-aliasContraseña del almacén de credenciales del sistema
ai-ops add --id dev-box --host ssh.example.com --user deploy --auth passwordLa contraseña se solicita de forma interactiva y no se puede pasar como valor de línea de comandos.
Archivo de clave privada
ai-ops add --id dev-key --host ssh.example.com --user deploy \
--auth private-key --key <path-to-private-key>La clave permanece en la ruta proporcionada. Si está cifrada, su frase de contraseña se solicita de forma interactiva y se almacena en el almacén de credenciales del sistema.
Referencia de la CLI
Comando | Propósito |
| Añadir un servidor y confirmar su Host key |
| Importar metadatos OpenSSH efectivos para autenticación con Agent |
| Listar alias y preparación de credenciales |
| Mostrar metadatos de servidor no secretos |
| Probar una conexión |
| Actualizar metadatos, raíces o secretos almacenados |
| Eliminar metadatos y credenciales almacenadas |
| Reemplazar una huella de Host key verificada |
| Diagnosticar configuración, keyring y acceso al Agent |
| Leer eventos de auditoría filtrados |
Utilice ai-ops <comando> --help para todas las opciones. Nunca automatice la entrada de contraseñas o frases de contraseña mediante argumentos de comando.
Configuración del cliente MCP
Después de npm link, configure cualquier cliente MCP stdio con:
{
"mcpServers": {
"ai-ops": {
"command": "ai-ops-mcp"
}
}
}Para desarrollo sin enlazar, compile primero y use node con "<ruta-absoluta-al-repositorio>/dist/mcp-entry.js" como único argumento.
Herramientas MCP
Herramienta | Propósito |
| Listar alias configurados y preparación sin credenciales |
| Probar un |
| Ejecutar un comando remoto arbitrario |
| Subir un archivo desde una raíz local permitida |
| Descargar un archivo en una raíz local permitida |
| Listar un directorio remoto permitido |
Los valores predeterminados son 30 segundos por comando, 10 MiB de salida combinada de comandos, 100 MiB por archivo, cuatro operaciones concurrentes por servidor y 16 globales. La configuración del servidor puede reducir o ajustar estos límites.
Solución de problemas
Ejecute
ai-ops doctorprimero para obtener diagnósticos de keyring, Agent, configuración y servidor.HOST_KEY_MISMATCH: verifique la nueva huella fuera de banda y luego ejecuteai-ops trust-host <id>.AGENT_UNAVAILABLE: inicie un SSH Agent y cargue una clave conssh-add.CREDENTIAL_STORE_UNAVAILABLE: desbloquee o inicie el servicio de credenciales de la plataforma.LOCAL_PATH_NOT_ALLOWEDoREMOTE_PATH_NOT_ALLOWED: actualice las raíces conai-ops edit <id> --allowed-local ... --allowed-remote ....El proceso MCP sale inmediatamente: ejecute
npm run buildy confirme el ejecutable configurado o la ruta de entrada absoluta.
Pruebas E2E locales en vivo
Las pruebas en vivo se mantienen intencionalmente fuera de GitHub Actions. Utilice un directorio de inicio aislado y una cuenta de servidor dedicada con privilegios bajos que pueda crear archivos temporales en /tmp y actualizar su propio ~/.ssh/authorized_keys:
$env:AI_OPS_HOME = "<isolated-ai-ops-home>"
$env:AI_OPS_E2E_SERVER_ID = "test-server"
npm run build
npm run test:e2e:core
npm run test:e2e:mcp
npm run test:e2e:auth
npm run test:e2e:agent
npm run test:e2e:cleanupCada prueba utiliza recursos únicos y los limpia en bloques finally. Nunca utilice credenciales o configuración de producción. Consulte CONTRIBUTING.md, docs/PRD.md y docs/IMPLEMENTATION_PLAN.md.
Licencia
MIT © 2026 Colaboradores de AI Ops MCP.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
MCP server bridging holepunchto/keet-identity-key to the Hive agentic identity network
StremAI MCP: shared memory for AI coding agents. Connected agents can recall. OAuth + local stdio.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Finn-Aigc/ai-ops-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server