概述
安装
工具列表
内容详情
替代品
什么是Fleet MCP?
Fleet MCP是一个连接AI助手(如Claude、Cursor等)与Fleet设备管理平台的桥梁。它允许您通过自然语言对话来管理您的设备群,无需手动登录Fleet控制台或编写复杂命令。 Fleet是一个开源的设备管理平台,用于管理macOS、Windows、Linux和ChromeOS设备。通过Fleet MCP,您的AI助手可以: - 查看所有设备的状态和信息 - 检查设备安全合规性 - 查询软件安装情况 - 运行安全检查命令 - 监控设备活动如何使用Fleet MCP?
使用Fleet MCP非常简单,只需三个步骤: 1. 在您的AI客户端(如Claude Desktop)中配置Fleet MCP连接 2. 提供您的Fleet服务器地址和API密钥 3. 开始通过对话管理您的设备 配置完成后,您可以直接问AI助手:"显示所有Mac设备的列表"或"哪些设备没有安装最新的安全更新?"适用场景
Fleet MCP特别适合以下场景: - IT管理员需要快速检查设备状态 - 安全团队需要监控设备合规性 - 技术支持需要远程诊断设备问题 - 团队领导需要了解团队设备使用情况 - 开发人员需要确保开发环境符合安全标准主要功能
如何使用
使用案例
常见问题
相关资源
安装
{
"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"
}
}
}
}
{
"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"
}
}
]
}
"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"
}
}
]
}🚀 Fleet MCP
Fleet MCP 是一个模型上下文协议(MCP)服务器,它能让 AI 助手与 Fleet 设备管理 进行交互,以实现设备管理、安全监控和合规性执行等功能。
🚀 快速开始
如果您想立即开始使用,以下配置会为您设置具有只读访问权限并启用 SELECT 查询执行的 fleet-mcp。只需将 FLEET_SERVER_URL 和 FLEET_API_TOKEN 替换为您自己的信息即可。
{
"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"
}
}
}
}
完整的工具列表请查看下面的 可用工具 部分。
✨ 主要特性
- 主机管理:列出、搜索、查询和管理您的设备群中的主机。
- 实时查询执行:针对主机实时运行 osquery 查询。
- 策略管理:创建、更新和监控合规性策略。
- 软件清单:跟踪设备上的软件安装情况和漏洞信息。
- 团队与用户管理:将主机和用户组织成团队。
- osquery 表发现:动态发现和记录 osquery 表。
- 只读模式:通过可选的仅 SELECT 查询执行进行安全探索。
- 活动监控:跟踪 Fleet 活动和审计日志。
📦 安装指南
前提条件
在配置任何 MCP 客户端之前,请确保您具备以下条件:
- 安装
uv(推荐)或pip:# 安装 uv(推荐) curl -LsSf https://astral.sh/uv/install.sh | sh # 或者使用 pip pip install fleet-mcp - Fleet API 令牌:从您的 Fleet 实例生成一个 API 令牌:
- 选项 1:
- 登录到 Fleet UI。
- 导航到:我的账户 → 获取 API 令牌。
- 复制令牌用于配置。
- 选项 2:
- 使用
fleetctl创建一个仅 API 用户:
# 生成一个仅 API 用户并获取令牌 fleetctl user create --name Fleet-MCP --email <email> --password <password> --role admin --api-only - 使用
注意:此 API 令牌和您的 Fleet 实例 URL(https://your-fleet-instance.com)将用于客户端配置。
- 选项 1:
- 选择您的客户端:选择您首选的 AI 助手客户端,并按照下面相应的设置说明进行操作。
不同客户端的安装配置
在 Claude Desktop 中安装
配置文件位置
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.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"
}
}
}
}
注意:如果您已全局安装该软件包,请将
uvx替换为fleet-mcp。为增强安全性,请使用--config标志引用 TOML 文件,而不是嵌入令牌(请参阅 安全最佳实践)。
在 Cursor 中安装
转到:设置 → Cursor 设置 → MCP → 添加新的全局 MCP 服务器。
可以全局安装在 ~/.cursor/mcp.json 中,也可以按项目安装在 .cursor/mcp.json 中。更多信息请参阅 Cursor MCP 文档。
{
"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"
}
}
}
}
在 Cline(VS Code 扩展)中安装
配置位置:~/.cline/mcp_settings.json(macOS/Linux)或 %USERPROFILE%\.cline\mcp_settings.json(Windows)。
或者:VS Code 设置 → 搜索 “Cline: MCP 设置” → 编辑 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"
}
}
}
}
在 Continue(VS Code 扩展)中安装
配置位置:~/.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"
}
}
]
}
在 Zed 编辑器中安装
配置位置:~/.config/zed/settings.json(macOS/Linux)或 %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"
}
}
}
}
}
在 Windsurf 中安装
更多信息请参阅 Windsurf MCP 文档。
{
"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"
}
}
}
}
在 VS Code 中安装
更多信息请参阅 VS Code MCP 文档。
"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"
}
}
}
}
在 Sourcegraph Cody 中安装
配置位置:~/Library/Application Support/Cody/mcp_settings.json(macOS)、%APPDATA%\Cody\mcp_settings.json(Windows)或 ~/.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"
}
}
}
}
在 Augment Code 中安装
通过 UI:汉堡菜单 → 设置 → 工具 → + 添加 MCP → 输入 uvx fleet-mcp run → 名称:“Fleet” → 添加。
手动配置:设置 → 高级 → 编辑 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"
}
}
]
}
在 LM Studio 中安装
导航到 程序 → 安装 → 编辑 mcp.json。更多信息请参阅 LM Studio MCP 支持。
{
"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"
}
}
}
}
通用 MCP 客户端配置
对于其他兼容 MCP 的客户端,请使用以下通用模式:
{
"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"
}
}
}
}
配置选项参考
| 环境变量 | 描述 | 默认值 | 是否必需 |
|---|---|---|---|
FLEET_SERVER_URL |
Fleet 服务器 URL | - | ✅ |
FLEET_API_TOKEN |
Fleet API 令牌 | - | ✅ |
FLEET_READONLY |
启用只读模式 | true |
❌ |
FLEET_ALLOW_SELECT_QUERIES |
在只读模式下允许 SELECT 查询 | false |
❌ |
FLEET_VERIFY_SSL |
验证 SSL 证书 | true |
❌ |
FLEET_TIMEOUT |
请求超时时间(秒) | 30 |
❌ |
FLEET_MAX_RETRIES |
最大请求重试次数 | 3 |
❌ |
注意:上述所有客户端都使用相同的环境变量。如果已全局安装,请将
uvx替换为fleet-mcp。
安全最佳实践
- 使用配置文件:将令牌存储在 TOML 文件中:
"args": ["fleet-mcp", "--config", "~/.config/fleet-mcp.toml", "run"] - 文件权限:
chmod 600 ~/.config/fleet-mcp.toml - 只读模式:从
FLEET_READONLY=true(默认)开始。 - 令牌轮换:定期轮换 Fleet API 令牌。
- 特定环境配置:为开发/生产环境使用单独的配置文件。
💻 使用示例
示例 1:列出所有团队
# 在 Claude Desktop 或任何 MCP 客户端中
"List all teams in Fleet"
示例 2:查找主机上的软件
"What version of Chrome is installed on host-123?"
示例 3:运行查询
# 当 allow_select_queries=true 时
"Run a query to find all processes listening on port 80"
示例 4:检查合规性
"Show me which hosts are failing the disk encryption policy"
示例 5:发现 osquery 表
"What osquery tables are available for monitoring network connections?"
📚 详细文档
可用工具
Fleet MCP 提供的工具根据操作模式分为两个主要组。点击展开每个组。
只读工具(始终可用)
这些工具在所有模式(readonly=true 或 readonly=false)下都可用。它们仅读取数据,从不修改 Fleet 状态。
主机管理
fleet_list_hosts- 列出主机,并支持过滤、分页和搜索。fleet_get_host- 通过 ID 获取特定主机的详细信息。fleet_get_host_by_identifier- 通过主机名、UUID 或硬件序列号获取主机。fleet_search_hosts- 通过主机名、UUID、序列号或 IP 搜索主机。fleet_list_host_upcoming_activities- 列出特定主机的即将进行的活动。fleet_list_host_past_activities- 列出特定主机的过去活动。fleet_get_host_mdm- 获取特定主机的 MDM 信息。fleet_list_host_certificates- 列出特定主机的证书。fleet_get_host_macadmins- 获取主机的 macadmins 数据(Munki、MDM 配置文件)。fleet_get_host_device_mapping- 获取主机的设备映射信息。fleet_get_host_encryption_key- 获取主机的磁盘加密恢复密钥。
查询管理
fleet_list_queries- 分页列出所有保存的查询。fleet_get_query- 获取特定保存查询的详细信息。fleet_get_query_report- 获取计划查询的最新结果。
策略管理
fleet_list_policies- 列出所有合规性策略。fleet_get_policy_results- 获取特定策略的合规性结果。
软件与漏洞管理
fleet_list_software- 列出设备群中的软件清单。fleet_get_software- 获取特定软件项的详细信息。fleet_get_host_software- 获取特定主机上安装的软件。fleet_get_vulnerabilities- 列出已知漏洞,并支持过滤。fleet_get_cve- 获取特定 CVE 的详细信息。fleet_search_software- 按名称搜索软件。fleet_find_software_on_host- 通过主机名在主机上查找特定软件。fleet_get_software_install_result- 获取软件安装请求的结果。fleet_list_software_titles- 列出设备群中的软件标题。fleet_get_software_title- 获取特定软件标题的详细信息。
团队管理
fleet_list_teams- 列出所有团队。fleet_get_team- 获取特定团队的详细信息。fleet_list_team_users- 列出特定团队的所有用户成员。fleet_get_team_secrets- 列出团队特定的注册密钥。
用户管理
fleet_list_users- 列出所有用户,并支持过滤。fleet_get_user- 获取特定用户的详细信息。fleet_list_user_sessions- 列出用户的活动会话。fleet_get_session- 通过 ID 获取会话详细信息。
标签管理
fleet_list_labels- 列出所有标签。fleet_get_label- 获取特定标签的详细信息。
包管理
fleet_list_packs- 列出所有查询包。fleet_get_pack- 获取特定包的详细信息。fleet_list_scheduled_queries- 列出特定包中的计划查询。
脚本管理
fleet_list_scripts- 列出 Fleet 中可用的所有脚本。fleet_get_script- 获取特定脚本的详细信息。fleet_get_script_result- 获取脚本执行的结果。fleet_list_batch_scripts- 列出批量脚本执行情况。fleet_get_batch_script- 获取批量脚本执行的详细信息。fleet_list_batch_script_hosts- 列出批量脚本执行中的主机。fleet_list_host_scripts- 列出特定主机可用的脚本。
MDM 管理
fleet_list_mdm_commands- 列出已执行的 MDM 命令。fleet_get_mdm_command_results- 获取 MDM 命令的结果。fleet_list_mdm_profiles- 列出 MDM 配置文件。fleet_get_host_mdm_profiles- 获取特定主机上安装的 MDM 配置文件。fleet_get_mdm_profiles_summary- 获取 MDM 配置文件部署状态的摘要。fleet_get_filevault_summary- 获取 FileVault 加密摘要。fleet_list_mdm_devices- 列出所有已注册 MDM 的 Apple 设备。fleet_get_bootstrap_metadata- 获取团队的引导包元数据。fleet_get_bootstrap_summary- 获取引导包部署的汇总摘要。fleet_get_setup_assistant- 获取 MDM Apple 设置助手配置。fleet_list_mdm_apple_installers- 列出所有 Apple MDM 安装程序。
VPP/应用商店管理
fleet_list_app_store_apps- 列出可用于安装的应用商店应用。fleet_list_vpp_tokens- 列出 Fleet 中配置的 VPP 令牌。
配置管理
fleet_get_config- 获取当前 Fleet 应用程序配置。fleet_get_enroll_secrets- 获取注册密钥配置。fleet_get_certificate- 获取 Fleet 服务器证书链。fleet_get_version- 获取 Fleet 服务器版本信息。
秘密管理
fleet_list_secrets- 列出 Fleet 中的秘密变量。
邀请管理
fleet_list_invites- 列出待处理的用户邀请。fleet_verify_invite- 验证邀请令牌并获取邀请详细信息。
数据雕刻管理
fleet_list_carves- 列出文件雕刻会话。fleet_get_carve- 获取特定雕刻会话的详细信息。fleet_get_carve_block- 从雕刻会话中获取特定数据块。
设备管理
fleet_get_device_info- 使用设备令牌获取设备信息。
活动监控
fleet_list_activities- 列出 Fleet 活动和审计日志。
osquery 表发现与参考
fleet_list_osquery_tables- 动态发现并列出可用的 osquery 表。fleet_get_osquery_table_schema- 获取特定表的详细架构。fleet_suggest_tables_for_query- 根据意图获取 AI 驱动的表建议。
系统
fleet_health_check- 检查 Fleet 服务器的连接性和身份验证。
写入/修改工具(需要 `readonly=false`)
这些工具可以修改 Fleet 状态,仅在配置中设置 readonly=false 时可用。除了只读工具的功能外,还允许您对 Fleet 环境进行更改,例如创建脚本、策略、管理团队等。将 readonly 设置为 true(默认)将禁用这些工具。
主机管理
fleet_delete_host- 从 Fleet 中移除主机。fleet_transfer_hosts- 将主机转移到不同的团队。fleet_query_host- 针对特定主机运行临时实时查询。fleet_query_host_by_identifier- 通过主机名/UUID/序列号运行实时查询。fleet_cancel_host_activity- 取消特定主机的即将进行的活动。fleet_lock_host- 远程锁定主机设备。fleet_unlock_host- 远程解锁主机设备。fleet_unenroll_host_mdm- 取消主机的 MDM 注册。fleet_add_labels_to_host- 为主机添加标签。fleet_remove_labels_from_host- 从主机移除标签。fleet_refetch_host- 强制主机立即重新获取并更新其数据。
查询管理
fleet_create_query- 创建新的保存查询。fleet_delete_query- 删除保存的查询。fleet_run_live_query_with_results- 执行实时查询并收集结果。fleet_run_saved_query- 针对主机运行保存的查询。
策略管理
fleet_create_policy- 创建新的合规性策略。fleet_update_policy- 更新现有策略。fleet_delete_policy- 删除策略。
软件管理
fleet_install_software- 在特定主机上安装软件。fleet_batch_set_software- 为团队批量上传/设置软件安装程序。
团队管理
fleet_create_team- 创建新团队。fleet_add_team_users- 将一个或多个用户添加到特定团队。fleet_remove_team_user- 从团队中移除特定用户。
用户管理
fleet_create_user- 创建新用户。fleet_update_user- 更新现有用户。fleet_delete_session- 删除/使特定会话无效。fleet_delete_user_sessions- 删除特定用户的所有会话。
标签管理
fleet_create_label- 创建新标签。fleet_update_label- 更新现有标签。fleet_delete_label- 按名称删除标签。
包管理
fleet_create_pack- 创建新的查询包。fleet_update_pack- 更新现有包。fleet_delete_pack- 按名称删除包。
脚本管理
fleet_run_script- 在特定主机上运行脚本。fleet_run_batch_script- 在多个主机上运行脚本。fleet_cancel_batch_script- 取消批量脚本执行。fleet_create_script- 创建并上传新脚本。fleet_modify_script- 修改现有脚本。fleet_delete_script- 删除脚本。
MDM 管理
fleet_upload_mdm_profile- 上传新的 MDM 配置文件。fleet_delete_mdm_profile- 删除 MDM 配置文件。fleet_lock_device- 远程锁定已注册 MDM 的设备。fleet_upload_bootstrap_package- 上传用于 MDM 注册的引导包。fleet_delete_bootstrap_package- 删除团队的引导包。fleet_create_setup_assistant- 创建或更新 MDM Apple 设置助手。fleet_delete_setup_assistant- 删除 MDM Apple 设置助手。fleet_upload_mdm_apple_installer- 上传新的 Apple MDM 安装程序包。 注意:擦除设备工具目前已禁用,因为它太危险。如果确实需要,可能会在以后重新考虑。
VPP/应用商店管理
fleet_add_app_store_app- 添加用于分发的应用商店应用。fleet_update_app_store_app- 更新应用商店应用设置。fleet_delete_vpp_token- 删除 VPP 令牌。
配置管理
fleet_update_config- 更新 Fleet 应用程序配置。fleet_update_enroll_secrets- 更新注册密钥配置。
秘密管理
fleet_create_secret- 创建新的秘密变量。fleet_delete_secret- 按 ID 删除秘密变量。
邀请管理
fleet_create_invite- 创建新的用户邀请。fleet_update_invite- 更新待处理的邀请。fleet_delete_invite- 删除待处理的邀请。
配置方式
Fleet MCP 支持三种配置方法(按优先级排序):
- 命令行参数(最高优先级)
- 环境变量(以
FLEET_为前缀) - 配置文件(推荐用于安全)
配置文件(推荐)
创建 fleet-mcp.toml:
[fleet]
server_url = "https://your-fleet-instance.com" # 必需
api_token = "your-api-token" # 必需
verify_ssl = true # 默认值: true
timeout = 30 # 默认值: 30 秒
max_retries = 3 # 默认值: 3
readonly = true # 默认值: true
allow_select_queries = false # 默认值: false
环境变量
所有可用变量请参阅 配置选项参考。环境变量使用 FLEET_ 前缀,并会覆盖配置文件设置。
命令行参数
fleet-mcp --server-url https://fleet.example.com --api-token YOUR_TOKEN run
选项:--config、--server-url、--api-token、--readonly、--verbose
只读模式
Fleet MCP 默认以 只读模式 运行,以确保安全探索,避免意外更改。
三种操作模式
| 模式 | 配置 | 功能 | 适用场景 |
|---|---|---|---|
| 严格只读(默认) | readonly=trueallow_select_queries=false |
✅ 查看所有资源 ❌ 不执行查询 ❌ 不进行修改 |
安全探索 |
| 只读 + SELECT | readonly=trueallow_select_queries=true |
✅ 查看所有资源 ✅ 运行 SELECT 查询 ❌ 不进行修改 |
主动监控 |
| 完全写入 | readonly=false |
✅ 所有操作 ⚠️ AI 可以修改 Fleet |
全面管理 |
配置示例
# 严格只读(默认)
[fleet]
readonly = true
allow_select_queries = false
# 只读并允许 SELECT 查询
[fleet]
readonly = true
allow_select_queries = true
# 完全写入访问(⚠️ 谨慎使用) - 建议在进行更改前让大语言模型提示确认
[fleet]
readonly = false
CLI 命令
| 命令 | 描述 | 示例 |
|---|---|---|
run |
启动 MCP 服务器 | fleet-mcp run |
test |
测试 Fleet 连接 | fleet-mcp test |
init-config |
创建配置模板 | fleet-mcp init-config |
version |
显示版本 | fleet-mcp version |
全局选项:--config、--verbose、--server-url、--api-token、--readonly
🔧 技术细节
开发设置
本项目使用 uv 进行依赖管理。
设置
git clone https://github.com/SimplyMinimal/fleet-mcp.git
cd fleet-mcp
uv sync --dev
常见任务
| 任务 | 命令 |
|---|---|
| 运行测试 | uv run pytest |
| 格式化代码 | uv run black src tests && uv run isort src tests |
| 类型检查 | uv run mypy src |
| 代码检查 | uv run ruff check src tests |
| 添加依赖 | uv add package-name |
| 添加开发依赖 | uv add --group dev package-name |
项目结构
src/fleet_mcp/
├── cli.py # 命令行界面
├── client.py # Fleet API 客户端
├── config.py # 配置管理
├── server.py # MCP 服务器实现
├── tools/ # MCP 工具实现
└── utils/ # 实用工具(SQL 验证器等)
故障排除
服务器未在客户端中显示
1. 验证配置文件中的 JSON 语法。 2. 重启 MCP 客户端。 3. 检查客户端日志以查找错误。 4. 验证 `uvx` 或 `fleet-mcp` 是否在 PATH 中:`which uvx`。连接错误
1. 手动测试:`uvx fleet-mcp test`。 2. 验证 `FLEET_SERVER_URL` 是否可访问。 3. 检查 `FLEET_API_TOKEN` 是否有效。 4. 对于自签名证书:`FLEET_VERIFY_SSL=false`。身份验证失败(401)
1. 验证 API 令牌是否正确。 2. 检查令牌是否未过期。 3. 确保令牌具有适当的权限。 4. 生成新令牌:Fleet UI → 我的账户 → 获取 API 令牌。查询验证失败
1. 设置 `FLEET_ALLOW_SELECT_QUERIES=true`。 2. 确保查询仅为 SELECT 语句(无 INSERT、UPDATE、DELETE 等)。 3. 验证 osquery SQL 语法是否有效。工具不可用
- 写入操作需要 `FLEET_READONLY=false`。 - 查询执行需要 `FLEET_ALLOW_SELECT_QUERIES=true`。 - 检查当前模式下工具的可用性。📄 许可证
Fleet MCP 是开源软件,根据 MIT 许可证 授权。 您可以自由使用、修改和分发此软件,包括用于商业用途,但需遵守 MIT 许可证的条款。
免责声明
本项目与 Fleet DM 没有关联,也未得到其认可。它是一个独立实现的模型上下文协议,用于与 Fleet 实例进行交互。
替代品










