
Fleet Mcp
io.github.SimplyMinimal由 GitHub 账号 SimplyMinimal 发布v1.1.3更新于 Oct 25, 2026
An MCP server that provides tools for managing and monitoring your Fleet Device Management instance.
概览
一个本地 MCP 服务器,让 AI 助手读取并按需修改 Fleet 设备管理实例中的主机、查询、策略、软件与 MDM 信息。
- 可以做什么
- 列出、搜索并查看主机详情,包括 MDM、证书、加密密钥与活动记录,以及团队、用户、标签、邀请,并读取 Fleet 配置、密钥与审计日志。浏览已保存查询、查询包、计划查询与查询报告,并发现 osquery 表及其结构。查看合规策略与结果、软件清单、软件标题及已知漏洞与 CVE 详情。查看脚本、批量脚本执行、MDM 命令、配置描述文件、Apple 安装包、App Store 应用与 VPP 令牌,并检查服务器健康状态。启用写入模式后,可创建、更新和删除查询、策略、标签、查询包、脚本、用户、团队、邀请与密钥,运行实时查询和脚本,安装软件,远程锁定设备并修改配置。
- 适用场景
- 适合管理 Fleet 实例的人员,让助手回答设备清单、合规、漏洞或审计活动相关问题,或在不打开网页界面的情况下完成日常 Fleet 变更。
- 运行要求
- 以 Python 包(fleet-mcp,通过 uvx 或 pip 启动)在本地运行。需要可访问的 Fleet 服务器地址(FLEET_SERVER_URL)和 Fleet API 令牌(FLEET_API_TOKEN),也可通过 TOML 配置文件或命令行参数提供。需要能访问 Fleet 实例的网络。
安装
在 SourceWeft 中
- 打开 控制台中的 Fleet Mcp,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Fleet MCP
A Model Context Protocol (MCP) server that enables AI assistants to interact with Fleet Device Management for device management, security monitoring, and compliance enforcement.
Demo
📸 Show/Hide Demo Screenshots
[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]
Features
- Host Management: List, search, query, and manage hosts across your fleet
- Live Query Execution: Run osquery queries in real-time against hosts
- Policy Management: Create, update, and monitor compliance policies
- Software Inventory: Track software installations and vulnerabilities across devices
- Team & User Management: Organize hosts and users into teams
- Osquery Table Discovery: Dynamic discovery and documentation of osquery tables
- Read-Only Mode: Safe exploration with optional SELECT-only query execution
- Activity Monitoring: Track Fleet activities and audit logs
Quick Start
Just want to dive right in? This will set up fleet-mcp with read-only access and SELECT query execution enabled. Just replace the FLEET_SERVER_URL and FLEET_API_TOKEN with your own.
See the Available Tools section below for a complete list of tools.
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:
-
Install
uv(recommended) orpip: -
Fleet API Token: Generate an API token from your Fleet instance: Option 1)
- Log into Fleet UI
- Navigate to: My account → Get API token
- Copy the token for use in configuration
Option 2)
- Create an API-Only user with
fleetctl
Note: This API token and your fleet instance URL (https://your-fleet-instance.com) will be used in the client configuration.
-
Pick Your Client: Choose your preferred AI assistant client and follow the corresponding setup instructions below.
Install in Claude Desktop
Configuration File Location
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Configuration
Note: Replace
uvxwithfleet-mcpif you've installed the package globally. For enhanced security, use--configflag to reference a TOML file instead of embedding tokens (see Security Best Practices).
Install in Cursor
Go to: Settings → Cursor Settings → MCP → Add new global MCP server
Install globally in ~/.cursor/mcp.json or per-project in .cursor/mcp.json. See Cursor MCP docs for more info.
Install in Cline (VS Code Extension)
Config Location: ~/.cline/mcp_settings.json (macOS/Linux) or %USERPROFILE%\.cline\mcp_settings.json (Windows)
Alternatively: VS Code Settings → Search "Cline: MCP Settings" → Edit JSON
Install in Continue (VS Code Extension)
Config Location: ~/.continue/config.json
Install in Zed Editor
Config Location: ~/.config/zed/settings.json (macOS/Linux) or %APPDATA%\Zed\settings.json (Windows)
Install in Windsurf
See Windsurf MCP docs for more info.
Install in VS Code
See VS Code MCP docs for more info.
Install in Sourcegraph Cody
Config Location: ~/Library/Application Support/Cody/mcp_settings.json (macOS), %APPDATA%\Cody\mcp_settings.json (Windows), or ~/.config/Cody/mcp_settings.json (Linux)
Install in Augment Code
Via UI: Hamburger menu → Settings → Tools → + Add MCP → Enter uvx fleet-mcp run → Name: "Fleet" → Add
Manual Config: Settings → Advanced → Edit settings.json
Install in LM Studio
Navigate to Program → Install → Edit mcp.json. See LM Studio MCP Support.
Generic MCP Client Configuration
For other MCP-compatible clients, use this general pattern:
Configuration Options Reference
Note: All clients above use the same environment variables. Replace
uvxwithfleet-mcpif installed globally.
Security Best Practices
- Use Config Files: Store tokens in TOML files:
"args": ["fleet-mcp", "--config", "~/.config/fleet-mcp.toml", "run"] - File Permissions:
chmod 600 ~/.config/fleet-mcp.toml - Read-Only Mode: Start with
FLEET_READONLY=true(default) - Token Rotation: Regularly rotate Fleet API tokens
- Environment-Specific Configs: Use separate configs for dev/prod
Available Tools
Fleet MCP provides tools organized into two main groups based on operational mode. Click to expand each group.
Read-Only Tools (Always Available)
These tools are available in all modes (readonly=true or readonly=false). They only read data and never modify Fleet state.
Host Management
fleet_list_hosts- List hosts with filtering, pagination, and searchfleet_get_host- Get detailed information about a specific host by IDfleet_get_host_by_identifier- Get host by hostname, UUID, or hardware serialfleet_search_hosts- Search hosts by hostname, UUID, serial number, or IPfleet_list_host_upcoming_activities- List upcoming activities for a specific hostfleet_list_host_past_activities- List past activities for a specific hostfleet_get_host_mdm- Get MDM information for a specific hostfleet_list_host_certificates- List certificates for a specific hostfleet_get_host_macadmins- Get macadmins data (Munki, MDM profiles) for a hostfleet_get_host_device_mapping- Get device mapping information for a hostfleet_get_host_encryption_key- Get disk encryption recovery key for a host
Query Management
fleet_list_queries- List all saved queries with paginationfleet_get_query- Get details of a specific saved queryfleet_get_query_report- Get the latest results from a scheduled query
Policy Management
fleet_list_policies- List all compliance policiesfleet_get_policy_results- Get compliance results for a specific policy
Software & Vulnerabilities
fleet_list_software- List software inventory across the fleetfleet_get_software- Get detailed information about a specific software itemfleet_get_host_software- Get software installed on a specific hostfleet_get_vulnerabilities- List known vulnerabilities with filteringfleet_get_cve- Get detailed information about a specific CVEfleet_search_software- Search for software by namefleet_find_software_on_host- Find specific software on a host by hostnamefleet_get_software_install_result- Get the result of a software installation requestfleet_list_software_titles- List software titles across the fleetfleet_get_software_title- Get detailed information about a specific software title
Team Management
fleet_list_teams- List all teamsfleet_get_team- Get details of a specific teamfleet_list_team_users- List all users that are members of a specific teamfleet_get_team_secrets- List team-specific enroll secrets
User Management
fleet_list_users- List all users with filteringfleet_get_user- Get details of a specific userfleet_list_user_sessions- List active sessions for a userfleet_get_session- Get session details by ID
Label Management
fleet_list_labels- List all labelsfleet_get_label- Get detailed information about a specific label
Pack Management
fleet_list_packs- List all query packsfleet_get_pack- Get detailed information about a specific packfleet_list_scheduled_queries- List scheduled queries in a specific pack
Script Management
fleet_list_scripts- List all scripts available in Fleetfleet_get_script- Get details of a specific scriptfleet_get_script_result- Get the result of a script executionfleet_list_batch_scripts- List batch script executionsfleet_get_batch_script- Get details of a batch script executionfleet_list_batch_script_hosts- List hosts in a batch script executionfleet_list_host_scripts- List scripts available for a specific host
MDM Management
fleet_list_mdm_commands- List MDM commands that have been executedfleet_get_mdm_command_results- Get results of MDM commandsfleet_list_mdm_profiles- List MDM configuration profilesfleet_get_host_mdm_profiles- Get MDM profiles installed on a specific hostfleet_get_mdm_profiles_summary- Get summary of MDM profile deployment statusfleet_get_filevault_summary- Get FileVault encryption summaryfleet_list_mdm_devices- List all MDM-enrolled Apple devicesfleet_get_bootstrap_metadata- Get metadata about a bootstrap package for a teamfleet_get_bootstrap_summary- Get aggregated summary about bootstrap package deploymentfleet_get_setup_assistant- Get the MDM Apple Setup Assistant configurationfleet_list_mdm_apple_installers- List all Apple MDM installers
VPP/App Store Management
fleet_list_app_store_apps- List App Store apps available for installationfleet_list_vpp_tokens- List VPP tokens configured in Fleet
Configuration Management
fleet_get_config- Get the current Fleet application configurationfleet_get_enroll_secrets- Get the enrollment secrets configurationfleet_get_certificate- Get the Fleet server certificate chainfleet_get_version- Get the Fleet server version information
Secret Management
fleet_list_secrets- List secret variables in Fleet
Invite Management
fleet_list_invites- List pending user invitesfleet_verify_invite- Verify an invite token and get invite details
Carve Management
fleet_list_carves- List file carve sessionsfleet_get_carve- Get detailed information about a specific carve sessionfleet_get_carve_block- Get a specific block of data from a carve session
Device Management
fleet_get_device_info- Get device information using a device token
Activity Monitoring
fleet_list_activities- List Fleet activities and audit logs
Osquery Table Discovery & Reference
fleet_list_osquery_tables- List available osquery tables with dynamic discoveryfleet_get_osquery_table_schema- Get detailed schema for a specific tablefleet_suggest_tables_for_query- Get AI-powered table suggestions based on intent
System
fleet_health_check- Check Fleet server connectivity and authentication
Write/Modify Tools (Requires readonly=false)
These tools can modify Fleet state and are only available when readonly=false is set in the configuration. This will allow you to make changes to your Fleet environment such as creating scripts, policies, managing teams, etc. in addition to the read-only tools. Setting to readonly=true (default) will disable these tools.
Host Management
fleet_delete_host- Remove a host from Fleetfleet_transfer_hosts- Transfer hosts to a different teamfleet_query_host- Run an ad-hoc live query against a specific hostfleet_query_host_by_identifier- Run a live query by hostname/UUID/serialfleet_cancel_host_activity- Cancel an upcoming activity for a specific hostfleet_lock_host- Lock a host device remotelyfleet_unlock_host- Unlock a host device remotelyfleet_unenroll_host_mdm- Unenroll a host from MDMfleet_add_labels_to_host- Add labels to a hostfleet_remove_labels_from_host- Remove labels from a hostfleet_refetch_host- Force a host to refetch and update its data immediately
Query Management
fleet_create_query- Create a new saved queryfleet_delete_query- Delete a saved queryfleet_run_live_query_with_results- Execute a live query and collect resultsfleet_run_saved_query- Run a saved query against hosts
Policy Management
fleet_create_policy- Create a new compliance policyfleet_update_policy- Update an existing policyfleet_delete_policy- Delete a policy
Software Management
fleet_install_software- Install software on a specific hostfleet_batch_set_software- Batch upload/set software installers for a team
Team Management
fleet_create_team- Create a new teamfleet_add_team_users- Add one or more users to a specific teamfleet_remove_team_user- Remove a specific user from a team
User Management
fleet_create_user- Create a new userfleet_update_user- Update an existing userfleet_delete_session- Delete/invalidate a specific sessionfleet_delete_user_sessions- Delete all sessions for a specific user
Label Management
fleet_create_label- Create a new labelfleet_update_label- Update an existing labelfleet_delete_label- Delete a label by name
Pack Management
fleet_create_pack- Create a new query packfleet_update_pack- Update an existing packfleet_delete_pack- Delete a pack by name
Script Management
fleet_run_script- Run a script on a specific hostfleet_run_batch_script- Run a script on multiple hostsfleet_cancel_batch_script- Cancel a batch script executionfleet_create_script- Create and upload a new scriptfleet_modify_script- Modify an existing scriptfleet_delete_script- Delete a script
MDM Management
fleet_upload_mdm_profile- Upload a new MDM configuration profilefleet_delete_mdm_profile- Delete an MDM configuration profilefleet_lock_device- Lock an MDM-enrolled device remotelyfleet_upload_bootstrap_package- Upload a bootstrap package for MDM enrollmentfleet_delete_bootstrap_package- Delete a bootstrap package for a teamfleet_create_setup_assistant- Create or update an MDM Apple Setup Assistantfleet_delete_setup_assistant- Delete the MDM Apple Setup Assistantfleet_upload_mdm_apple_installer- Upload a new Apple MDM installer package Note: The wipe device tool is currently disabled as it is too dangerous. It may be revisited later if really needed.
VPP/App Store Management
fleet_add_app_store_app- Add an App Store app for distributionfleet_update_app_store_app- Update App Store app settingsfleet_delete_vpp_token- Delete a VPP token
Configuration Management
fleet_update_config- Update the Fleet application configurationfleet_update_enroll_secrets- Update the enrollment secrets configuration
Secret Management
fleet_create_secret- Create a new secret variablefleet_delete_secret- Delete a secret variable by ID
Invite Management
fleet_create_invite- Create a new user invitefleet_update_invite- Update a pending invitefleet_delete_invite- Delete a pending invite
Configuration
Fleet MCP supports three configuration methods (in order of precedence):
- Command-line arguments (highest priority)
- Environment variables (with
FLEET_prefix) - Configuration file (recommended for security)
Configuration File (Recommended)
Create fleet-mcp.toml:
Environment Variables
See Configuration Options Reference for all available variables. Environment variables use the FLEET_ prefix and override config file settings.
Command-Line Arguments
Options: --config, --server-url, --api-token, --readonly, --verbose
Read-Only Mode
Fleet MCP runs in read-only mode by default for safe exploration without risk of changes.
Three Operational Modes
Configuration Examples
CLI Commands
Global Options: --config, --verbose, --server-url, --api-token, --readonly
Usage Examples
Example 1: List All Teams
Example 2: Find Software on a Host
Example 3: Run a Query
Example 4: Check Compliance
Example 5: Discover Osquery Tables
Development
Development Setup
This project uses uv for dependency management.
Setup
Common Tasks
Project Structure
Troubleshooting
Server Not Appearing in Client
- Validate JSON syntax in config file
- Restart the MCP client
- Check client logs for errors
- Verify
uvxorfleet-mcpis in PATH:which uvx
Connection Errors
- Test manually:
uvx fleet-mcp test - Verify
FLEET_SERVER_URLis accessible - Check
FLEET_API_TOKENis valid - For self-signed certs:
FLEET_VERIFY_SSL=false
Authentication Failed (401)
- Verify API token is correct
- Check token hasn't expired
- Ensure token has appropriate permissions
- Generate new token: Fleet UI → My account → Get API token
Query Validation Failed
- Set
FLEET_ALLOW_SELECT_QUERIES=true - Ensure query is SELECT-only (no INSERT, UPDATE, DELETE, etc.)
- Verify osquery SQL syntax is valid
Tool Not Available
- Write operations require
FLEET_READONLY=false - Query execution requires
FLEET_ALLOW_SELECT_QUERIES=true - Check tool availability in current mode
License
Fleet MCP is open source software licensed under the MIT License.
You are free to use, modify, and distribute this software for any purpose, including commercial use, subject to the terms of the MIT License.
Disclaimer
This project is not affiliated with or endorsed by Fleet DM. It is an independent implementation of the Model Context Protocol for interacting with Fleet instances.
来源:README.md,提交 dbb3d27
工具
0版本历史
1- v1.1.3最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分