MCP 工具
YAMA 内置 MCP 服务端,让本地大模型通过自然语言调用你的主控能力。
📌 版本要求: 需主控(服务端)版本高于 1.3.8(不含 1.3.8)方可支持 MCP 工具,请先升级主控再使用。
⚠ 开发中 — MCP 工具支持仍在开发中,工具集与参数可能会增减或调整,敬请留意。
什么是 MCP
MCP(Model Context Protocol,模型上下文协议)是 Anthropic 提出的开放协议,用于在大模型与外部工具、 数据源之间建立标准化连接。YAMA 主控内置了一个 MCP 服务端,把远程管理能力(查主机、看进程、截屏、读日志等) 封装成一组标准工具。把这些工具挂到本地大模型(如 Claude Desktop)之后,模型就能理解你的自然语言指令, 自动挑选并调用对应工具,完成原本需要手动点来点去的操作。
如何使用
- 1. 在 YAMA 中启用 MCP。 请先将主控升级到 1.3.8 以上的版本(1.3.8 及更低版本不支持 MCP 工具),
然后打开主控 →「扩展 → MCP设置」,勾选「启用 MCP」,确认端口(默认
6544)、 绑定地址(默认127.0.0.1)与 Token(首次打开会自动预填一个随机值)。 保存后需重启 YAMA 生效。Token 也可通过环境变量YAMA_MCP_TOKEN覆盖(优先级更高)。 - 2. 接入本地大模型。 把 MCP 服务端地址(
http://127.0.0.1:6544/mcp)与 Token(Bearer 鉴权) 填到你的 MCP 客户端配置里(Claude Desktop、Cline 等)。 - 3. 用自然语言完成操作。 之后直接和模型对话,例如「帮我看看有哪些机器在线」——模型会调用
list_online_hosts并把结果组织成可读的回答。
🔒 安全提示: MCP 服务默认只监听本机
127.0.0.1,请求需携带 Bearer Token 鉴权;请勿将端口直接暴露到公网。支持的 12 个工具
| 工具 | 说明 | 示例(自然语言) |
|---|---|---|
list_online_hosts 列出在线主机 | 返回所有在线主机(计算机名、IP、操作系统、版本、备注、分组、活动窗口、延迟等实时信息)。 |
|
search_hosts 搜索主机 | 按计算机名 / 备注、IP、分组、操作系统过滤在线主机,条件可任意组合。 |
|
get_host_detail 主机详情 | 返回单台在线主机的详细信息(ID、计算机名、IP、操作系统、备注、分组、活动窗口、屏幕分辨率、客户端类型等)。 |
|
list_processes 进程列表 | 返回指定主机的进程列表(PID、映像名称、架构、程序完整路径)。 |
|
list_windows 窗口列表 | 返回指定主机的顶层窗口列表(句柄、窗口标题、状态、所属进程 PID)。 |
|
get_activity_history 历史活动 | 返回指定主机的历史活动记录(前台窗口驻留时长,每行一条「[时间] [标题] 时长」)。 |
|
get_screenshot 屏幕截图 | 截取指定主机的一帧屏幕,返回 base64 JPEG(可用 max_width 控制输出宽度)。 |
|
list_files 列出文件 | 列举指定主机的目录:不传 path 返回驱动器列表,传 path 返回该目录一层内的文件 / 子目录(最多 500 条)。 |
|
list_registry 注册表查询 | 查询指定 Windows 主机的注册表:不传 path 返回 5 个根键,传 path(如 HKEY_LOCAL_MACHINE\Software)返回该键一层内的子键与值(名称 / 类型 / 数据)。 |
|
list_services 服务列表 | 返回指定 Windows 主机的服务列表(显示名、服务名、可执行文件路径、运行状态、启动类型)。 |
|
get_client_log 客户端日志 | 返回指定主机 YAMA 客户端的内存运行日志(最近最多 1000 条,含时间戳 / 源文件 / 行号)。 |
|
get_audit_log 服务端审计日志 | 返回 YAMA 服务端主界面的消息 / 审计日志(主机上线 / 下线、操作结果、告警、IP 封禁等,最多 1000 条)。 |
|
每个工具对应一次 MCP tools/call 请求;以上示例是模型可能收到的自然语言提问,模型会自行把它们翻译成对应工具的调用。
已知局限
list_services不含受保护服务: 客户端以全权限打开每个服务(OpenService(SERVICE_ALL_ACCESS)),对 ACL 拒绝全权限的服务会跳过, 因此 Windows Defender(WinDefend/WdNisSvc/Sense/SecurityHealthService/wscsvc)及部分系统核心服务 (BFE/DcomLaunch/RpcSs/mpssvc/MSDTC等)不会出现在结果中。get_activity_history需较新客户端: 较老的客户端构建未实现活动历史上报,调用会返回超时(-32001);请使用较新的客户端构建方可查询。list_registry需较新客户端: 注册表查询依赖客户端以只读权限(KEY_READ)枚举并确定性回传子键 / 值两包, 较老的客户端可能跳过无权限的键、或在子键 / 值不全时超时(-32001);请使用较新的客户端构建。 另:REG_BINARY值按协议定宽字段输出十六进制,尾部可能含零填充。