dsh-mcp-connector 0.2.51 → 0.2.53

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,18 @@
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.2.53] - 2026-09-20
8
+
9
+ ### Fixed
10
+
11
+ - 移除 `mcp_connector_configure` 入参顶层 `anyOf`,避免拒绝该 Schema 的 Claude/Anthropic 兼容接口整轮请求失败;三种配置模式由工具描述提示并继续在执行时校验,新增全工具 Schema 与无效配置无副作用回归测试(#89)。此修复不转换外部 MCP Server 的工具 Schema。
12
+
13
+ ## [0.2.52] - 2026-09-20
14
+
15
+ ### Fixed
16
+
17
+ - 修复侧边栏 MCP 连接器入口鼠标悬停时出现额外粗边框的问题;统一入口留白与图标/文字间距,保留键盘焦点提示和折叠侧栏入口(#86)。
18
+
7
19
  ## [0.2.51] - 2026-09-16
8
20
 
9
21
  ### Fixed
package/CONTRIBUTING.md CHANGED
@@ -6,7 +6,8 @@ Thank you for contributing. Never put tokens, API keys, cookies, OAuth credentia
6
6
 
7
7
  ## 参与方式
8
8
 
9
- - 报告缺陷或提交功能建议:[GitHub Issues](https://github.com/duhu2000/dsh-mcp-connector/issues)
9
+ - 报告安全漏洞:请遵循 [安全报告政策](https://github.com/duhu2000/dsh-mcp-connector/blob/main/SECURITY.md),使用 [私密报告入口](https://github.com/duhu2000/dsh-mcp-connector/security/advisories/new),勿公开提交利用细节。
10
+ - 报告普通缺陷或提交功能建议:[GitHub Issues](https://github.com/duhu2000/dsh-mcp-connector/issues)
10
11
  - 为公共市场增加连接器:阅读 [Connector onboarding](https://github.com/duhu2000/dsh-mcp-connector-registry/blob/main/docs/ONBOARDING.md),连接器描述与插件代码分仓管理。
11
12
  - 修复插件或改进文档:Fork 本仓库,从最新 `main` 创建单一目的的分支并提交 PR。
12
13
  - 第一次参与:从带有 [`good first issue`](https://github.com/duhu2000/dsh-mcp-connector/labels/good%20first%20issue) 标签的任务开始,并按[首次贡献路径](docs/FIRST-CONTRIBUTION.md)完成本地校验。
package/README.en.md CHANGED
@@ -190,7 +190,7 @@ npm run dev:ui
190
190
 
191
191
  Every Registry merge regenerates `catalog-stats.json`; an hourly workflow in this repository synchronizes the Chinese and English product copy plus a local stats snapshot. The static npm README updates with package releases, while the live badges above read the Registry directly and therefore stay current without another npm release.
192
192
 
193
- The current public version is [`dsh-mcp-connector@0.2.51`](https://www.npmjs.com/package/dsh-mcp-connector), with [GitHub Release v0.2.51](https://github.com/duhu2000/dsh-mcp-connector/releases/tag/v0.2.51).
193
+ The current public version is [`dsh-mcp-connector@0.2.53`](https://www.npmjs.com/package/dsh-mcp-connector), with [GitHub Release v0.2.53](https://github.com/duhu2000/dsh-mcp-connector/releases/tag/v0.2.53).
194
194
 
195
195
  See [CHANGELOG.md](CHANGELOG.md) for version history and [docs/DESKTOP-E2E.md](docs/DESKTOP-E2E.md) for the Desktop release checklist.
196
196
 
package/README.md CHANGED
@@ -185,7 +185,7 @@ npm run dev:ui
185
185
 
186
186
  公共 Registry 每次合并后会生成 `catalog-stats.json`;本仓库的定时工作流每小时同步中英文介绍和统计快照。npm 页面中的静态正文随版本发布更新,上方动态统计徽标则直接读取 Registry,可在不发布新 npm 版本时保持实时数量一致。
187
187
 
188
- 当前公开版本为 [`dsh-mcp-connector@0.2.51`](https://www.npmjs.com/package/dsh-mcp-connector),对应 [GitHub Release v0.2.51](https://github.com/duhu2000/dsh-mcp-connector/releases/tag/v0.2.51)。
188
+ 当前公开版本为 [`dsh-mcp-connector@0.2.53`](https://www.npmjs.com/package/dsh-mcp-connector),对应 [GitHub Release v0.2.53](https://github.com/duhu2000/dsh-mcp-connector/releases/tag/v0.2.53)。
189
189
 
190
190
  版本能力与变更记录见 [CHANGELOG.md](CHANGELOG.md)。
191
191
  Desktop 发版回归见 [docs/DESKTOP-E2E.md](docs/DESKTOP-E2E.md)。
package/lib/client.js CHANGED
@@ -57,10 +57,11 @@ window.__ModuleLoader__.load({
57
57
  display: flex;
58
58
  align-items: center;
59
59
  box-sizing: border-box;
60
- width: calc(100% + 4px);
60
+ width: 100%;
61
61
  height: 42px;
62
- margin: 4px -2px;
63
- padding: 0 10px 0 8px;
62
+ margin: 4px 0;
63
+ padding: 0 var(--dsh-sidebar-inline-padding, 12px);
64
+ gap: 8px;
64
65
  justify-content: flex-start;
65
66
  overflow: hidden;
66
67
  border: 0;
@@ -72,11 +73,32 @@ window.__ModuleLoader__.load({
72
73
  cursor: pointer;
73
74
  }
74
75
 
75
- .mcpConnectorLauncher:hover,
76
+ .mcpConnectorLauncher:hover {
77
+ background: rgba(127, 127, 127, 0.12);
78
+ outline: none;
79
+ }
80
+
76
81
  .mcpConnectorLauncher:focus-visible {
77
82
  background: rgba(127, 127, 127, 0.12);
78
83
  outline: 2px solid currentColor;
79
- outline-offset: 1px;
84
+ outline-offset: -2px;
85
+ }
86
+
87
+ .mcpConnectorLauncherIcon {
88
+ display: inline-flex;
89
+ align-items: center;
90
+ justify-content: center;
91
+ flex: 0 0 20px;
92
+ width: 20px;
93
+ height: 20px;
94
+ font-size: 18px;
95
+ line-height: 1;
96
+ }
97
+
98
+ .mcpConnectorLauncherLabel {
99
+ min-width: 0;
100
+ overflow: hidden;
101
+ text-overflow: ellipsis;
80
102
  }
81
103
 
82
104
  .mcpConnectorLauncher[data-wide="false"] {
@@ -1607,7 +1629,7 @@ window.__ModuleLoader__.load({
1607
1629
  return modal;
1608
1630
  }
1609
1631
 
1610
- /** 左栏入口按钮:使用 DSH Button 组件,与社区插件市场一致。 */
1632
+ /** 左栏入口:固定图标列与文字间距,键盘焦点与鼠标悬停分别处理。 */
1611
1633
  function SidebarEntry(props) {
1612
1634
  const { wide, useStore, actions } = props;
1613
1635
  const open = useStore((state) => state.open);
@@ -1641,7 +1663,7 @@ window.__ModuleLoader__.load({
1641
1663
  };
1642
1664
  }, [visible]);
1643
1665
  if (!visible) return null;
1644
- const launcher = /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
1666
+ const launcher = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
1645
1667
  type: "button",
1646
1668
  className: "mcpConnectorLauncher",
1647
1669
  "data-wide": wide,
@@ -1649,7 +1671,10 @@ window.__ModuleLoader__.load({
1649
1671
  "aria-haspopup": "dialog",
1650
1672
  "aria-expanded": open,
1651
1673
  onClick: () => { try { actions.open(); } catch (error) { console.error('[mcp-connector] open failed:', error); } },
1652
- children: wide ? "🧩 MCP连接器" : "🧩"
1674
+ children: [
1675
+ (0, react_jsx_runtime.jsx)("span", { className: "mcpConnectorLauncherIcon", "aria-hidden": true, children: "🧩" }),
1676
+ wide ? (0, react_jsx_runtime.jsx)("span", { className: "mcpConnectorLauncherLabel", children: "MCP连接器" }) : null
1677
+ ]
1653
1678
  });
1654
1679
  if (topMount === null || typeof react_dom.createPortal !== "function") return launcher;
1655
1680
  return react_dom.createPortal(/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
package/lib/tools.js CHANGED
@@ -209,6 +209,7 @@ export function registerTools(ctx, api) {
209
209
  description:
210
210
  '自定义配置一个外部 MCP Server 连接:HTTP 可填写 URL/鉴权;stdio 可填写 command/args/env/cwd。' +
211
211
  '也可对市场中的 Bearer/API Key 连接器按 connectorId 一次配置全部 Server;stdio 凭据会按目录声明安全注入本机环境变量。' +
212
+ '参数三选一:市场连接器提供 connectorId;自定义 HTTP 提供 name 和 url;自定义 stdio 提供 name、transport=stdio 和 command。' +
212
213
  '市场连接器会先验证或交由 Host 托管,通过后才保存。',
213
214
  parameters: {
214
215
  type: 'object',
@@ -239,7 +240,7 @@ export function registerTools(ctx, api) {
239
240
  scope: { type: 'string', enum: ['global', 'project'], description: '目标作用域;新连接省略时使用 global,已有 key 保留原范围' },
240
241
  workspaceId: { type: 'string', description: 'scope=project 时必填' },
241
242
  },
242
- anyOf: [{ required: ['connectorId'] }, { required: ['name', 'url'] }, { required: ['name', 'transport', 'command'] }],
243
+ // Provider compatibility: no root-level unions. api.configure validates each mode before saving.
243
244
  additionalProperties: false,
244
245
  },
245
246
  output: resultOutput,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-mcp-connector",
3
- "version": "0.2.51",
3
+ "version": "0.2.53",
4
4
  "description": "DeepSeek Harness MCP Connector: connect servers, search tools across active connections, and troubleshoot discovery. Includes a continuously updated catalog; supports OAuth 2.0 PKCE, API keys, Streamable HTTP/stdio, and mcpServers JSON import.",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",