Fleet-MCP

Permite que los asistentes de IA interactúen con Fleet Device Management para la gestión de dispositivos, monitoreo de seguridad y cumplimiento normativo.

Documentación

Ask DeepWiki

Fleet MCP

Un servidor de Model Context Protocol (MCP) que permite a los asistentes de IA interactuar con Fleet Device Management para la gestión de dispositivos, monitoreo de seguridad y cumplimiento normativo.

Demo

📸 Mostrar/Ocultar capturas de pantalla de la demo

Fleet MCP Demo - Querying host information and running live queries

Fleet MCP Demo - Managing policies and compliance

Fleet MCP Demo - Software inventory and vulnerability tracking

Fleet MCP Demo - Advanced fleet management operations

Características

  • Gestión de hosts: Listar, buscar, consultar y gestionar hosts en toda tu flota
  • Ejecución de consultas en vivo: Ejecutar consultas osquery en tiempo real contra los hosts
  • Gestión de políticas: Crear, actualizar y monitorear políticas de cumplimiento
  • Inventario de software: Rastrear instalaciones de software y vulnerabilidades en los dispositivos
  • Gestión de equipos y usuarios: Organizar hosts y usuarios en equipos
  • Descubrimiento de tablas osquery: Descubrimiento dinámico y documentación de tablas osquery
  • Modo de solo lectura: Exploración segura con ejecución de consultas SELECT opcional
  • Monitoreo de actividad: Rastrear actividades de Fleet y registros de auditoría

Inicio rápido

¿Quieres empezar directamente? Esto configurará fleet-mcp con acceso de solo lectura y ejecución de consultas SELECT habilitada. Solo reemplaza FLEET_SERVER_URL y FLEET_API_TOKEN con los tuyos.

{
  "mcpServers": {
    "fleet": {
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}

Consulta la sección Herramientas disponibles a continuación para ver la lista completa de herramientas.


MCP Client Configuration

Fleet MCP can be integrated with various MCP-compatible clients. Below are configuration examples for popular clients.

Prerequisites

Before configuring any MCP client, ensure you have:

  1. Install uv (recommended) or pip:

    # Install uv (recommended)
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # Or use pip
    pip install fleet-mcp
    
  2. Token de API de Fleet: Genera un token de API desde tu instancia de Fleet: Opción 1)

    • Inicia sesión en la interfaz de Fleet
    • Navega a: Mi cuenta → Obtener token de API
    • Copia el token para usarlo en la configuración

    Opción 2)

    • Crea un usuario solo de API con fleetctl
    # Generate an API-Only User and get the token
    fleetctl user create --name Fleet-MCP --email <email> --password <password> --role admin --api-only
    

    Nota: Este token de API y la URL de tu instancia de Fleet (https://your-fleet-instance.com) se usarán en la configuración del cliente.

  3. Elige tu cliente: Selecciona el cliente de asistente de IA de tu preferencia y sigue las instrucciones de configuración correspondientes a continuación.

Instalar en Claude Desktop

Ubicación del archivo de configuración

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Configuración

{
  "mcpServers": {
    "fleet": {
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}

Nota: Reemplaza uvx con fleet-mcp si has instalado el paquete globalmente. Para mayor seguridad, usa la bandera --config para hacer referencia a un archivo TOML en lugar de incrustar tokens (consulta Mejores prácticas de seguridad).

Instalar en Cursor

Ve a: Settings → Cursor Settings → MCP → Add new global MCP server

Instala globalmente en ~/.cursor/mcp.json o por proyecto en .cursor/mcp.json. Consulta la documentación de MCP de Cursor para más información.

{
  "mcpServers": {
    "fleet": {
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}
Instalar en Cline (extensión de VS Code)

Ubicación de configuración: ~/.cline/mcp_settings.json (macOS/Linux) o %USERPROFILE%\.cline\mcp_settings.json (Windows)

Alternativa: Configuración de VS Code → Buscar "Cline: MCP Settings" → Editar JSON

{
  "mcpServers": {
    "fleet": {
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}
Instalar en Continue (extensión de VS Code)

Ubicación de configuración: ~/.continue/config.json

{
  "mcpServers": [
    {
      "name": "fleet",
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  ]
}
Instalar en el editor Zed

Ubicación de configuración: ~/.config/zed/settings.json (macOS/Linux) o %APPDATA%\Zed\settings.json (Windows)

{
  "context_servers": {
    "fleet": {
      "command": {
        "path": "uvx",
        "args": ["fleet-mcp", "run"]
      },
      "settings": {
        "env": {
          "FLEET_SERVER_URL": "https://your-fleet-instance.com",
          "FLEET_API_TOKEN": "your-api-token",
          "FLEET_READONLY": "true",
          "FLEET_ALLOW_SELECT_QUERIES": "true"
        }
      }
    }
  }
}
Instalar en Windsurf

Consulta la documentación de MCP de Windsurf para más información.

{
  "mcpServers": {
    "fleet": {
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}
Instalar en VS Code

Consulta la documentación de MCP de VS Code para más información.

"mcp": {
  "servers": {
    "fleet": {
      "type": "stdio",
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}
Instalar en Sourcegraph Cody

Ubicación de configuración: ~/Library/Application Support/Cody/mcp_settings.json (macOS), %APPDATA%\Cody\mcp_settings.json (Windows) o ~/.config/Cody/mcp_settings.json (Linux)

{
  "mcpServers": {
    "fleet": {
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}
Instalar en Augment Code

Mediante la interfaz: Menú de hamburguesa → Configuración → Herramientas → + Agregar MCP → Ingresa uvx fleet-mcp run → Nombre: "Fleet" → Agregar

Configuración manual: Configuración → Avanzado → Editar settings.json

"augment.advanced": {
  "mcpServers": [
    {
      "name": "fleet",
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  ]
}
Instalar en LM Studio

Navega a Program → Install → Edit mcp.json. Consulta Soporte de MCP en LM Studio.

{
  "mcpServers": {
    "fleet": {
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}
Configuración genérica de cliente MCP

Para otros clientes compatibles con MCP, usa este patrón general:

{
  "mcpServers": {
    "fleet": {
      "command": "uvx",
      "args": ["fleet-mcp", "run"],
      "env": {
        "FLEET_SERVER_URL": "https://your-fleet-instance.com",
        "FLEET_API_TOKEN": "your-api-token",
        "FLEET_READONLY": "true",
        "FLEET_ALLOW_SELECT_QUERIES": "true"
      }
    }
  }
}

Referencia de opciones de configuración

Variable de entornoDescripciónPredeterminadoRequerido
FLEET_SERVER_URLURL del servidor Fleet-✅
FLEET_API_TOKENToken de API de Fleet-✅
FLEET_READONLYHabilitar modo de solo lecturatrue❌
FLEET_ALLOW_SELECT_QUERIESPermitir consultas SELECT en modo de solo lecturafalse❌
FLEET_VERIFY_SSLVerificar certificados SSLtrue❌
FLEET_TIMEOUTTiempo de espera de solicitud (segundos)30❌
FLEET_MAX_RETRIESReintentos máximos de solicitud3❌

Nota: Todos los clientes anteriores usan las mismas variables de entorno. Reemplaza uvx con fleet-mcp si está instalado globalmente.

Mejores prácticas de seguridad

  1. Usar archivos de configuración: Almacena tokens en archivos TOML: "args": ["fleet-mcp", "--config", "~/.config/fleet-mcp.toml", "run"]
  2. Permisos de archivos: chmod 600 ~/.config/fleet-mcp.toml
  3. Modo de solo lectura: Comienza con FLEET_READONLY=true (predeterminado)
  4. Rotación de tokens: Rota regularmente los tokens de API de Fleet
  5. Configuraciones específicas por entorno: Usa configuraciones separadas para desarrollo/producción

Herramientas disponibles

Fleet MCP proporciona herramientas organizadas en dos grupos principales según el modo operativo. Haz clic para expandir cada grupo.

Herramientas de solo lectura (siempre disponibles)

Estas herramientas están disponibles en todos los modos (readonly=true o readonly=false). Solo leen datos y nunca modifican el estado de Fleet.

Gestión de hosts

  • fleet_list_hosts - Listar hosts con filtrado, paginación y búsqueda
  • fleet_get_host - Obtener información detallada sobre un host específico por ID
  • fleet_get_host_by_identifier - Obtener host por nombre de host, UUID o número de serie de hardware
  • fleet_search_hosts - Buscar hosts por nombre de host, UUID, número de serie o IP
  • fleet_list_host_upcoming_activities - Listar actividades próximas para un host específico
  • fleet_list_host_past_activities - Listar actividades pasadas para un host específico
  • fleet_get_host_mdm - Obtener información de MDM para un host específico
  • fleet_list_host_certificates - Listar certificados para un host específico
  • fleet_get_host_macadmins - Obtener datos de macadmins (Munki, perfiles MDM) para un host
  • fleet_get_host_device_mapping - Obtener información de mapeo de dispositivos para un host
  • fleet_get_host_encryption_key - Obtener clave de recuperación de cifrado de disco para un host

Gestión de consultas

  • fleet_list_queries - Listar todas las consultas guardadas con paginación
  • fleet_get_query - Obtener detalles de una consulta guardada específica
  • fleet_get_query_report - Obtener los últimos resultados de una consulta programada

Gestión de políticas

  • fleet_list_policies - Listar todas las políticas de cumplimiento
  • fleet_get_policy_results - Obtener resultados de cumplimiento para una política específica

Software y vulnerabilidades

  • fleet_list_software - Listar inventario de software en toda la flota
  • fleet_get_software - Obtener información detallada sobre un elemento de software específico
  • fleet_get_host_software - Obtener software instalado en un host específico
  • fleet_get_vulnerabilities - Listar vulnerabilidades conocidas con filtrado
  • fleet_get_cve - Obtener información detallada sobre un CVE específico
  • fleet_search_software - Buscar software por nombre
  • fleet_find_software_on_host - Encontrar software específico en un host por nombre de host
  • fleet_get_software_install_result - Obtener el resultado de una solicitud de instalación de software
  • fleet_list_software_titles - Listar títulos de software en toda la flota
  • fleet_get_software_title - Obtener información detallada sobre un título de software específico

Gestión de equipos

  • fleet_list_teams - Listar todos los equipos
  • fleet_get_team - Obtener detalles de un equipo específico
  • fleet_list_team_users - Listar todos los usuarios que son miembros de un equipo específico
  • fleet_get_team_secrets - Listar secretos de inscripción específicos del equipo

Gestión de usuarios

  • fleet_list_users - Listar todos los usuarios con filtrado
  • fleet_get_user - Obtener detalles de un usuario específico
  • fleet_list_user_sessions - Listar sesiones activas para un usuario
  • fleet_get_session - Obtener detalles de sesión por ID

Gestión de etiquetas

  • fleet_list_labels - Listar todas las etiquetas
  • fleet_get_label - Obtener información detallada sobre una etiqueta específica

Gestión de paquetes

  • fleet_list_packs - Listar todos los paquetes de consultas
  • fleet_get_pack - Obtener información detallada sobre un paquete específico
  • fleet_list_scheduled_queries - Listar consultas programadas en un paquete específico

Gestión de scripts

  • fleet_list_scripts - Listar todos los scripts disponibles en Fleet
  • fleet_get_script - Obtener detalles de un script específico
  • fleet_get_script_result - Obtener el resultado de una ejecución de script
  • fleet_list_batch_scripts - Listar ejecuciones de scripts por lotes
  • fleet_get_batch_script - Obtener detalles de una ejecución de script por lotes
  • fleet_list_batch_script_hosts - Listar hosts en una ejecución de script por lotes
  • fleet_list_host_scripts - Listar scripts disponibles para un host específico

Gestión de MDM

  • fleet_list_mdm_commands - Listar comandos MDM que se han ejecutado
  • fleet_get_mdm_command_results - Obtener resultados de comandos MDM
  • fleet_list_mdm_profiles - Listar perfiles de configuración MDM
  • fleet_get_host_mdm_profiles - Obtener perfiles MDM instalados en un host específico
  • fleet_get_mdm_profiles_summary - Obtener resumen del estado de implementación de perfiles MDM
  • fleet_get_filevault_summary - Obtener resumen de cifrado FileVault
  • fleet_list_mdm_devices - Listar todos los dispositivos Apple inscritos en MDM
  • fleet_get_bootstrap_metadata - Obtener metadatos sobre un paquete bootstrap para un equipo
  • fleet_get_bootstrap_summary - Obtener resumen agregado sobre la implementación de paquetes bootstrap
  • fleet_get_setup_assistant - Obtener la configuración del Asistente de configuración de Apple MDM
  • fleet_list_mdm_apple_installers - Listar todos los instaladores MDM de Apple

Gestión de VPP/App Store

  • fleet_list_app_store_apps - Listar aplicaciones de App Store disponibles para instalación
  • fleet_list_vpp_tokens - Listar tokens VPP configurados en Fleet

Gestión de configuración

  • fleet_get_config - Obtener la configuración actual de la aplicación Fleet
  • fleet_get_enroll_secrets - Obtener la configuración de secretos de inscripción
  • fleet_get_certificate - Obtener la cadena de certificados del servidor Fleet
  • fleet_get_version - Obtener la información de versión del servidor Fleet

Gestión de secretos

  • fleet_list_secrets - Listar variables secretas en Fleet

Gestión de invitaciones

  • fleet_list_invites - Listar invitaciones de usuarios pendientes
  • fleet_verify_invite - Verificar un token de invitación y obtener detalles de la invitación

Gestión de carve

  • fleet_list_carves - Listar sesiones de carve de archivos
  • fleet_get_carve - Obtener información detallada sobre una sesión de carve específica
  • fleet_get_carve_block - Obtener un bloque específico de datos de una sesión de carve

Gestión de dispositivos

  • fleet_get_device_info - Obtener información del dispositivo usando un token de dispositivo

Monitoreo de actividad

  • fleet_list_activities - Listar actividades de Fleet y registros de auditoría

Descubrimiento y Referencia de Tablas de Osquery

  • fleet_list_osquery_tables - Lista las tablas de osquery disponibles con descubrimiento dinámico
  • fleet_get_osquery_table_schema - Obtén el esquema detallado de una tabla específica
  • fleet_suggest_tables_for_query - Obtén sugerencias de tablas impulsadas por IA según la intención

Sistema

  • fleet_health_check - Verifica la conectividad y autenticación del servidor Fleet
Herramientas de Escritura/Modificación (Requiere readonly=false)

Estas herramientas pueden modificar el estado de Fleet y solo están disponibles cuando readonly=false está configurado en la configuración. Esto te permitirá realizar cambios en tu entorno Fleet, como crear scripts, políticas, gestionar equipos, etc., además de las herramientas de solo lectura. Establecerlo en readonly=true (predeterminado) deshabilitará estas herramientas.

Gestión de Hosts

  • fleet_delete_host - Elimina un host de Fleet
  • fleet_transfer_hosts - Transfiere hosts a un equipo diferente
  • fleet_query_host - Ejecuta una consulta en vivo ad-hoc contra un host específico
  • fleet_query_host_by_identifier - Ejecuta una consulta en vivo por hostname/UUID/serial
  • fleet_cancel_host_activity - Cancela una actividad próxima para un host específico
  • fleet_lock_host - Bloquea un dispositivo host de forma remota
  • fleet_unlock_host - Desbloquea un dispositivo host de forma remota
  • fleet_unenroll_host_mdm - Da de baja un host de MDM
  • fleet_add_labels_to_host - Agrega etiquetas a un host
  • fleet_remove_labels_from_host - Elimina etiquetas de un host
  • fleet_refetch_host - Fuerza a un host a volver a obtener y actualizar sus datos inmediatamente

Gestión de Consultas

  • fleet_create_query - Crea una nueva consulta guardada
  • fleet_delete_query - Elimina una consulta guardada
  • fleet_run_live_query_with_results - Ejecuta una consulta en vivo y recopila resultados
  • fleet_run_saved_query - Ejecuta una consulta guardada contra hosts

Gestión de Políticas

  • fleet_create_policy - Crea una nueva política de cumplimiento
  • fleet_update_policy - Actualiza una política existente
  • fleet_delete_policy - Elimina una política

Gestión de Software

  • fleet_install_software - Instala software en un host específico
  • fleet_batch_set_software - Carga/establece instaladores de software por lotes para un equipo

Gestión de Equipos

  • fleet_create_team - Crea un nuevo equipo
  • fleet_add_team_users - Agrega uno o más usuarios a un equipo específico
  • fleet_remove_team_user - Elimina un usuario específico de un equipo

Gestión de Usuarios

  • fleet_create_user - Crea un nuevo usuario
  • fleet_update_user - Actualiza un usuario existente
  • fleet_delete_session - Elimina/invalida una sesión específica
  • fleet_delete_user_sessions - Elimina todas las sesiones de un usuario específico

Gestión de Etiquetas

  • fleet_create_label - Crea una nueva etiqueta
  • fleet_update_label - Actualiza una etiqueta existente
  • fleet_delete_label - Elimina una etiqueta por nombre

Gestión de Packs

  • fleet_create_pack - Crea un nuevo pack de consultas
  • fleet_update_pack - Actualiza un pack existente
  • fleet_delete_pack - Elimina un pack por nombre

Gestión de Scripts

  • fleet_run_script - Ejecuta un script en un host específico
  • fleet_run_batch_script - Ejecuta un script en múltiples hosts
  • fleet_cancel_batch_script - Cancela una ejecución de script por lotes
  • fleet_create_script - Crea y sube un nuevo script
  • fleet_modify_script - Modifica un script existente
  • fleet_delete_script - Elimina un script

Gestión de MDM

  • fleet_upload_mdm_profile - Sube un nuevo perfil de configuración MDM
  • fleet_delete_mdm_profile - Elimina un perfil de configuración MDM
  • fleet_lock_device - Bloquea un dispositivo inscrito en MDM de forma remota
  • fleet_upload_bootstrap_package - Sube un paquete de arranque para la inscripción MDM
  • fleet_delete_bootstrap_package - Elimina un paquete de arranque para un equipo
  • fleet_create_setup_assistant - Crea o actualiza un Asistente de Configuración de Apple MDM
  • fleet_delete_setup_assistant - Elimina el Asistente de Configuración de Apple MDM
  • fleet_upload_mdm_apple_installer - Sube un nuevo paquete de instalador MDM de Apple Nota: La herramienta de borrado de dispositivos está actualmente deshabilitada por ser demasiado peligrosa. Puede reconsiderarse más adelante si realmente es necesaria.

Gestión de VPP/App Store

  • fleet_add_app_store_app - Agrega una aplicación de App Store para distribución
  • fleet_update_app_store_app - Actualiza la configuración de aplicaciones de App Store
  • fleet_delete_vpp_token - Elimina un token VPP

Gestión de Configuración

  • fleet_update_config - Actualiza la configuración de la aplicación Fleet
  • fleet_update_enroll_secrets - Actualiza la configuración de secretos de inscripción

Gestión de Secretos

  • fleet_create_secret - Crea una nueva variable secreta
  • fleet_delete_secret - Elimina una variable secreta por ID

Gestión de Invitaciones

  • fleet_create_invite - Crea una nueva invitación de usuario
  • fleet_update_invite - Actualiza una invitación pendiente
  • fleet_delete_invite - Elimina una invitación pendiente

Configuración

Fleet MCP admite tres métodos de configuración (en orden de precedencia):

  1. Argumentos de línea de comandos (mayor prioridad)
  2. Variables de entorno (con prefijo FLEET_)
  3. Archivo de configuración (recomendado por seguridad)

Archivo de Configuración (Recomendado)

Crea fleet-mcp.toml:

[fleet]
server_url = "https://your-fleet-instance.com"  # Required
api_token = "your-api-token"                     # Required
verify_ssl = true                                # Default: true
timeout = 30                                     # Default: 30 seconds
max_retries = 3                                  # Default: 3
readonly = true                                  # Default: true
allow_select_queries = false                     # Default: false

Variables de Entorno

Consulta la Referencia de Opciones de Configuración para todas las variables disponibles. Las variables de entorno usan el prefijo FLEET_ y anulan la configuración del archivo de configuración.

Argumentos de Línea de Comandos

fleet-mcp --server-url https://fleet.example.com --api-token YOUR_TOKEN run

Opciones: --config, --server-url, --api-token, --readonly, --verbose

Modo de Solo Lectura

Fleet MCP se ejecuta en modo de solo lectura por defecto para una exploración segura sin riesgo de cambios.

Tres Modos Operativos

ModoConfiguraciónCapacidadesMejor Para
Solo Lectura Estricto (Predeterminado)readonly=true
allow_select_queries=false
✅ Ver todos los recursos
❌ Sin ejecución de consultas
❌ Sin modificaciones
Exploración segura
Solo Lectura + SELECTreadonly=true
allow_select_queries=true
✅ Ver todos los recursos
✅ Ejecutar consultas SELECT
❌ Sin modificaciones
Monitoreo activo
Escritura Completareadonly=false✅ Todas las operaciones
⚠️ La IA puede modificar Fleet
Gestión completa

Ejemplos de Configuración

# Strict Read-Only (Default)
[fleet]
readonly = true
allow_select_queries = false
# Read-Only with SELECT Queries
[fleet]
readonly = true
allow_select_queries = true
# Full Write Access (⚠️ Use with caution) - Recommended to have LLM prompt for confirmation before making changes
[fleet]
readonly = false

Comandos CLI

ComandoDescripciónEjemplo
runIniciar servidor MCPfleet-mcp run
testProbar conexión con Fleetfleet-mcp test
init-configCrear plantilla de configuraciónfleet-mcp init-config
versionMostrar versiónfleet-mcp version

Opciones Globales: --config, --verbose, --server-url, --api-token, --readonly

Ejemplos de Uso

Ejemplo 1: Listar Todos los Equipos

# In Claude Desktop or any MCP client
"List all teams in Fleet"

Ejemplo 2: Encontrar Software en un Host

"What version of Chrome is installed on host-123?"

Ejemplo 3: Ejecutar una Consulta

# With allow_select_queries=true
"Run a query to find all processes listening on port 80"

Ejemplo 4: Verificar Cumplimiento

"Show me which hosts are failing the disk encryption policy"

Ejemplo 5: Descubrir Tablas de Osquery

"What osquery tables are available for monitoring network connections?"

Desarrollo

Configuración de Desarrollo

Este proyecto utiliza uv para la gestión de dependencias.

Configuración

git clone https://github.com/SimplyMinimal/fleet-mcp.git
cd fleet-mcp
uv sync --dev

Tareas Comunes

TareaComando
Ejecutar pruebasuv run pytest
Formatear códigouv run black src tests && uv run isort src tests
Verificación de tiposuv run mypy src
Lintuv run ruff check src tests
Agregar dependenciauv add package-name
Agregar dependencia de desarrollouv add --group dev package-name

Estructura del Proyecto

src/fleet_mcp/
├── cli.py              # Command-line interface
├── client.py           # Fleet API client
├── config.py           # Configuration management
├── server.py           # MCP server implementation
├── tools/              # MCP tool implementations
└── utils/              # Utilities (SQL validator, etc.)

Solución de Problemas

El Servidor No Aparece en el Cliente
  1. Valida la sintaxis JSON en el archivo de configuración
  2. Reinicia el cliente MCP
  3. Revisa los registros del cliente para ver errores
  4. Verifica que uvx o fleet-mcp esté en PATH: which uvx
Errores de Conexión
  1. Prueba manualmente: uvx fleet-mcp test
  2. Verifica que FLEET_SERVER_URL sea accesible
  3. Comprueba que FLEET_API_TOKEN sea válido
  4. Para certificados autofirmados: FLEET_VERIFY_SSL=false
Autenticación Fallida (401)
  1. Verifica que el token de API sea correcto
  2. Comprueba que el token no haya expirado
  3. Asegúrate de que el token tenga los permisos adecuados
  4. Genera un nuevo token: Interfaz de Fleet → Mi cuenta → Obtener token de API
Validación de Consulta Fallida
  1. Establece FLEET_ALLOW_SELECT_QUERIES=true
  2. Asegúrate de que la consulta sea solo SELECT (sin INSERT, UPDATE, DELETE, etc.)
  3. Verifica que la sintaxis SQL de osquery sea válida
Herramienta No Disponible
  • Las operaciones de escritura requieren FLEET_READONLY=false
  • La ejecución de consultas requiere FLEET_ALLOW_SELECT_QUERIES=true
  • Verifica la disponibilidad de herramientas en el modo actual

Licencia

Fleet MCP es software de código abierto bajo la Licencia MIT.

Eres libre de usar, modificar y distribuir este software para cualquier propósito, incluido el uso comercial, sujeto a los términos de la Licencia MIT.

Aviso Legal

Este proyecto no está afiliado ni respaldado por Fleet DM. Es una implementación independiente del Protocolo de Contexto de Modelo para interactuar con instancias de Fleet.