SkillDock
Allows installing Agent Skills from generic Git repositories, with revision tracking, managed storage, and reconciliation of upstream changes.
Allows installing Agent Skills from GitHub repositories using URLs or owner/repo shorthand, with recursive discovery of SKILL.md folders and persistent source metadata.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SkillDockinstall mattpocock/skills then find a skill for frontend design"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SkillDock
SkillDock is a universal Agent Skill runtime for MCP. It installs compatible skills from Git repositories or local directories, keeps them in a persistent registry, exposes a small set of selected HOT skills as individual MCP tools, and keeps every other installed skill available through search and progressive loading.
It is not tied to one skill repository. Standard SKILL.md repositories work through the
default adapter; repository-specific behavior, such as NomaDamas/k-skill's runtime-aware
instruction assembly, lives behind optional adapters.
What works
GitHub, generic Git, GitHub
owner/reposhorthand, and local directory installationRecursive discovery of multiple
SKILL.mdfolders in any repository layoutPersistent source, revision, install path, trust, adapter, and HOT metadata
Canonical IDs that safely distinguish same-named skills from different sources
A
SearchProviderboundary with a dependency-free/offlineLexicalSearchProviderdefaultDynamic HOT tools plus
find_skills,load_skill,read_skill_asset, andlist_installed_skillsLive
notifications/tools/list_changedwhen another CLI process changes HOT statek-skill
skill.json/instruction.mdprofile and runtime-mode assemblyTraversal-safe text/binary asset reads
Explicit opt-in trust before CLI execution of allow-listed script types; no shell command construction and no script-execution MCP tool
Non-mutating upstream reconciliation previews with explicit safe apply
Persistent
active/missingstate for skills removed upstreamReproducible Top-1/3/5 retrieval evaluation over versioned natural-language query sets
Dependency-light MCP stdio transport
Related MCP server: skillet
Install
Python 3.11 or newer and Git are required.
pip install .For development with uv:
uv sync --all-groups
uv run pytestState defaults to ~/.config/skilldock. Set SKILLDOCK_HOME or pass --home to use a
different registry and managed-source directory. The old SKILL_MCP_HOME variable and
skill-mcp executable remain backward-compatible aliases. If only an existing legacy
~/.config/skill-mcp directory is present, SkillDock continues using it without moving data.
CLI
Install every compatible skill in a repository:
skilldock install https://github.com/NomaDamas/k-skill
skilldock install mattpocock/skills --allInstall selected skills without exposing them as HOT tools:
skilldock install https://github.com/example/skills \
--skill frontend-design --skill debuggingReview the installed inventory, then explicitly expose only skills the user selected:
skilldock list
skilldock hot add github:example/skills/frontend-design
skilldock hot add github:example/skills/debuggingHOT consent policy
Installation never changes HOT state. The same is true for update and reconcile: they preserve
an existing user choice but cannot create a new one. Only skilldock hot add and
skilldock hot remove may change the HOT tier.
The person operating SkillDock must choose every HOT skill by exact name or canonical ID after
reviewing skilldock list. Agents, deployment scripts, installers, and repository metadata must
not infer a HOT set, choose a convenient default, or promote all installed skills. The deprecated
install-time --hot and --hot-skill options now fail with guidance instead of changing state.
Local directories use the same flow and are copied into managed storage:
skilldock install ./my-local-skillsManage installed and HOT state independently:
skilldock list
skilldock hot add frontend-design
skilldock hot remove frontend-design
skilldock hot list
skilldock uninstall frontend-design
skilldock source list
skilldock source remove mattpocock/skills
skilldock reconcile
skilldock reconcile mattpocock/skills --applyreconcile is preview-only unless --apply is given. Applying refreshes installed metadata,
instructions, and missing state, but does not install NEW skills or delete MISSING ones.
It also preserves, but never creates, HOT choices. skilldock update remains a
backward-compatible shorthand for the safe apply behavior.
Short names work only when unambiguous. If two sources contain frontend-design, use the
canonical ID shown by skilldock list, for example
github:example/skills/frontend-design.
Start the MCP server:
skilldock serveExample host configuration:
{
"mcpServers": {
"skills": {
"command": "skilldock",
"args": ["serve"]
}
}
}The server writes only MCP JSON-RPC messages to stdout. HOT changes from another CLI process
trigger notifications/tools/list_changed; hosts without refresh support see the new inventory
after reconnecting.
MCP tool model
Always visible:
find_skills(task, limit=5, include_hot=false)searches installed non-HOT skills.load_skill(skill, runtime_mode="generic")returns complete instructions for any skill.read_skill_asset(skill, path)reads approved bundled resources on demand.list_installed_skills()reports IDs, source, adapter, and HOT state.
For every HOT skill, SkillDock adds a read-only activation tool such as
skill__frontend_design. Its description contains only discovery metadata. Calling it loads
the complete instructions. If normalized names collide, the later tool receives a stable
suffix and both remain addressable.
Supported layouts
Standard Agent Skill layout:
repo/
any/nesting/skill-name/
SKILL.md
scripts/ # optional
references/ # optional
assets/ # optionalSKILL.md must have YAML frontmatter containing a valid name and non-empty description.
All additional frontmatter is preserved in the discovery index and registry.
k-skill compatibility layout:
repo/
skill-name/
skill.json
instruction.md
SKILL.md # generated stub, not used for activation
packages/k-skill-cli/templates/The KSkillAdapter assembles core and declared profile templates, filters generic or
dolshoi mode markers, then adds the skill instruction. Removing that adapter does not affect
the standard runtime.
Script trust boundary
Installing instructions is not permission to execute their code. Script execution is CLI-only
and disabled unless that skill was installed with --allow-scripts:
skilldock install ./trusted-skills --skill formatter --allow-scripts
skilldock exec formatter scripts/format.py -- input.txtExecution resolves a real file below that installed skill's scripts/ directory, accepts only
known interpreter suffixes, passes arguments as an array with shell=False, applies a timeout,
and never turns input into a shell command. Opt-in trust still means the script can act with the
user's operating-system permissions; inspect third-party code before enabling it.
See docs/ARCHITECTURE.md, docs/evaluation-baseline.md, docs/compatibility.md, and SECURITY.md.
Tests
uv run pytest
uv run ruff check .
uv run python scripts/smoke_stdio.py --home ~/.config/skilldock
skilldock eval evals/retrieval_queries.yaml --min-skills 150The suite covers multi-source discovery, collisions, HOT inventory, persistence, restart, search/load behavior, uninstall and source isolation, path traversal, trust-gated execution, k-skill assembly, reconciliation and missing state, pluggable search, retrieval metrics, updates, and raw MCP stdio initialize/list/call notifications.
This server cannot be deployed
Maintenance
Related MCP Connectors
Search, fetch, lint, and install Agent Skills (SKILL.md) from the SkillMD registry.
The governed runtime for agent skills. Search the catalog and inspect a skill before running it.
Search your team's shared AI-skill library, get install commands, and save skills from your agent.
Search and discover Agent Skills from the skills.sh registry. Powered by HAPI MCP server.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables discovery and installation of agent skills from curated GitHub repositories, allowing users to search large collections and inspect skill contents directly. It supports downloading skills locally and provides grounded scaffolds for creating new skills based on existing patterns.52MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to discover, install, and manage SKILL.md skills from a Git-backed registry via MCP tools for search, install, and list operations.13 npm1MIT
- AlicenseAqualityCmaintenanceIndexes installed SKILL.md files and provides deterministic search and recommendation tools to help AI agents select relevant skills without executing them.418 npm1MIT
- AlicenseNot gradedqualityAmaintenanceEnables MCP-capable agents to search, inspect, lint, and safely install Agent Skills from the skillmd registry mid-conversation.6 npm1MIT