Automax MCP服务器
   ](https://badge.fury.io/py/automox-mcp)
Automax的官方MCP服务器。使用自然语言与您的Automax控制台对话——这 MCP服务器 将像Claude这样的人工智能助手连接到您的Automax环境,这样您就可以通过询问来管理设备、检查合规性、运行策略等。
You: "Are we ready for Patch Tuesday?"
Claude: Here's your readiness summary — 3 devices need patches,
2 approvals are pending, and your patch policies run tonight at 2 AM...\[!重要\] 欢迎通过以下方式提交贡献、错误报告和功能请求 以及Autobox社区。
\[!小心\] AI助手可能会犯错。MCP服务器生成的数据可能不正确或不完整。如果你看到这种情况持续发生,请 打开一个问题.
快速开始
1.获取您的Autobox凭据
你需要三个值 自动机控制台:
| 价值 | 在哪里可以找到 |
|---|---|
| API密钥 | 设置>机密和密钥>添加API密钥(文档) |
| 帐户UUID | 设置>密钥和密钥(如页面所示) |
| 组织ID | 查看组织时URL中的数字ID |
全局和组织范围的API密钥都有效。API密钥和帐户UUID总是必需的。建议使用组织ID,但这是可选的——一些不需要组织上下文的工具可以在没有它的情况下工作。
2.创建一个 .env 文件
AUTOMOX_API_KEY=your-api-key
AUTOMOX_ACCOUNT_UUID=your-account-uuid
AUTOMOX_ORG_ID=your-org-id3.连接到您的AI助手
Claude Desktop(推荐)——一键安装MCPB:
- 下载最新
automox-mcp-.mcpb从 . - 打开克劳德桌面→ 设置→ 扩展.
- 拖动
.mcpb将文件放入“扩展”窗口。 - 将您的API密钥、帐户UUID和(可选)组织ID粘贴到提示中。
不 .env 文件,无终端——凭据存储在Claude Desktop的安全配置中。捆包拉匹配 automox-mcp 首次运行时从PyPI中释放。
克劳德代码(CLI):
claude mcp add automox-mcp uvx -- --env-file /path/to/.env automox-mcp光标/任何其他MCP客户端 --添加到您的MCP配置中:
{
"mcpServers": {
"automox-mcp": {
"command": "uvx",
"args": ["--env-file", "/path/to/.env", "automox-mcp"]
}
}
}就是这样。开始问问题。
我能问什么?
该服务器在设备、策略、补丁、组、Webhook、worklet、漏洞同步、维护窗口等方面公开了79个工具。您不需要知道工具名称,只需描述您想要什么:
| 问这个 | 会发生什么 |
|---|---|
| “我们准备好迎接补丁星期二了吗?” | 检查待处理的补丁、批准和策略计划 |
| “我们的合规状况如何?” | 返回合规率、不合规设备和健康状况明细 |
| “给我Caldera服务器的完整配置文件” | 结合设备详细信息、库存、软件包和策略状态 |
| “哪些设备需要注意?” | 显示标记为立即采取行动的设备 |
| “重新启动设备‘测试框’” | 搜索设备并发出重新启动命令 |
| “为Firefox创建针对‘MCP测试’组的补丁策略” | 创建具有合理默认值的策略 |
| “Mark Hansen上周在Automax做了什么?” | 查询整个日期范围内的审计跟踪 |
| “查找30天内看不到的所有Windows设备” | 使用结构化查询的高级设备搜索 |
| “显示漏洞修复状态” | 列出包含问题、解决方案和进度的操作集 |
| “在worklet目录中搜索USB安全” | 使用评估/修复代码浏览社区worklet |
有关工具、参数和MCP资源的完整列表,请参阅 工具参考.
提示: 你也可以问服务器本身—— discover_capabilities 工具返回按域组织的所有可用工具。配置
环境变量
| 变量 | 必填 | 默认 | 描述 |
|---|---|---|---|
AUTOMOX_API_KEY | 是 | - | Automax API密钥 |
AUTOMOX_ACCOUNT_UUID | 是 | -- | 来自密钥和密钥的帐户UUID |
AUTOMOX_ORG_ID | 推荐 | -- | 数字组织ID(大多数工具都需要) |
AUTOMOX_MCP_READ_ONLY | 没有 | false | 禁用所有写入操作(剩余79个工具中的57个) |
AUTOMOX_MCP_MODULES | 否 | 全部 | 要加载的以逗号分隔的模块列表(见下文) |
AUTOMOX_MCP_TOKEN_BUDGET | 没有 | 4000 | 截断前每个响应的最大估计令牌数 |
AUTOMOX_MCP_SANITIZE_RESPONSES | 没有 | true | 对API数据进行消毒,以减少即时注射 |
AUTOMOX_MCP_TOOL_PREFIX | 否 | -- | 在所有工具名称前加前缀(例如。, automox)防止跨服务器冲突 |
AUTOMOX_MCP_LOG_FORMAT | 没有 | text | 日志格式: text 或 json (用于SIEM集成的结构化JSON) |
AUTOMOX_MCP_TRANSPORT | 没有 | stdio | 运输: stdio, http, sse,或 streamable-http |
AUTOMOX_MCP_HOST | 没有 | 127.0.0.1 | HTTP/SSE的绑定地址 |
AUTOMOX_MCP_PORT | 没有 | 8000 | HTTP/SSE的绑定端口 |
AUTOMOX_MCP_API_KEYS | 没有 | - | 用于HTTP/SSE承载令牌认证的通信分离的MCP端点API密钥(例如。, key1,label:key2) |
AUTOMOX_MCP_API_KEY_FILE | 否 | - | 包含MCP端点API密钥的文件的路径(每行一个) |
AUTOMOX_MCP_OAUTH_ISSUER | 没有用于JWT认证的OIDC发行者URL(例如。, https://auth.example.com/realms/main) | ||
AUTOMOX_MCP_OAUTH_JWKS_URI | JWT密钥旋转没有 | -- | JWKS端点(如果省略,则自动从发行者派生) |
AUTOMOX_MCP_OAUTH_AUDIENCE | 当JWT auth | -- | 预期JWT受众声明时(阻止令牌传递); 必需的 当 AUTOMOX_MCP_OAUTH_ISSUER 已设置 |
AUTOMOX_MCP_OAUTH_SERVER_URL | 否 | -- | 规范服务器URL;启用RFC 9728受保护资源元数据 |
AUTOMOX_MCP_OAUTH_SCOPES | 否 | -- | 需要逗号分隔的OAuth作用域 |
AUTOMOX_MCP_ALLOWED_ORIGINS | 没有 | -- | DNS重新绑定保护的额外允许的Origin标头(逗号分隔) |
AUTOMOX_MCP_ALLOWED_HOSTS | 没有 | -- | DNS重新绑定保护允许的额外主机标头(逗号分隔) |
AUTOMOX_MCP_DNS_REBINDING_PROTECTION | 没有 | true | 设置为 false 禁用DNS重新绑定保护(不建议) |
AUTOMOX_MCP_ALLOW_REMOTE_BIND | 没有 | false | 允许绑定到非环回地址(需要 0.0.0.0 或外部IP) |
只读模式
AUTOMOX_MCP_READ_ONLY=true禁用所有写入操作。仅注册只读工具(80个中的58个)。可用于审计和监控。
模块化加载
仅加载所需的工具模块:
AUTOMOX_MCP_MODULES=devices,policies可用模块: audit, audit_v2, devices, device_search, policies, policy_history, users, groups, events, reports, packages, webhooks, worklets, data_extracts, vuln_sync, compound, policy_windows
这两种设置可以组合使用:
AUTOMOX_MCP_READ_ONLY=true
AUTOMOX_MCP_MODULES=devices,policiesHTTP传输
对于非stdio部署:
uvx --env-file .env automox-mcp --transport http --host 127.0.0.1 --port 8000端点身份验证
通过HTTP或SSE部署时,您可以要求在MCP端点上进行身份验证(与Automax API密钥分开)。支持两种策略:
静态API密钥 (简单):
automox-mcp --generate-key # generate a key
export AUTOMOX_MCP_API_KEYS="amx_mcp_a1b2c3..." # or use a key fileOAuth 2.1/JWT (企业IdP集成):
export AUTOMOX_MCP_OAUTH_ISSUER="https://auth.example.com/realms/main"
export AUTOMOX_MCP_OAUTH_AUDIENCE="https://mcp.example.com"
export AUTOMOX_MCP_OAUTH_SERVER_URL="https://mcp.example.com" # enables RFC 9728 metadata客户必须包括 Authorization: Bearer 在每一个请求。收到未经身份验证的请求 401 Unauthorized 与适当 WWW-Authenticate 标题。对stdio传输没有影响。
安全
Automax MCP服务器专为具有深度防御安全控制的企业部署而设计。
亮点:
- 只读模式 (
AUTOMOX_MCP_READ_ONLY)禁用所有22个写入工具 - 模块过滤 (
AUTOMOX_MCP_MODULES)用于最低权限工具加载 - 相关ID 在每个工具调用上,转发到Automax API作为
X-Correlation-ID - 速率限制 (30次通话/60秒),具有令牌预算估算和自动截断功能
- API密钥隔离 --通过按请求身份验证注入存储为私有属性(无标头存储)
- 通用错误响应 -错误输出中没有内部路径、连接字符串或API键
- 及时缓解注射 -API响应净化,具有Unicode规范化、同形符防御、HTML标记/脚本剥离和引用样式的markdown剥离
- Webhook秘密处理 --创建后从幂等性缓存中剥离秘密
- 结构化JSON日志记录 (
AUTOMOX_MCP_LOG_FORMAT=json)用于SIEM集成 - 工具名称前缀 (
AUTOMOX_MCP_TOOL_PREFIX)防止跨服务器冲突 - Sigstore签名发布 使用CycloneDX SBOM
- SSRF预防 --根据私有/环回IP和云元数据端点验证webhook URL
- MCP端点身份验证 -静态API密钥或OAuth 2.1/JWT,具有受众绑定和RFC 9728受保护的资源元数据
- DNS重新绑定保护 --根据MCP传输规范,对所有HTTP/SSE连接进行源和主机标头验证
- 安全响应标头 —
X-Content-Type-Options,X-Frame-Options,CSP,Cache-Control: no-store,Strict-Transport-Security在所有HTTP响应上 - 身份验证速率限制 --在多次身份验证失败后阻止IP,以减轻暴力攻击
- 远程绑定保护 --非环回HTTP/SSE绑定需要显式
--allow-remote-bind选择加入 - MCP工具注释 在所有79个工具上--
readOnlyHint,destructiveHint,idempotentHint,以及openWorldHint根据MCP协议规范,启用客户端确认对话框和安全护栏 - 60个安全加固项目 (V-001至V-181,S-001至S-006)记录在变更日志和安全.md中
有关漏洞报告和完整威胁模型,请参阅 安全.md. 有关部署强化(容器、Kubernetes、MCP网关、TLS、身份验证),请参阅 部署安全指南. 安全态势以 Wiz MCP安全最佳实践 备忘单。
备注:对于网络可访问的部署,启用端点身份验证(静态密钥通过AUTOMOX_MCP_API_KEYS或JWT通过AUTOMOX_MCP_OAUTH_ISSUER)和/或将服务器置于MCP网关或认证反向代理之后。TLS终止是部署人员的责任。
隐私政策
Automax MCP服务器充当您的AI助手和Automax API之间的无状态代理。
数据收集: 除了满足对Automax平台的API请求所需的数据外,服务器不会收集、存储或传输任何用户数据。API凭据在启动时从环境变量中读取,仅用于对Automax API的请求进行身份验证。
数据使用情况: 从Automax API检索的所有数据将直接返回给发起请求的AI助手。服务器执行响应净化(Unicode规范化、HTML剥离)以进行即时注入防御,但不会将API数据分析、聚合或重新用于任何其他目的。
第三方共享: 服务器不与任何第三方共享数据。它只与Automax API进行通信(console.automox.com)使用您提供的凭据。遥测、分析或使用数据不会发送给服务器作者或任何其他服务。
数据保留: 服务器在会话之间不保留持久数据。进程退出时,内存缓存(幂等键、速率限制计数器)将被清除。启用后,结构化日志将写入stderr,部署人员有责任管理和保留。
替代安装
上述快速入门使用 uvx 这不需要安装。如果您更喜欢持久安装:
# Using uv
uv tool install automox-mcp
# Using pip
pip install automox-mcp然后在shell中设置环境变量并运行 automox-mcp.
更新
如果您已经安装了服务器,请更新到最新版本:
# uvx (Quick Start method) — force a cache refresh
uvx --refresh automox-mcp
# uv tool install
uv tool upgrade automox-mcp
# pip
pip install --upgrade automox-mcp注:uvx大约每7天自动刷新一次缓存,因此大多数用户将在不采取任何行动的情况下获取新版本。跑uvx --refresh立即获取最新信息。
贡献
git clone https://github.com/AutomoxCommunity/automox-mcp.git
cd automox-mcp
uv python install
uv sync --python 3.13 --dev测试
使用MCP检查器进行交互式调试:
fastmcp dev运行单元测试:
uv run --python 3.13 --dev pytest运行生产烟雾测试(需要Automax凭据):
uv run python tests/smoke_production.pyMCP扫描仪
静态分析 思科MCP扫描仪:
mcp-scanner \
--analyzers yara \
--format summary \
stdio \
--stdio-command uv \
--stdio-arg run \
--stdio-arg automox-mcp \
--stdio-env AUTOMOX_API_KEY=test-api-key \
--stdio-env AUTOMOX_ACCOUNT_UUID=test-account \
--stdio-env AUTOMOX_ORG_ID=1 \
--stdio-env AUTOMOX_MCP_SKIP_DOTENV=1版本控制
跟随 语义化版本.更新 pyproject.toml提交、标记(例如。, v0.1.0),然后推送——发布工作流会自动发布到PyPI。
许可证
MIT许可证。看 许可证.
支持
官方的Automox MCP服务器。支持由社区驱动:对于问题、错误或功能请求, 或在Autobox社区发布。该项目不在Automax商业支持合同范围内。
要报告安全漏洞,请参阅 安全.md --请不要公开问题。
