关于 Axcient x360Recover
Axcient x360Recover 是面向 x360Recover 的 MCP 服务,供备份与灾难恢复运维人员管理客户、设备、备份作业、保管库和设备。它提供 20 个平铺工具,并明确不包含破坏性操作。
主要功能
- 01查看组织及客户记录
- 02查询设备、恢复点和 AutoVerify
- 03查看备份作业及历史
- 04管理保管库和连接阈值
- 05查询设备列表及详情
适用场景
- 01核对 API 密钥对应的组织
- 02按客户检查受保护设备
- 03调查备份作业状态与历史
- 04检查保管库连接阈值
MCP 相关
作为 MCP 服务,它向客户端公开 Axcient x360Recover 的 20 个工具。支持 stdio 和 HTTP,并通过 HTTP 网关请求传递 API 密钥。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
docker run -i --rm -e AXCIENT_API_KEY -e MCP_TRANSPORT -e AUTH_MODE -e LOG_LEVEL ghcr.io/wyre-ai/axcient-mcp:v1.0.4AXCIENT_API_KEY密钥Axcient x360Portal API key (Settings → API Keys)MCP_TRANSPORTTransport mode. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.AUTH_MODE密钥Credential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway.LOG_LEVELLog verbosity: debug, info, warn, error本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
ghcr.io/wyre-ai/axcient-mcp:v1.0.4stdio工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
axcient-mcp
适用于 Axcient x360Recover 的 MCP 服务,涵盖 BCDR 客户端、设备、备份作业、保管库和设备。基于 @wyre-technology/node-axcient 和 MCP v2 SDK 构建,通过单个双时代 HTTP 入口,同时支持 2025 年的 initialize 握手和 2026-07-28 无状态信封。
凭据
在 x360Portal 中生成 API 密钥:设置 → API 密钥(参见 Axcient 的密钥管理指南)。
复制 .env.example。将该文件中的 CONDUIT_S2S_SECRET 留空。
- **本地 / stdio(Claude Desktop、CLI):**设置
AXCIENT_API_KEY。stdio 传输不使用CONDUIT_S2S_SECRET。 - **托管 / 网关:**WYRE MCP Gateway 会在每个请求中注入
X-Axcient-Api-Key(AUTH_MODE=gateway)。网关 Compose 服务不会设置AXCIENT_API_KEY,也不使用env_file。
| 变量 | 必填 | 描述 |
|---|---|---|
AXCIENT_API_KEY | 用于 stdio 和 AUTH_MODE=env | x360Portal API 密钥 |
MCP_TRANSPORT | 否 | stdio(默认)或 http |
AUTH_MODE | 否 | gateway(Docker 镜像和 Compose 默认值)或 env。网关模式要求每个 /mcp 请求都包含 X-Axcient-Api-Key,且绝不会回退使用 AXCIENT_API_KEY。env 仅在 S2S 身份验证成功后使用该变量。 |
CONDUIT_S2S_SECRET | HTTP 模式必填 | 服务间密钥。若该值为空或为已知占位符,HTTP 服务会记录错误并以非零状态退出。未设置该值时,Compose 不会启动。切勿提交真实值。使用 openssl rand -hex 32 生成。 |
MCP_ALLOW_INSECURE_DEV | 否 | 仅用于本地开发:设为 1 后,可在未设置 CONDUIT_S2S_SECRET 的情况下启动 HTTP。进程会记录警告,不会强制验证 X-Gateway-S2S,并且只绑定 127.0.0.1。更宽泛的 MCP_HTTP_HOST 设置会被忽略。仍会拒绝占位符密钥。 |
MCP_HTTP_HOST | 否 | 设置了真实 CONDUIT_S2S_SECRET 时的绑定地址。默认为 127.0.0.1。容器镜像设置为 0.0.0.0。 |
MCP_HTTP_PORT | 否 | HTTP 端口。默认为 8080。 |
/health 和 /healthz 无需身份验证,也不会读取凭据。
X-Gateway-S2S 签名
设置 MCP_TRANSPORT=http 和 CONDUIT_S2S_SECRET 后,每个 /mcp 请求都必须包含 X-Gateway-S2S:
X-Gateway-S2S: t=<unix seconds>,v1=<hex hmac-sha256>
v1 是对 ASCII 消息 t=<unix seconds> 计算的 HMAC-SHA256,使用 CONDUIT_S2S_SECRET 作为密钥,并以十六进制编码。时间戳必须在服务器时钟前后 300 秒以内。缺少或无效的标头会返回 401。密钥绝不会被记录。
import { createHmac } from "node:crypto";
const t = Math.floor(Date.now() / 1000);
const v1 = createHmac("sha256", process.env.CONDUIT_S2S_SECRET).update(`t=${t}`).digest("hex");
const xGatewayS2s = `t=${t},v1=${v1}`;
在 AUTH_MODE=gateway 下,/mcp 还要求包含 X-Axcient-Api-Key。请求缺少此标头时会返回 401,且不会回退使用 AXCIENT_API_KEY。
在本地运行(stdio)
npm install
npm run build
AXCIENT_API_KEY=your-key npm start
以 HTTP 运行(网关 / 托管)
CONDUIT_S2S_SECRET="$(openssl rand -hex 32)" MCP_TRANSPORT=http AUTH_MODE=env AXCIENT_API_KEY=your-key npm start
# → http://127.0.0.1:8080/mcp, health at http://127.0.0.1:8080/health
不带密钥的本地 HTTP 仅限开发使用。它会绑定 127.0.0.1 并记录警告:
MCP_TRANSPORT=http MCP_ALLOW_INSECURE_DEV=1 npm start
Docker
镜像在容器内监听 0.0.0.0(MCP_HTTP_HOST),默认使用 AUTH_MODE=gateway。请将端口发布到环回地址,并传入 S2S 密钥。在网关模式下,Axcient API 密钥会随每个请求通过 X-Axcient-Api-Key 传入;不会从环境变量读取。
docker build --platform linux/amd64 --build-arg GITHUB_TOKEN=$(gh auth token) -t axcient-mcp .
docker run \
-e CONDUIT_S2S_SECRET=your-s2s-secret \
-p 127.0.0.1:8080:8080 \
axcient-mcp
若未设置 CONDUIT_S2S_SECRET,Compose 将拒绝启动;它会运行 AUTH_MODE=gateway,发布 127.0.0.1:8080:8080,且不会注入 AXCIENT_API_KEY:
CONDUIT_S2S_SECRET=your-s2s-secret GITHUB_TOKEN=$(gh auth token) docker compose up
单租户 HTTP(AUTH_MODE=env)仍要求设置 S2S 密钥,之后会使用 AXCIENT_API_KEY:
docker run \
-e CONDUIT_S2S_SECRET=your-s2s-secret \
-e AUTH_MODE=env \
-e AXCIENT_API_KEY=your-key \
-p 127.0.0.1:8080:8080 \
axcient-mcp
工具
共 20 个工具,采用扁平结构(没有路由器——远低于整个工具集约 25 个工具的阈值)。
| 工具 | 说明 |
|---|---|
axcient_test_connection | 获取组织记录以验证 API 密钥 |
axcient_get_organization | 获取 API 密钥对应的组织 |
axcient_list_clients / axcient_get_client | 客户(客户/站点记录) |
axcient_get_d2c_agent_token | 签发 D2C Agent 注册令牌 |
axcient_list_devices / axcient_list_devices_by_client / axcient_get_device | 设备 |
axcient_get_device_autoverify / axcient_get_device_restore_points | AutoVerify 和还原点 |
axcient_list_jobs_by_device / axcient_get_job / axcient_get_job_history | 备份作业 |
axcient_list_vaults / axcient_get_vault | 保管库 |
axcient_get_vault_threshold / axcient_set_vault_threshold | 保管库连接阈值 |
axcient_list_appliances / axcient_list_appliances_by_client / axcient_get_appliance | 设备 |
此工具集中没有破坏性工具——x360Recover 公共 API(v0.3.1)不提供删除/禁用操作,因此未接入确认/请求补充信息流程。有关已知 API 问题(错误格式不一致、列表端点的架构文档错误),请参阅 node-axcient 的 README;本服务的错误消息会原样显示 SDK 返回的错误。
许可证
Apache-2.0
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。