fleet_list_hostsLABSCO SUMMARY
Read-only plus SELECT queries is the setting that makes this safe and still useful.
The quick-start config turns both on deliberately: an agent can run live osquery SELECTs across your fleet — which is where the real answers are — while every tool that could delete a host, transfer teams or push a script stays unregistered. That is a better boundary than trusting instructions, because the write tools genuinely are not exposed. Turn writes on per deployment when you need them, not as a default.
What it is
An MCP server for Fleet Device Management. It covers the read surface broadly — hosts, saved queries, compliance policies, software inventory and CVEs, teams, users, MDM profiles, scripts, activity logs — and gates every state-changing tool behind an explicit configuration switch.
What you get
- Hosts —
fleet_list_hosts,fleet_get_host,fleet_get_host_by_identifier,fleet_search_hosts, plus per-host MDM, certificate, encryption-key and activity tools - Software and vulnerabilities —
fleet_list_software,fleet_get_host_software,fleet_get_vulnerabilities,fleet_get_cve,fleet_find_software_on_host,fleet_list_software_titles - Policies and queries —
fleet_list_policies,fleet_get_policy_results,fleet_list_queries,fleet_get_query_report - MDM —
fleet_list_mdm_profiles,fleet_get_mdm_profiles_summary,fleet_get_filevault_summary,fleet_list_mdm_devicesand more - Osquery help —
fleet_list_osquery_tables,fleet_get_osquery_table_schema,fleet_suggest_tables_for_querypropose tables from a stated intent fleet_health_checkconfirms connectivity and authentication before you debug anything else- Write tools such as
fleet_query_host,fleet_transfer_hostsandfleet_delete_hostappear only when read-only mode is off
Requirements
A Fleet server and an API token from Fleet's My account > Get API token page. Published on PyPI as fleet-mcp version 1.1.3, stdio transport; the client entry runs uvx fleet-mcp run. Two variables are required — FLEET_SERVER_URL and FLEET_API_TOKEN (secret). Three optional ones shape behaviour: FLEET_READONLY, FLEET_ALLOW_SELECT_QUERIES and FLEET_VERIFY_SSL.
Setup effort
One command plus a key — uvx fleet-mcp run, then supply credentials
USE CASES
Finding out which machines are affected by a CVE
Look up the CVE, then find which hosts have the vulnerable software installed.
Answering a compliance question about the fleet
Read the policy's results rather than exporting a report from the UI.
Asking a live question osquery can answer
Get table suggestions for what you are trying to find out, then run a SELECT across hosts.
Checking disk encryption coverage
Pull the FileVault summary and the MDM profile deployment status in one pass.
Tracking down one machine
Find it by hostname, UUID or serial and read its full record.
132 tools
Listed in project docs. Your client may show a different list.
fleet_get_hostfleet_get_host_by_identifierfleet_search_hostsfleet_list_host_upcoming_activitiesfleet_list_host_past_activitiesfleet_get_host_mdmfleet_list_host_certificatesfleet_get_host_macadminsfleet_get_host_device_mappingfleet_get_host_encryption_keyfleet_list_queriesfleet_get_queryfleet_get_query_reportfleet_list_policiesfleet_get_policy_resultsfleet_list_softwarefleet_get_softwarefleet_get_host_softwarefleet_get_vulnerabilitiesfleet_get_cvefleet_search_softwarefleet_find_software_on_hostfleet_get_software_install_resultfleet_list_software_titlesfleet_get_software_titlefleet_list_teamsfleet_get_teamfleet_list_team_usersfleet_get_team_secretsfleet_list_usersfleet_get_userfleet_list_user_sessionsfleet_get_sessionfleet_list_labelsfleet_get_labelfleet_list_packsfleet_get_packfleet_list_scheduled_queriesfleet_list_scriptsfleet_get_scriptfleet_get_script_resultfleet_list_batch_scriptsfleet_get_batch_scriptfleet_list_batch_script_hostsfleet_list_host_scriptsfleet_list_mdm_commandsfleet_get_mdm_command_resultsfleet_list_mdm_profilesfleet_get_host_mdm_profilesfleet_get_mdm_profiles_summaryfleet_get_filevault_summaryfleet_list_mdm_devicesfleet_get_bootstrap_metadatafleet_get_bootstrap_summaryfleet_get_setup_assistantfleet_list_mdm_apple_installersfleet_list_app_store_appsfleet_list_vpp_tokensfleet_get_configfleet_get_enroll_secretsfleet_get_certificatefleet_get_versionfleet_list_secretsfleet_list_invitesfleet_verify_invitefleet_list_carvesfleet_get_carvefleet_get_carve_blockfleet_get_device_infofleet_list_activitiesfleet_list_osquery_tablesfleet_get_osquery_table_schemafleet_suggest_tables_for_queryfleet_health_checkfleet_delete_hostfleet_transfer_hostsfleet_query_hostfleet_query_host_by_identifierfleet_cancel_host_activityfleet_lock_hostfleet_unlock_hostfleet_unenroll_host_mdmfleet_add_labels_to_hostfleet_remove_labels_from_hostfleet_refetch_hostfleet_create_queryfleet_delete_queryfleet_run_live_query_with_resultsfleet_run_saved_queryfleet_create_policyfleet_update_policyfleet_delete_policyfleet_install_softwarefleet_batch_set_softwarefleet_create_teamfleet_add_team_usersfleet_remove_team_userfleet_create_userfleet_update_userfleet_delete_sessionfleet_delete_user_sessionsfleet_create_labelfleet_update_labelfleet_delete_labelfleet_create_packfleet_update_packfleet_delete_packfleet_run_scriptfleet_run_batch_scriptfleet_cancel_batch_scriptfleet_create_scriptfleet_modify_scriptfleet_delete_scriptfleet_upload_mdm_profilefleet_delete_mdm_profilefleet_lock_devicefleet_upload_bootstrap_packagefleet_delete_bootstrap_packagefleet_create_setup_assistantfleet_delete_setup_assistantfleet_upload_mdm_apple_installerfleet_add_app_store_appfleet_update_app_store_appfleet_delete_vpp_tokenfleet_update_configfleet_update_enroll_secretsfleet_create_secretfleet_delete_secretfleet_create_invitefleet_update_invitefleet_delete_inviteBEFORE YOU INSTALL
What to know first
Tools you get
132 tools named in the project's documentation.
Requires
- uvx on PATH
- FLEET_API_TOKEN in your environment
- FLEET_SERVER_URL in your environment
INSTALLATION
Connect your client
Server setup
uvx fleet-mcp runMCP Clients
Continue
{
"mcpServers": [
{
"name": "fleet",
"command": "uvx",
"args": [
"fleet-mcp",
"run"
],
"env": {
"FLEET_SERVER_URL": "<YOUR_FLEET_SERVER_URL>",
"FLEET_API_TOKEN": "<YOUR_FLEET_API_TOKEN>",
"FLEET_READONLY": "true",
"FLEET_ALLOW_SELECT_QUERIES": "true"
}
}
]
}Zed
{
"context_servers": {
"fleet": {
"command": {
"path": "uvx",
"args": [
"fleet-mcp",
"run"
]
},
"settings": {
"env": {
"FLEET_SERVER_URL": "<YOUR_FLEET_SERVER_URL>",
"FLEET_API_TOKEN": "<YOUR_FLEET_API_TOKEN>",
"FLEET_READONLY": "true",
"FLEET_ALLOW_SELECT_QUERIES": "true"
}
}
}
}
}VS Code
{
"servers": {
"fleet": {
"type": "stdio",
"command": "uvx",
"args": [
"fleet-mcp",
"run"
],
"env": {
"FLEET_SERVER_URL": "<YOUR_FLEET_SERVER_URL>",
"FLEET_API_TOKEN": "<YOUR_FLEET_API_TOKEN>",
"FLEET_READONLY": "true",
"FLEET_ALLOW_SELECT_QUERIES": "true"
}
}
}
}Augment Code
{
"augment.advanced": {
"mcpServers": [
{
"name": "fleet",
"command": "uvx",
"args": [
"fleet-mcp",
"run"
],
"env": {
"FLEET_SERVER_URL": "<YOUR_FLEET_SERVER_URL>",
"FLEET_API_TOKEN": "<YOUR_FLEET_API_TOKEN>",
"FLEET_READONLY": "true",
"FLEET_ALLOW_SELECT_QUERIES": "true"
}
}
]
}
}