DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

jiajinyuan /

jiajinyuan/dsh-mcp-skill-list

Verified

Two things a DSH profile never tells you at a glance: what this machine is wired to, and what a session actually used. This plugin answers both.

★ 1 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@cc90fed4

dsh-mcp-skill-list

🇬🇧 English · 🇨🇳 简体中文

License: MIT Platform: DSH web Dependencies: none

🔎 Two things a DSH profile never tells you at a glance: what this machine is wired to, and what a session actually used. This plugin answers both.

🧭 What it does

  1. 🔌 What is this machine wired to? — every configured MCP server, every skill on disk, every hook they declare.
  2. 📊 What did this session actually use? — every TOOL / MCP / SKILL / HOOK the conversation called, summarised per session and per turn.

It ships two surfaces, both rendered as real React inside DSH slots (no iframe):

Surface Where
🧩 Inventory panel Sidebar icon + main panel, three tabs: MCP / SKILL / HOOK
🧰 Usage tab Conversation top bar, right after Trajectory (轨迹), labelled 工具

🧩 Inventory panel (left sidebar)

  • 🔌 MCP — server name, transport (stdio / streamable-http), the startup command line or endpoint URL, environment variable names only, and whether tools from that server are currently registered.
  • 🎒 SKILL — name, description, whenToUse, the provider that supplied it, its SKILL.md path, and how many hooks it declares.
  • 🪝 HOOK — every hook declared by a skill's frontmatter, plus anything in ~/.claude/settings.json, <cwd>/.claude/settings.json and settings.local.json, plus the eight events the host can hook into.

📋 Every name has a copy button.

🧰 Usage tab (conversation top bar)

Two levels, switched by a segmented control:

  • 📊 Session summary — every tool the session called, with call counts, error counts and the number of turns it appeared in. Sub-tabs split TOOL / SKILL / MCP / HOOK; the hook tab also estimates how many times each hook would have fired.
  • 🪜 Turn detail — one collapsible card per turn: the prompt that opened it, its call count, and the tools / skills / MCP servers that turn used.

🧠 MCP tools are recognised by their mcp__<server>__<tool> names and grouped back to their server, so you see which MCP server did the work, not just an opaque tool name.

🔌 Data sources

Everything is read, never written.

Fact Where it comes from
🔌 MCP servers profile Loader entries whose module is @deepseek-ai/dsh-mcp-client
🩺 MCP connectivity tools.schemas() filtered by the mcp__ prefix
🎒 Skills the skills service snapshot, backed by a disk scan of ~/.agents/skills, ~/.dsh/skills, <cwd>/.agents/skills, <cwd>/.dsh/skills
🪝 Hooks hooks: frontmatter inside SKILL.md, plus Claude Code settings files
📊 Session usage the session event log via sessionQuery (tool/call, tool/result, turn/start, …)

🔒 Secrets stay home. Environment variables are reduced to their key names before they ever leave the host process; values are never serialised, never sent to the browser, never logged.

📦 Install

From the plugin market, one click. Or from a DSH session:

plugin_manager install_bundle, target: dsh-mcp-skill-list

From a checkout:

plugin_manager install_bundle, target: <absolute path to this directory>

✅ Requirements

  • 🖥️ DSH runtime with the web platform (the panel is a web client plugin).
  • 📦 No third-party runtime dependencies: the host half imports only node:fs/promises, node:os and node:path; the client half requires only react from the browser module table.

🗂️ Layout

index.js           🖥️  host half — two same-origin read-only routes
client.js          🌐  client half — slots, components, both surfaces
cordis.patch.yml   ⚙️  bundle patch inserting the plugin row
locale/{zh,en}.json   🈯  interface dictionaries
icon.svg           🎨  sidebar icon

Two routes are registered on the host:

  • GET /api/dsh-mcp-skill-list/inventory — 🧩 MCP servers, skills, hooks
  • GET /api/dsh-mcp-skill-list/usage?sessionId=… — 📊 per-session and per-turn usage

🛡️ Both reject non-loopback origins and cross-site requests.

🌐 UI language

The interface follows the DSH language setting out of the box — Simplified Chinese and English dictionaries are bundled in locale/{zh,en}.json, no extra configuration needed.

📄 License

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit cc90fed47e92

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout