dsh-mcp 1.5.0 → 1.7.0

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.en.md CHANGED
@@ -7,6 +7,23 @@ All notable changes to this project are documented in this file.
7
7
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
8
8
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
9
9
 
10
+ ## [1.7.0] - 2026-08-21
11
+
12
+ ### Added
13
+
14
+ - **JSON config editor switched to key-value format**: server configs are shown/edited as a JSON object keyed by server name (`{ "server": { "type": "streamable_http", "url": ..., "headers": {...}, "disabled": false } }`) instead of the previous array; `type` is `streamable_http` or `stdio`, `disabled: true` disables the server
15
+
16
+ ### Fixed
17
+
18
+ - **MCP image admission diagnostics no longer misreport failures**: distinguish image count, batch/per-image byte, MIME, Base64, raster format, decoded-pixel, and maximum-dimension limits; unknown admission errors use a fixed diagnostic so valid-but-oversized images are not reported as invalid image data and attachment storage internals are not leaked (PR #5, thanks @coding-chong)
19
+ - The publish workflow now runs `npm test` (image-projection regression) before syntax checks and publishing
20
+
21
+ ## [1.6.0] - 2026-08-17
22
+
23
+ ### Added
24
+
25
+ - **MCP tool image results**: image content blocks returned by MCP tools are projected through the attachment service into model image context, with strict type/size/count preflight and degraded text fallbacks; non-image content (audio/resource etc.) gets bounded text fallbacks (PR #4, thanks @coding-chong)
26
+
10
27
  ## [1.5.0] - 2026-08-17
11
28
 
12
29
  ### Added
package/CHANGELOG.md CHANGED
@@ -7,6 +7,23 @@
7
7
  格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/),
8
8
  版本号遵循 [语义化版本](https://semver.org/lang/zh-CN/)。
9
9
 
10
+ ## [1.7.0] - 2026-08-21
11
+
12
+ ### 新增
13
+
14
+ - **JSON 配置编辑器改为 key-value 格式**:服务器配置以「服务器名 → 配置对象」的 JSON 对象展示/编辑(`{ "服务器名": { "type": "streamable_http", "url": ..., "headers": {...}, "disabled": false } }`),替代原数组格式;`type` 取值 `streamable_http`/`stdio`,`disabled: true` 表示停用
15
+
16
+ ### 修复
17
+
18
+ - **MCP 图片 admission 诊断不再误报**:区分图片数量、批量/单图字节数、MIME 类型、Base64、图片格式、解码像素数和最大边长限制;未知 admission 错误使用固定诊断,避免把有效但超尺寸的图片误报为无效图片数据,也不泄露 attachment 存储内部错误(PR #5,感谢 @coding-chong)
19
+ - 发布流水线增加 `npm test`(图片投影回归测试)后再校验语法并发布
20
+
21
+ ## [1.6.0] - 2026-08-17
22
+
23
+ ### 新增
24
+
25
+ - **MCP 工具图片结果**:工具返回的图片内容(image blocks)经附件服务投影为图片引用进入模型上下文,带严格的类型/大小/数量预检与降级文案;非图片内容(audio/resource 等)给出有界文本回退(PR #4,感谢 @coding-chong)
26
+
10
27
  ## [1.5.0] - 2026-08-17
11
28
 
12
29
  ### 新增
package/README.en.md CHANGED
@@ -18,6 +18,7 @@
18
18
  - **Process-level environment variables**: a global key-value list (expanded by default, batch-add supported); header values can reference a variable by bare name or `${NAME}` and are substituted at connect time (e.g. `Authorization: Bearer ${TOKEN}`)
19
19
  - **Whole-list JSON config**: the "JSON config editor" panel views/edits every server as one JSON array; applying saves immediately (create/update/delete)
20
20
  - **Fine-grained tool control**: expand each server to see its tools, all checked by default; uncheck to load only what you need
21
+ - **Image result passthrough**: images returned by MCP tools (screenshots/charts) are projected through the attachment service into model image context, with strict preflight and bounded fallbacks (PR #4)
21
22
  - **Two injection modes**: `search` (on-demand, token-saving) and `full` (inject everything)
22
23
  - **Zero npm dependencies**: plugs into DeepSeek Harness internals, install and go
23
24
  - **OAuth authentication**: for `streamable-http` servers using MCP OAuth (authorization-code + PKCE), the browser opens automatically for authorization on connect; tokens and OAuth client info are persisted and refreshed automatically by the SDK (auto-renewed while active within 24h), with automatic re-authorization after expiry
@@ -152,7 +153,7 @@ Check in order:
152
153
  the `web` profile (`dsh plugin --profile web add dsh-mcp` +
153
154
  `$DSH_HOME/profiles/web/cordis.patch.yml`); other profiles have their own settings pages.
154
155
  5. **Is it the latest version?** npm metadata caching can pin an old version; force the version
155
- with `dsh plugin --profile web add dsh-mcp@latest` (or `@1.4.0`).
156
+ with `dsh plugin --profile web add dsh-mcp@latest` (or `@1.7.0`).
156
157
 
157
158
  **Q2: "MCP" is visible but the server list is empty or errors?**
158
159
 
package/README.md CHANGED
@@ -20,6 +20,7 @@
20
20
  - **进程级环境变量**:全局 KV 配置(默认展开、支持批量添加),服务器请求头 value 写 `变量名` 或 `${变量名}` 即可在连接时自动替换为配置值(如 `Authorization: Bearer ${TOKEN}`)
21
21
  - **JSON 全量配置**:「JSON 维护配置」面板以一段 JSON 数组查看/编辑全部服务器配置,应用即保存(新增/更新/删除)
22
22
  - **工具级精细控制**:每个服务器展开工具列表,默认全选,可取消勾选只加载需要的部分
23
+ - **图片结果透传**:MCP 工具返回的图片(截图/图表等)经附件服务投影为图片引用进入模型上下文,带严格预检与有界降级文案(PR #4)
23
24
  - **双注入模式**:`search`(按需检索,省 token)与 `full`(全量注入)
24
25
  - **零 npm 依赖**:直接对接 DeepSeek Harness 内部能力,安装即用
25
26
  - **OAuth 认证支持**:`streamable-http` 服务器若走 MCP OAuth(授权码 + PKCE),连接时自动打开浏览器授权;token 与 client 信息持久化、由 SDK 自动刷新(24 小时内活跃自动续期),失效后自动重新授权
@@ -135,7 +136,7 @@ dsh plugin --profile web add link:<本仓库绝对路径>
135
136
  (`dsh plugin --profile web add dsh-mcp` + `$DSH_HOME/profiles/web/cordis.patch.yml`);
136
137
  装到其他 profile 则在其他 profile 的设置页查看。
137
138
  5. **是否为最新版本**:npm 元数据缓存可能导致装到旧版,可强制指定版本
138
- `dsh plugin --profile web add dsh-mcp@latest`(或 `@1.4.0`)。
139
+ `dsh plugin --profile web add dsh-mcp@latest`(或 `@1.7.0`)。
139
140
 
140
141
  **Q2:设置页能看到「MCP」,但服务器列表为空/报错?**
141
142