dsh-mcp-skill-list: List MCPs, skills, and Hooks on the machine

Introduction

DSH profiles generally only contain “which plugins are installed” and do not reflect “what is actually connected to this machine.” To determine if the MCP servers configured in this project are actually registered, the origin of a specific skill, the declared hooks, and exactly which tools a session calls, one usually has to manually check configuration files, run scripts, and review event logs. Another more practical annoyance is that seeing a multitude of tool calls during a session makes it difficult to determine which MCP server contributed, and when an error occurs, one can only guess.

The plugin introduced below, jiajinyuan/dsh-mcp-skill-list, answers these two questions. It creates two interfaces: one for “what is connected to the machine” and one for “what the session used,” both entirely read-only.

What is it

A DSH plugin by jiajinyuan, categorized under admin-security, licensed MIT, version 1.0.0, platform DSH web, with no third-party runtime dependencies. It provides two interfaces: an inventory panel in the sidebar (three tabs for MCP / SKILL / HOOK), and a usage tab in the top bar of the conversation.

It solves specific problems: profiles do not intuitively tell you these two things, and you need exactly this information when troubleshooting MCP registration, skill origins, hook coverage, and session call chains.

Core Features

Inventory Panel

Clicking the sidebar icon opens the main panel, divided into three tabs.

The MCP tab lists each configured server: name, transport method (stdio or streamable-http), startup command line or endpoint URL, environment variable names (keys only, no values), and whether the server’s tools are currently registered.

The SKILL tab lists skills on disk: name, description, whenToUse, provider, SKILL.md path, and the number of hooks declared.

The HOOK tab summarizes all hook declarations: including hooks: in the skill frontmatter, as well as content from ~/.claude/settings.json, <cwd>/.claude/settings.json, and settings.local.json, plus the eight events the host can hook into. Each name has a copy button.

Usage Tab

The conversation top bar has an additional “Tools” tab to the right of “Trace,” using segmented controls to switch between two levels:

Session Summary: All tools called in the current session, including call count, error count, and which turns they appeared in. Sub-tabs are split by TOOL / SKILL / MCP / HOOK; the hook sub-page also estimates how many times each hook was triggered.

Turn Details: A collapsible card for each turn, including the prompt that started the turn, the number of calls in that turn, and the tools, skills, and MCP servers used.

MCP tools are identified and merged into their respective servers based on the mcp__<server>__<tool> naming convention, so what you see is “which MCP server did the work” rather than a string of opaque tool names.

Data Sources

Both interfaces are read-only and do not write any data.

Information Source
MCP Servers Entries in the profile Loader with module @deepseek-ai/dsh-mcp-client
MCP Connectivity tools.schemas() filtered by mcp__ prefix
Skills skills service snapshot, scanning ~/.agents/skills、~/.dsh/skills、<cwd>/.agents/skills、<cwd>/.dsh/skills
Hooks hooks: frontmatter in SKILL.md, plus Claude Code settings files
Session Usage Session event logs, read via sessionQuery (tool/call, tool/result, turn/start, etc.)

Environment variables retain only key names before leaving the host process: values are not serialized, sent to the browser, or logged.

Installation and Enablement

Install with one click in the Plugin Market. Or execute in a DSH session:

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

If you have a checkout, install using the absolute path:

plugin_manager install_bundle, target: <该目录的绝对路径>

The host side registers two same-origin read-only routes:

GET /api/dsh-mcp-skill-list/inventory            # MCP 服务器、技能、hook
GET /api/dsh-mcp-skill-list/usage?sessionId=…    # 按会话和轮次统计用量

Both routes will reject non-loopback origins and cross-site requests.

Typical Usage

After configuring MCP or installing new skills, open the sidebar inventory panel to confirm registration status: the “Tools Registered” column in the MCP tab is the troubleshooting result; the SKILL tab checks if skill origins and paths match expectations.

After a session ends, check the top bar “Tools” tab. If a task fails, open turn details to find the corresponding turn, where you can directly see which tools were called, which MCP server they came from, and how many errors occurred, without having to go back and check event logs.

The interface language follows DSH settings. locale/zh/en.json includes built-in Simplified Chinese and English dictionaries, requiring no additional configuration.

Suitable Scenarios and Notes

Suitable for developers who maintain their own profiles, frequently debug MCPs and skills, and need to review session call chains. Since it runs with the permissions of the current dsh process, you should review the source code and license (MIT) before installing to confirm that the configuration paths it reads are consistent with the actual usage in the project.

It depends on DSH’s web platform (the panel is a web client plugin). The host side only imports node:fs/promises, node:os, node:path, while the client side only depends on react in the browser module table, with no other third-party runtime dependencies.

Conclusion

The value of this plugin lies in moving “what is connected to this machine” and “what this session used” from configuration files and event logs onto clickable interfaces, while remaining entirely read-only and not touching the values of environment variables.

Directory Page: https://www.skillhub.cn/plugins/jiajinyuan/dsh-mcp-skill-list

Source Code: https://github.com/jiajinyuan/dsh-mcp-skill-list

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye