#pragma once // 主机管理(10 个标签页)与连接管理(连接列表 / 强制断开)MCP 工具族。 // // 协议(详见 docs/Mcp_Machine_Design.md): // 主机管理:主连接 COMMAND_MACHINE_MANAGE(162) → 客户端 MachineManager 子连接回 // TOKEN_SYSINFOLIST(61) → 发 1 字节 tab(0..9) → 回 TOKEN_MACHINE_*(31..42)。 // 连接管理:主连接 COMMAND_CONNECTION(253) → CConnectionsManager 子连接回 // TOKEN_CONNECTION_LIST(255) → 发 254+原始 110 字节记录强制断开。 // // 会话状态由 CMcpServer 持有(与 m_Pending 共用单飞行表),本模块只负责工具 schema、 // 参数校验、组包与解析。 #include "jsoncpp/json.h" #include class CMy2015RemoteDlg; namespace McpMachine { // 是否由本模块处理(AppendTools 与 Call 必须保持一致)。 bool Handles(const std::string& toolName); // 按当前开关(McpMachine / McpMachineDangerous / McpReadonly)追加可见工具。 void AppendTools(Json::Value& tools); // 执行工具;返回完整 JSON-RPC 响应字符串(成功 = BuildResult,失败 = BuildError)。 std::string Call(const Json::Value& id, const std::string& toolName, const Json::Value& args, CMy2015RemoteDlg* parent); } // namespace McpMachine