# fleet-mcp

MCP server connecting AI assistants to Fleet Device Management for live osquery checks, fleet audits, and policy compliance.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 5
- Author: SimplyMinimal
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/SimplyMinimal/fleet-mcp
- Updated: 2026-03-03
- HTML: https://affpapa.org/en/nevibecode/mcp/fleet-mcp

## What it does

This server connects an AI client to an existing Fleet Device Management installation. It exposes tools to inspect enrolled endpoints, review audit logs, and search software inventories. The assistant can dispatch live osquery statements straight to managed machines to inspect system states.

Execution relies on `uvx` or a local Python setup. You need a reachable Fleet URL and a valid `FLEET_API_TOKEN` created via the Fleet web console or `fleetctl`. Passing `FLEET_READONLY` stops configuration changes, while `FLEET_ALLOW_SELECT_QUERIES` permits safe data inspection. Without valid credentials or a direct route to the Fleet host, the process fails on startup.

## Requirements
- Needs: Python and uv (commands run via uvx)
- Environment variables: `FLEET_SERVER_URL`, `FLEET_API_TOKEN`, `FLEET_READONLY`, `FLEET_ALLOW_SELECT_QUERIES`, `FLEET_VERIFY_SSL` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env FLEET_SERVER_URL=<FLEET_SERVER_URL> --env FLEET_API_TOKEN=<FLEET_API_TOKEN> --env FLEET_READONLY=<FLEET_READONLY> --env FLEET_ALLOW_SELECT_QUERIES=<FLEET_ALLOW_SELECT_QUERIES> --env FLEET_VERIFY_SSL=<FLEET_VERIFY_SSL> --transport stdio fleet-mcp -- uvx fleet-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from fleet-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add fleet-mcp --env FLEET_SERVER_URL=<FLEET_SERVER_URL> --env FLEET_API_TOKEN=<FLEET_API_TOKEN> --env FLEET_READONLY=<FLEET_READONLY> --env FLEET_ALLOW_SELECT_QUERIES=<FLEET_ALLOW_SELECT_QUERIES> --env FLEET_VERIFY_SSL=<FLEET_VERIFY_SSL> -- uvx fleet-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from fleet-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "fleet-mcp": {
            "command": "uvx",
            "args": [
                "fleet-mcp"
            ],
            "env": {
                "FLEET_SERVER_URL": "<FLEET_SERVER_URL>",
                "FLEET_API_TOKEN": "<FLEET_API_TOKEN>",
                "FLEET_READONLY": "<FLEET_READONLY>",
                "FLEET_ALLOW_SELECT_QUERIES": "<FLEET_ALLOW_SELECT_QUERIES>",
                "FLEET_VERIFY_SSL": "<FLEET_VERIFY_SSL>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from fleet-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "fleet-mcp": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "fleet-mcp"
            ],
            "env": {
                "FLEET_SERVER_URL": "<FLEET_SERVER_URL>",
                "FLEET_API_TOKEN": "<FLEET_API_TOKEN>",
                "FLEET_READONLY": "<FLEET_READONLY>",
                "FLEET_ALLOW_SELECT_QUERIES": "<FLEET_ALLOW_SELECT_QUERIES>",
                "FLEET_VERIFY_SSL": "<FLEET_VERIFY_SSL>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from fleet-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e FLEET_SERVER_URL=<FLEET_SERVER_URL> -e FLEET_API_TOKEN=<FLEET_API_TOKEN> -e FLEET_READONLY=<FLEET_READONLY> -e FLEET_ALLOW_SELECT_QUERIES=<FLEET_ALLOW_SELECT_QUERIES> -e FLEET_VERIFY_SSL=<FLEET_VERIFY_SSL> fleet-mcp uvx fleet-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from fleet-mcp <command>

## When to use it
- run real-time osquery queries across enrolled endpoints
- audit software inventories and track vulnerability reports
- monitor compliance against device configuration policies
- inspect host telemetry directly inside AI conversations

## Example prompts
- Run an osquery SELECT query on developer workstations to inspect disk encryption status
- Check policy compliance across all devices assigned to the infrastructure team
- List installed software packages and vulnerabilities detected on host `dev-mac-01`

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 392262
- [World Monitor](https://affpapa.org/en/nevibecode/mcp/world-monitor.md) — MCP server · ★ 89609
- [mcp](https://affpapa.org/en/nevibecode/mcp/kubeshark-mcp.md) — MCP server · ★ 12110
- [Robin: AI-Powered Dark Web OSINT](https://affpapa.org/en/nevibecode/mcp/robin-ai-powered-dark-web-osint.md) — MCP server · ★ 7718
- [jshookmcp](https://affpapa.org/en/nevibecode/mcp/jshookmcp.md) — MCP server · ★ 2066
- [OpenOSINT](https://affpapa.org/en/nevibecode/mcp/openosint.md) — MCP server · ★ 1816

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
