# Mcgs MCP Editor

> 解析和编辑 MCGS Pro 的 Access 格式 MCP 工程副本，处理标签、数值输入框、标准按钮及受限 BASIC 条件脚本。用于 HMI 文件结构取证、控件克隆、绑定修改和宿主验收；这里的 MCP 不是 Model Context Protocol。

- Skill: `babel36acl/mcgs-mcp-editor` (Agent Skill, multi-file: 15 files)
- Install (CLI): `npx skillmds@latest add babel36acl/mcgs-mcp-editor`
- Raw SKILL.md: https://api.skillmd.com/api/skills/babel36acl/mcgs-mcp-editor/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: Babel36acl (https://skillmd.com/u/babel36acl)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/babel36acl/mcgs-mcp-editor

---


# MCGS MCP 编辑

使用参数化工具处理用户授权的实验副本。已验证版本为 McgsPro 3.5.1.7267；不是完整工程编译器，也不是所有控件的通用序列化器。

先读 [格式与边界](references/format.md)。涉及按钮文字或脚本时，再读 [损坏根因与验收证据](references/acceptance.md)。实际命令和编辑清单见 [工具用法](references/usage.md)。

1. 以当前用户指定工程为准，读取数据库和 `WndUser.lbObjects`，记录文件及控件 SHA-256。先定位完整记录，再解释字段；字符串扫描只是发现线索，不能作为记录边界。
2. 准备编辑清单，给出窗口 ID、记录索引、类型、控件原始哈希、字段偏移和预期旧值。新样本必须先确定字段及所属嵌套数组，不能把实验偏移套到其他控件。优先克隆已有完整原生控件，保留未解释字段和资源引用。
3. 标签文字使用 CArchive 字符串编码；输入框改绑时确认目标变量存在且类型兼容，上下限存储顺序为 `[最大值, 最小值]`。矩形在已识别样本中为四个 int32。名称改动须检查重复名称和引用；克隆工具只检查同窗口名称冲突，不处理未知全局分配状态。
4. 按钮文字可能在多层数组内。文字变长或变短时，更新所有覆盖该字段的长度及最外层记录长度。V1 的真实失败来自漏更新三层长度，详情见验收参考。不能只让 Access 和外层解析器读通。
5. 事件源码和已编译数组一起生成、一起替换。`script_tool.py` 支持数值变量、int32 常量、加法、多语句、嵌套 `If/Else/EndIf` 及六种比较；不支持函数、循环、字符串、浮点字面量及完整 BASIC。显式提供真实变量到脚本对象 ID 的映射；历史项目中的 `存储索引+1` 只是需逐项目交叉核实的线索。
6. 写入新路径，保留原件，回读所有非系统表，确认只有声明的 BLOB 发生变化。保留编译标志和窗口尾部数据。未知结构或哈希不匹配应停止该编辑，补充取证；不要尝试全局替换或删除未知块。
7. 交付前进行 McgsPro 打开、属性检查、Ctrl+E、保存关闭重开、离线输入/按钮事件验收。条件脚本须覆盖真假两条路径。分别报告数据库回读、原厂代码仿真和宿主操作的证据。已有同一产物的用户反馈可作为宿主证据，注明来源即可。

原厂 EXE/DLL 由使用者自行提供。脚本按 SHA-256 锁定版本，仅在 Unicorn 内模拟原机器码，外部调用仅允许受限内存复制，数据对象由内存字典提供。此机制不证明真实设备行为，也没有获得官方自动化 API。

原生 UI 受 UIPI 限制时继续完成文件侧工作，再索取具体宿主验收结果；不要修改权限设置绕过隔离。对真实设备、正式工程和批量页面的动作沿用用户当前授权，不能从离线副本验收推导额外授权。

