Fleet-MCP

Permite que assistentes de IA interajam com o Fleet Device Management para gerenciamento de dispositivos, monitoramento de segurança e aplicação de conformidade.

Documentação

Ask DeepWiki

Fleet MCP

Um servidor Model Context Protocol (MCP) que permite que assistentes de IA interajam com o Fleet Device Management para gerenciamento de dispositivos, monitoramento de segurança e aplicação de conformidade.

Demonstração

📸 Mostrar/Ocultar Capturas de Tela da Demonstração

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

Recursos

  • Gerenciamento de Hosts: Liste, pesquise, consulte e gerencie hosts em toda a sua frota
  • Execução de Consultas ao Vivo: Execute consultas osquery em tempo real contra hosts
  • Gerenciamento de Políticas: Crie, atualize e monitore políticas de conformidade
  • Inventário de Software: Acompanhe instalações de software e vulnerabilidades em todos os dispositivos
  • Gerenciamento de Equipes e Usuários: Organize hosts e usuários em equipes
  • Descoberta de Tabelas osquery: Descoberta dinâmica e documentação de tabelas osquery
  • Modo Somente Leitura: Exploração segura com execução opcional de consultas somente SELECT
  • Monitoramento de Atividades: Acompanhe atividades do Fleet e logs de auditoria

Início Rápido

Quer começar direto? Isso configurará o fleet-mcp com acesso somente leitura e execução de consultas SELECT habilitada. Basta substituir o FLEET_SERVER_URL e o FLEET_API_TOKEN pelos seus próprios.

{
  "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"
      }
    }
  }
}

Consulte a seção Ferramentas Disponíveis abaixo para obter uma lista completa de ferramentas.


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 da API do Fleet: Gere um token de API na sua instância do Fleet: Opção 1)

    • Faça login na interface do Fleet
    • Navegue até: Minha conta → Obter token da API
    • Copie o token para usar na configuração

    Opção 2)

    • Crie um usuário somente de API com 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 e a URL da sua instância do Fleet (https://your-fleet-instance.com) serão usados na configuração do cliente.

  3. Escolha Seu Cliente: Selecione o cliente de assistente de IA de sua preferência e siga as instruções de configuração correspondentes abaixo.

Instalar no Claude Desktop

Localização do Arquivo de Configuração

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

Configuração

{
  "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: Substitua uvx por fleet-mcp se você instalou o pacote globalmente. Para maior segurança, use a flag --config para referenciar um arquivo TOML em vez de incorporar tokens (consulte Práticas Recomendadas de Segurança).

Instalar no Cursor

Vá para: Settings → Cursor Settings → MCP → Add new global MCP server

Instale globalmente em ~/.cursor/mcp.json ou por projeto em .cursor/mcp.json. Consulte a documentação MCP do Cursor para mais informações.

{
  "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 no Cline (Extensão do VS Code)

Localização da Configuração: ~/.cline/mcp_settings.json (macOS/Linux) ou %USERPROFILE%\.cline\mcp_settings.json (Windows)

Alternativamente: Configurações do VS Code → Pesquise "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 no Continue (Extensão do VS Code)

Localização da Configuração: ~/.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 no Editor Zed

Localização da Configuração: ~/.config/zed/settings.json (macOS/Linux) ou %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 no Windsurf

Consulte a documentação MCP do Windsurf para mais informações.

{
  "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 no VS Code

Consulte a documentação MCP do VS Code para mais informações.

"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 no Sourcegraph Cody

Localização da Configuração: ~/Library/Application Support/Cody/mcp_settings.json (macOS), %APPDATA%\Cody\mcp_settings.json (Windows) ou ~/.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 no Augment Code

Pela Interface: Menu de hambúrguer → Configurações → Ferramentas → + Adicionar MCP → Insira uvx fleet-mcp run → Nome: "Fleet" → Adicionar

Configuração Manual: Configurações → Avançado → 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 no LM Studio

Navegue até Program → Install → Edit mcp.json. Consulte o Suporte MCP do 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"
      }
    }
  }
}
Configuração Genérica de Cliente MCP

Para outros clientes compatíveis com MCP, use este padrão geral:

{
  "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"
      }
    }
  }
}

Referência de Opções de Configuração

Variável de AmbienteDescriçãoPadrãoObrigatório
FLEET_SERVER_URLURL do servidor Fleet-✅
FLEET_API_TOKENToken da API do Fleet-✅
FLEET_READONLYAtivar modo somente leituratrue❌
FLEET_ALLOW_SELECT_QUERIESPermitir consultas SELECT no modo somente leiturafalse❌
FLEET_VERIFY_SSLVerificar certificados SSLtrue❌
FLEET_TIMEOUTTempo limite de solicitação (segundos)30❌
FLEET_MAX_RETRIESNúmero máximo de tentativas de solicitação3❌

Nota: Todos os clientes acima usam as mesmas variáveis de ambiente. Substitua uvx por fleet-mcp se instalado globalmente.

Práticas Recomendadas de Segurança

  1. Use Arquivos de Configuração: Armazene tokens em arquivos TOML: "args": ["fleet-mcp", "--config", "~/.config/fleet-mcp.toml", "run"]
  2. Permissões de Arquivo: chmod 600 ~/.config/fleet-mcp.toml
  3. Modo Somente Leitura: Comece com FLEET_READONLY=true (padrão)
  4. Rotação de Tokens: Rotacione regularmente os tokens da API do Fleet
  5. Configurações Específicas por Ambiente: Use configurações separadas para dev/prod

Ferramentas Disponíveis

O Fleet MCP fornece ferramentas organizadas em dois grupos principais com base no modo operacional. Clique para expandir cada grupo.

Ferramentas Somente Leitura (Sempre Disponíveis)

Estas ferramentas estão disponíveis em todos os modos (readonly=true ou readonly=false). Elas apenas leem dados e nunca modificam o estado do Fleet.

Gerenciamento de Hosts

  • fleet_list_hosts - Liste hosts com filtragem, paginação e pesquisa
  • fleet_get_host - Obtenha informações detalhadas sobre um host específico por ID
  • fleet_get_host_by_identifier - Obtenha host por hostname, UUID ou serial de hardware
  • fleet_search_hosts - Pesquise hosts por hostname, UUID, número de série ou IP
  • fleet_list_host_upcoming_activities - Liste atividades futuras para um host específico
  • fleet_list_host_past_activities - Liste atividades passadas para um host específico
  • fleet_get_host_mdm - Obtenha informações de MDM para um host específico
  • fleet_list_host_certificates - Liste certificados para um host específico
  • fleet_get_host_macadmins - Obtenha dados de macadmins (Munki, perfis MDM) para um host
  • fleet_get_host_device_mapping - Obtenha informações de mapeamento de dispositivo para um host
  • fleet_get_host_encryption_key - Obtenha a chave de recuperação de criptografia de disco para um host

Gerenciamento de Consultas

  • fleet_list_queries - Liste todas as consultas salvas com paginação
  • fleet_get_query - Obtenha detalhes de uma consulta salva específica
  • fleet_get_query_report - Obtenha os resultados mais recentes de uma consulta agendada

Gerenciamento de Políticas

  • fleet_list_policies - Liste todas as políticas de conformidade
  • fleet_get_policy_results - Obtenha resultados de conformidade para uma política específica

Software e Vulnerabilidades

  • fleet_list_software - Liste o inventário de software em toda a frota
  • fleet_get_software - Obtenha informações detalhadas sobre um item de software específico
  • fleet_get_host_software - Obtenha software instalado em um host específico
  • fleet_get_vulnerabilities - Liste vulnerabilidades conhecidas com filtragem
  • fleet_get_cve - Obtenha informações detalhadas sobre um CVE específico
  • fleet_search_software - Pesquise software por nome
  • fleet_find_software_on_host - Encontre software específico em um host por hostname
  • fleet_get_software_install_result - Obtenha o resultado de uma solicitação de instalação de software
  • fleet_list_software_titles - Liste títulos de software em toda a frota
  • fleet_get_software_title - Obtenha informações detalhadas sobre um título de software específico

Gerenciamento de Equipes

  • fleet_list_teams - Liste todas as equipes
  • fleet_get_team - Obtenha detalhes de uma equipe específica
  • fleet_list_team_users - Liste todos os usuários que são membros de uma equipe específica
  • fleet_get_team_secrets - Liste segredos de inscrição específicos da equipe

Gerenciamento de Usuários

  • fleet_list_users - Liste todos os usuários com filtragem
  • fleet_get_user - Obtenha detalhes de um usuário específico
  • fleet_list_user_sessions - Liste sessões ativas para um usuário
  • fleet_get_session - Obtenha detalhes da sessão por ID

Gerenciamento de Rótulos

  • fleet_list_labels - Liste todos os rótulos
  • fleet_get_label - Obtenha informações detalhadas sobre um rótulo específico

Gerenciamento de Pacotes

  • fleet_list_packs - Liste todos os pacotes de consulta
  • fleet_get_pack - Obtenha informações detalhadas sobre um pacote específico
  • fleet_list_scheduled_queries - Liste consultas agendadas em um pacote específico

Gerenciamento de Scripts

  • fleet_list_scripts - Liste todos os scripts disponíveis no Fleet
  • fleet_get_script - Obtenha detalhes de um script específico
  • fleet_get_script_result - Obtenha o resultado de uma execução de script
  • fleet_list_batch_scripts - Liste execuções de scripts em lote
  • fleet_get_batch_script - Obtenha detalhes de uma execução de script em lote
  • fleet_list_batch_script_hosts - Liste hosts em uma execução de script em lote
  • fleet_list_host_scripts - Liste scripts disponíveis para um host específico

Gerenciamento de MDM

  • fleet_list_mdm_commands - Liste comandos MDM que foram executados
  • fleet_get_mdm_command_results - Obtenha resultados de comandos MDM
  • fleet_list_mdm_profiles - Liste perfis de configuração MDM
  • fleet_get_host_mdm_profiles - Obtenha perfis MDM instalados em um host específico
  • fleet_get_mdm_profiles_summary - Obtenha resumo do status de implantação de perfis MDM
  • fleet_get_filevault_summary - Obtenha resumo de criptografia FileVault
  • fleet_list_mdm_devices - Liste todos os dispositivos Apple inscritos em MDM
  • fleet_get_bootstrap_metadata - Obtenha metadados sobre um pacote bootstrap para uma equipe
  • fleet_get_bootstrap_summary - Obtenha resumo agregado sobre a implantação de pacotes bootstrap
  • fleet_get_setup_assistant - Obtenha a configuração do Assistente de Configuração Apple do MDM
  • fleet_list_mdm_apple_installers - Liste todos os instaladores MDM da Apple

Gerenciamento de VPP/App Store

  • fleet_list_app_store_apps - Liste aplicativos da App Store disponíveis para instalação
  • fleet_list_vpp_tokens - Liste tokens VPP configurados no Fleet

Gerenciamento de Configuração

  • fleet_get_config - Obtenha a configuração atual do aplicativo Fleet
  • fleet_get_enroll_secrets - Obtenha a configuração de segredos de inscrição
  • fleet_get_certificate - Obtenha a cadeia de certificados do servidor Fleet
  • fleet_get_version - Obtenha informações da versão do servidor Fleet

Gerenciamento de Segredos

  • fleet_list_secrets - Liste variáveis secretas no Fleet

Gerenciamento de Convites

  • fleet_list_invites - Liste convites de usuário pendentes
  • fleet_verify_invite - Verifique um token de convite e obtenha detalhes do convite

Gerenciamento de Carve

  • fleet_list_carves - Liste sessões de carve de arquivos
  • fleet_get_carve - Obtenha informações detalhadas sobre uma sessão de carve específica
  • fleet_get_carve_block - Obtenha um bloco específico de dados de uma sessão de carve

Gerenciamento de Dispositivos

  • fleet_get_device_info - Obtenha informações do dispositivo usando um token de dispositivo

Monitoramento de Atividades

  • fleet_list_activities - Liste atividades do Fleet e logs de auditoria

Descoberta e Referência de Tabelas Osquery

  • fleet_list_osquery_tables - Listar tabelas osquery disponíveis com descoberta dinâmica
  • fleet_get_osquery_table_schema - Obter esquema detalhado para uma tabela específica
  • fleet_suggest_tables_for_query - Obter sugestões de tabelas com IA baseadas na intenção

Sistema

  • fleet_health_check - Verificar conectividade e autenticação do servidor Fleet
Ferramentas de Escrita/Modificação (Requer readonly=false)

Essas ferramentas podem modificar o estado do Fleet e estão disponíveis apenas quando readonly=false está definido na configuração. Isso permitirá que você faça alterações no seu ambiente Fleet, como criar scripts, políticas, gerenciar equipes, etc., além das ferramentas somente leitura. Definir como readonly=true (padrão) desabilitará essas ferramentas.

Gerenciamento de Hosts

  • fleet_delete_host - Remover um host do Fleet
  • fleet_transfer_hosts - Transferir hosts para uma equipe diferente
  • fleet_query_host - Executar uma consulta ao vivo ad-hoc contra um host específico
  • fleet_query_host_by_identifier - Executar uma consulta ao vivo por hostname/UUID/serial
  • fleet_cancel_host_activity - Cancelar uma atividade futura para um host específico
  • fleet_lock_host - Bloquear remotamente o dispositivo de um host
  • fleet_unlock_host - Desbloquear remotamente o dispositivo de um host
  • fleet_unenroll_host_mdm - Cancelar a inscrição de um host no MDM
  • fleet_add_labels_to_host - Adicionar rótulos a um host
  • fleet_remove_labels_from_host - Remover rótulos de um host
  • fleet_refetch_host - Forçar um host a buscar novamente e atualizar seus dados imediatamente

Gerenciamento de Consultas

  • fleet_create_query - Criar uma nova consulta salva
  • fleet_delete_query - Excluir uma consulta salva
  • fleet_run_live_query_with_results - Executar uma consulta ao vivo e coletar resultados
  • fleet_run_saved_query - Executar uma consulta salva contra hosts

Gerenciamento de Políticas

  • fleet_create_policy - Criar uma nova política de conformidade
  • fleet_update_policy - Atualizar uma política existente
  • fleet_delete_policy - Excluir uma política

Gerenciamento de Software

  • fleet_install_software - Instalar software em um host específico
  • fleet_batch_set_software - Enviar/definir instaladores de software em lote para uma equipe

Gerenciamento de Equipes

  • fleet_create_team - Criar uma nova equipe
  • fleet_add_team_users - Adicionar um ou mais usuários a uma equipe específica
  • fleet_remove_team_user - Remover um usuário específico de uma equipe

Gerenciamento de Usuários

  • fleet_create_user - Criar um novo usuário
  • fleet_update_user - Atualizar um usuário existente
  • fleet_delete_session - Excluir/invalidar uma sessão específica
  • fleet_delete_user_sessions - Excluir todas as sessões de um usuário específico

Gerenciamento de Rótulos

  • fleet_create_label - Criar um novo rótulo
  • fleet_update_label - Atualizar um rótulo existente
  • fleet_delete_label - Excluir um rótulo pelo nome

Gerenciamento de Pacotes

  • fleet_create_pack - Criar um novo pacote de consultas
  • fleet_update_pack - Atualizar um pacote existente
  • fleet_delete_pack - Excluir um pacote pelo nome

Gerenciamento de Scripts

  • fleet_run_script - Executar um script em um host específico
  • fleet_run_batch_script - Executar um script em vários hosts
  • fleet_cancel_batch_script - Cancelar uma execução de script em lote
  • fleet_create_script - Criar e enviar um novo script
  • fleet_modify_script - Modificar um script existente
  • fleet_delete_script - Excluir um script

Gerenciamento de MDM

  • fleet_upload_mdm_profile - Enviar um novo perfil de configuração MDM
  • fleet_delete_mdm_profile - Excluir um perfil de configuração MDM
  • fleet_lock_device - Bloquear remotamente um dispositivo inscrito no MDM
  • fleet_upload_bootstrap_package - Enviar um pacote bootstrap para inscrição no MDM
  • fleet_delete_bootstrap_package - Excluir um pacote bootstrap para uma equipe
  • fleet_create_setup_assistant - Criar ou atualizar um Assistente de Configuração Apple MDM
  • fleet_delete_setup_assistant - Excluir o Assistente de Configuração Apple MDM
  • fleet_upload_mdm_apple_installer - Enviar um novo pacote instalador Apple MDM Nota: A ferramenta de apagamento de dispositivo está atualmente desabilitada por ser muito perigosa. Ela pode ser revisitada mais tarde se realmente necessário.

Gerenciamento de VPP/App Store

  • fleet_add_app_store_app - Adicionar um aplicativo da App Store para distribuição
  • fleet_update_app_store_app - Atualizar configurações de aplicativos da App Store
  • fleet_delete_vpp_token - Excluir um token VPP

Gerenciamento de Configuração

  • fleet_update_config - Atualizar a configuração do aplicativo Fleet
  • fleet_update_enroll_secrets - Atualizar a configuração de segredos de inscrição

Gerenciamento de Segredos

  • fleet_create_secret - Criar uma nova variável secreta
  • fleet_delete_secret - Excluir uma variável secreta por ID

Gerenciamento de Convites

  • fleet_create_invite - Criar um novo convite de usuário
  • fleet_update_invite - Atualizar um convite pendente
  • fleet_delete_invite - Excluir um convite pendente

Configuração

O Fleet MCP suporta três métodos de configuração (em ordem de precedência):

  1. Argumentos de linha de comando (maior prioridade)
  2. Variáveis de ambiente (com prefixo FLEET_)
  3. Arquivo de configuração (recomendado para segurança)

Arquivo de Configuração (Recomendado)

Crie 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

Variáveis de Ambiente

Consulte Referência de Opções de Configuração para todas as variáveis disponíveis. As variáveis de ambiente usam o prefixo FLEET_ e substituem as configurações do arquivo de configuração.

Argumentos de Linha de Comando

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

Opções: --config, --server-url, --api-token, --readonly, --verbose

Modo Somente Leitura

O Fleet MCP é executado em modo somente leitura por padrão para exploração segura sem risco de alterações.

Três Modos Operacionais

ModoConfigCapacidadesMelhor Para
Somente Leitura Estrito (Padrão)readonly=true
allow_select_queries=false
✅ Visualizar todos os recursos
❌ Sem execução de consultas
❌ Sem modificações
Exploração segura
Somente Leitura + SELECTreadonly=true
allow_select_queries=true
✅ Visualizar todos os recursos
✅ Executar consultas SELECT
❌ Sem modificações
Monitoramento ativo
Escrita Completareadonly=false✅ Todas as operações
⚠️ A IA pode modificar o Fleet
Gerenciamento completo

Exemplos de Configuração

# 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

ComandoDescriçãoExemplo
runIniciar servidor MCPfleet-mcp run
testTestar conexão com Fleetfleet-mcp test
init-configCriar modelo de configuraçãofleet-mcp init-config
versionMostrar versãofleet-mcp version

Opções Globais: --config, --verbose, --server-url, --api-token, --readonly

Exemplos de Uso

Exemplo 1: Listar Todas as Equipes

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

Exemplo 2: Encontrar Software em um Host

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

Exemplo 3: Executar uma Consulta

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

Exemplo 4: Verificar Conformidade

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

Exemplo 5: Descobrir Tabelas Osquery

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

Desenvolvimento

Configuração de Desenvolvimento

Este projeto usa uv para gerenciamento de dependências.

Configuração

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

Tarefas Comuns

TarefaComando
Executar testesuv run pytest
Formatar códigouv run black src tests && uv run isort src tests
Verificação de tiposuv run mypy src
Lintuv run ruff check src tests
Adicionar dependênciauv add package-name
Adicionar dependência de desenvolvimentouv add --group dev package-name

Estrutura do Projeto

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.)

Solução de Problemas

Servidor Não Aparecendo no Cliente
  1. Valide a sintaxe JSON no arquivo de configuração
  2. Reinicie o cliente MCP
  3. Verifique os logs do cliente em busca de erros
  4. Verifique se uvx ou fleet-mcp está no PATH: which uvx
Erros de Conexão
  1. Teste manualmente: uvx fleet-mcp test
  2. Verifique se FLEET_SERVER_URL está acessível
  3. Verifique se FLEET_API_TOKEN é válido
  4. Para certificados autoassinados: FLEET_VERIFY_SSL=false
Falha na Autenticação (401)
  1. Verifique se o token da API está correto
  2. Verifique se o token não expirou
  3. Garanta que o token tenha as permissões adequadas
  4. Gere um novo token: Fleet UI → Minha conta → Obter token da API
Falha na Validação da Consulta
  1. Defina FLEET_ALLOW_SELECT_QUERIES=true
  2. Garanta que a consulta seja somente SELECT (sem INSERT, UPDATE, DELETE, etc.)
  3. Verifique se a sintaxe SQL do osquery é válida
Ferramenta Não Disponível
  • Operações de escrita exigem FLEET_READONLY=false
  • A execução de consultas exige FLEET_ALLOW_SELECT_QUERIES=true
  • Verifique a disponibilidade da ferramenta no modo atual

Licença

O Fleet MCP é um software de código aberto licenciado sob a Licença MIT.

Você é livre para usar, modificar e distribuir este software para qualquer finalidade, incluindo uso comercial, sujeito aos termos da Licença MIT.

Aviso Legal

Este projeto não é afiliado ou endossado pela Fleet DM. É uma implementação independente do Model Context Protocol para interagir com instâncias do Fleet.