keyshot-mcp 0.12.1 → 0.13.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,81 @@ All notable changes to KeyShot MCP are documented in this file.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.13.1] - 2026-10-15
8
+
9
+ ### Release Safety / 发布安全
10
+
11
+ - Validate bilingual release notes, built runtime version and current comparison links before npm publication. Block the release workflow while documentation still marks the version as pending. Add a bilingual 1.0 readiness checklist; external client and user validation remain pending.
12
+ - 在 npm 发布前校验双语更新说明、构建版本和当前比较链接;文档仍标记待发布时阻止正式发布。增加双语 1.0 验收清单,客户端及外部用户验证仍待完成。
13
+ - Add an opt-in material smoke test using generated geometry, an unsupported Wavefront MTL fixture, preset assignments, saved-scene reinspection, invalid-name rejection and source-file hashes. A native KeyShot material file can be tested locally without bundling it.
14
+ - 增加可选材质实机测试,覆盖生成模型、不支持的 Wavefront MTL、预设赋值、保存后复查、错误名称拒绝及源文件哈希保护。可在本地验证 KeyShot 原生材质文件,不随包分发。
15
+ - Classify empty/unsupported material-file loads as `MATERIAL_FILE_INVALID` and explain the difference between KeyShot native MTL and Wavefront companion files.
16
+ - 将空加载或不支持的材质文件归类为 `MATERIAL_FILE_INVALID`,解释 KeyShot 原生 MTL 与 OBJ 配套 Wavefront 文件的区别。
17
+
18
+ ### Documentation / 文档
19
+
20
+ - Restore TypeScript and M8ven header badges, preset guidance, import-only and lens/environment examples, task serialization and early privacy reminders after auditing the README redesign.
21
+ - 核对改版前后内容,补回 TypeScript、M8ven 徽章,预设说明、仅导入及镜头/环境示例、任务串行说明,并前置隐私提醒。
22
+
23
+ - Add a bilingual request-to-render diagram with desktop and mobile layouts, using an object-level material change as the example.
24
+ - 增加中英文“一句话到出图”流程图,适配桌面和手机,以指定对象的材质替换说明预览、确认和输出流程。
25
+
26
+ ### Changed / 变更
27
+
28
+ - Reorganize the bilingual README around designer setup, saved-scene workflows and
29
+ a real component-material comparison. Replace the cube showcase with credited
30
+ local renders of a Poly Haven CC0 lantern, retain the cube as a test fixture,
31
+ and document reproduction and GUI boundaries separately. Add documentation,
32
+ navigation, installation JSON and demo-image checks.
33
+ 围绕设计师安装、已保存场景流程与真实材质对比重整双语 README;展示改用注明来源的
34
+ Poly Haven CC0 灯具实测图,立方体仅保留为测试夹具。独立补充复现与 GUI 边界说明,
35
+ 增加文档链接、导航、安装 JSON 和演示图片检查。
36
+
37
+ ### Fixed / 修复
38
+
39
+ - Verify material names and actual object assignments before reporting success.
40
+ Load single-material MTL files with KeyShot's in-project `loadMaterials` API;
41
+ reject empty or ambiguous loads instead of treating file paths as material names.
42
+ Correct the default clear-glass and matte-black-plastic library references while
43
+ retaining existing preset labels. Add structured material error guidance.
44
+ 返回成功前校验材质名称与对象的实际材质;通过 KeyShot 的 `loadMaterials` 在场景内
45
+ 加载单材质 MTL 文件,空加载或多材质文件明确报错,不再把路径当成材质名称。
46
+ 保留预设名称,修正默认透明玻璃与哑光黑色塑料的材质库引用,并补充结构化修复建议。
47
+
48
+ ## [0.13.0] - 2026-09-30
49
+
50
+ ### Added / 新增
51
+
52
+ - Support MCP protocol `2026-07-28` over stdio with the official TypeScript SDK v2.
53
+ Existing SDK v1 clients can continue to connect using `2025-11-25`.
54
+ 使用官方 TypeScript SDK v2,通过 stdio 支持 MCP `2026-07-28`;旧 SDK v1
55
+ 客户端仍可使用 `2025-11-25` 连接。
56
+ - Add child-process protocol tests for both client generations, covering all
57
+ 19 tools, preset results, prompts, resources and invalid tool arguments.
58
+ 新增真实子进程协议测试,覆盖新旧客户端、19 个工具、预设结果、提示词、资源和无效输入。
59
+
60
+ ### Changed / 变更
61
+
62
+ - Upgrade schema validation to Zod 4 and generate parameter documentation through
63
+ its public JSON Schema API. Tool names, input parameters and output safety rules
64
+ remain compatible. Test runs build the stdio entry before exercising it.
65
+ 升级至 Zod 4,使用公开 JSON Schema 接口生成参数文档;工具名称、输入参数和输出安全
66
+ 规则保持兼容。测试会先构建,再检查实际 stdio 入口。
67
+ - Add bilingual upgrade guidance and release notes. MCP Events subscriptions are
68
+ not implemented in this release; protocol support alone does not enable them.
69
+ 增加双语升级说明和发布说明。本版未实现 MCP Events 订阅,协议升级不会自动开启事件推送。
70
+
71
+ ### Fixed / 修复
72
+
73
+ - Resolve native KeyShot object IDs through the scene tree so scene inspection
74
+ returns actual object names and assigned materials instead of numeric IDs.
75
+ 修复场景检查把对象 ID 当成名称、无法读取已分配材质的问题。
76
+ - Apply materials using KeyShot's material-name and object-ID parameters. Reject
77
+ ambiguous object names; use the `objectPath` returned by scene inspection to
78
+ select a specific object. Inspect again after renaming or reorganizing objects.
79
+ 修正材质赋值参数;同名对象需使用场景检查返回的 `objectPath` 精确选择。
80
+ 重命名或调整对象层级后,应重新检查场景以获取路径。
81
+
7
82
  ## [0.12.1] - 2026-09-02
8
83
 
9
84
  ### Security
@@ -68,7 +143,9 @@ All notable changes to KeyShot MCP are documented in this file.
68
143
 
69
144
  - Documented that scene metadata and preview images may be sent by an MCP client to its configured model provider.
70
145
 
71
- [Unreleased]: https://github.com/truman-t3/keyshot-mcp/compare/v0.12.1...HEAD
146
+ [Unreleased]: https://github.com/truman-t3/keyshot-mcp/compare/v0.13.1...HEAD
147
+ [0.13.1]: https://github.com/truman-t3/keyshot-mcp/compare/v0.13.0...v0.13.1
148
+ [0.13.0]: https://github.com/truman-t3/keyshot-mcp/compare/v0.12.1...v0.13.0
72
149
  [0.12.1]: https://github.com/truman-t3/keyshot-mcp/compare/v0.12.0...v0.12.1
73
150
  [0.12.0]: https://github.com/truman-t3/keyshot-mcp/compare/v0.11.0...v0.12.0
74
151
  [0.11.0]: https://github.com/truman-t3/keyshot-mcp/compare/v0.10.0...v0.11.0
package/CONTRIBUTING.md CHANGED
@@ -33,6 +33,11 @@ npm pack --dry-run
33
33
 
34
34
  Run `pnpm run smoke:keyshot` only on a computer with a supported, licensed KeyShot
35
35
  installation. Record the KeyShot version and operating system in the pull request.
36
+ Run `pnpm run smoke:keyshot:materials` to verify preset assignments, saved-scene
37
+ reinspection, invalid-name rejection and an unsupported Wavefront MTL fixture.
38
+ Optionally pass `--material-file "<native KeyShot MTL>"` to test a trusted local
39
+ single-material file. The native file is read only, never copied into the repository.
40
+ Tests use generated geometry and a new output subfolder, not user scenes.
36
41
  CI on Linux validates the MCP and bridge logic; it does not verify KeyShot itself.
37
42
 
38
43
  ### Pull requests
@@ -81,6 +86,9 @@ npm pack --dry-run
81
86
  只有在本机已安装并合法授权 KeyShot 时才运行 `pnpm run smoke:keyshot`,并在 PR 中
82
87
  注明操作系统和 KeyShot 版本。Linux CI 只验证 MCP 与 Bridge 逻辑,不代表已经实测
83
88
  KeyShot。
89
+ 运行 `pnpm run smoke:keyshot:materials` 可验证材质预设、保存后复查、无效名称及不支持的
90
+ Wavefront MTL 拒绝;可选传入 `--material-file "<KeyShot 原生 MTL>"` 检查可信本地单材质文件。
91
+ 原生文件只读,不复制进仓库;测试仅使用生成模型和新输出子目录,不覆盖用户场景。
84
92
 
85
93
  ### Pull Request
86
94