What it does
MCP 服务器管理面板:GUI 增删改 MCP 服务器配置(写入 cordis.patch.yml + HMR 实时挂载)+ 工具浏览 + agent 面 mcp_* 管理工具 | MCP server management panel: GUI add/edit/delete MCP server configs (writes cordis.patch.yml + HMR hot-mount) + tool browsing + agent-side mcp_* management tools
Installation
dsh plugin --profile web add dsh-plugin-mcp-managerInstall method: npm · not yet tested in container (L3+)
Compatibility
| DSH Version | Status |
|---|---|
| not stated | Declared — not tested |
Requirements
- • Node.js: not stated
- • DSH: declared "not stated"
- • External credentials: none detected
Security Report
Automated static scan, not manual review.
No critical or warning findings in the automated scan. The result is valid only for the commit hash shown.
08d225720c022026-08-1708d225720c02The scan result is only valid for the scanned commit. If the latest commit differs, the badge shows outdated until the daily pipeline rescans.
Disclaimer: automated static analysis, not a security guarantee. Always review what you install.
• Static heuristic scan: done (10 files)
• Dependency vulnerabilities: requires deep audit (L3+)
• Permission sandboxing: requires runtime testing (L4+)
Scan findings · 10
- infoMakes network requests (fetch / axios)lib/index.js:192const [serversRes, toolsRes] = await Promise.all([fetch("/api/mcp-manager/servers", { headers: { accept: "application/json" } }), fetch("/ap
- infoMakes network requests (fetch / axios)lib/index.js:258const body = await (await fetch(isEdit ? `/api/mcp-manager/servers/${encodeURIComponent(editing.id)}` : "/api/mcp-manager/servers", {
- infoMakes network requests (fetch / axios)lib/index.js:282const body = await (await fetch(`/api/mcp-manager/servers/${encodeURIComponent(id)}`, { method: "DELETE" })).json();
- infoReads process.envlib/index.mjs:33return process.env.DSH_HOME?.trim() !== "" && process.env.DSH_HOME !== void 0 ? process.env.DSH_HOME : join(process.env.HOME ?? process.env.
- infoMakes network requests (fetch / axios)src/client/Panel.tsx:144fetch('/api/mcp-manager/servers', { headers: { accept: 'application/json' } }),
- infoMakes network requests (fetch / axios)src/client/Panel.tsx:145fetch('/api/mcp-manager/tools', { headers: { accept: 'application/json' } }),
- infoMakes network requests (fetch / axios)src/client/Panel.tsx:209const res = await fetch(
- infoReads process.envsrc/registry.ts:39return process.env.DSH_HOME?.trim() !== '' && process.env.DSH_HOME !== undefined
- infoReads process.envsrc/registry.ts:40? process.env.DSH_HOME
- infoReads process.envsrc/registry.ts:41: join(process.env.HOME ?? process.env.USERPROFILE ?? '/tmp', '.dsh')
Heuristic static scan — may produce false positives. Review the source yourself before trusting.
Activity
Last commit 2026-08-16 · activity: Active
• Repo created: 2026-08-17
• Stars: ★ 4 · Forks: 0
• Health: Active — committed within last 30 days
