MCP Skills Server — Claude Code MCP server: how to install
Serves custom skills from a mounted local directory to AI coding assistants via MCP, updating them on the fly when files change.
claude mcp add --env MCP_SKILLS_DIR=<MCP_SKILLS_DIR> --env MCP_SKILLS_HOT_RELOAD=<MCP_SKILLS_HOT_RELOAD> --env MCP_SKILLS_LOG_LEVEL=<MCP_SKILLS_LOG_LEVEL> --transport stdio mcp-skills-server -- docker run -i --rm -e MCP_SKILLS_DIR -e MCP_SKILLS_HOT_RELOAD -e MCP_SKILLS_LOG_LEVEL docker.io/srprasanna/mcp-skill-hub:1.0.0What MCP Skills Server does
The server turns a directory of instructions into MCP tools and resources for coding assistants. Every individual skill lives in its own subdirectory and centers around a SKILL.md document containing YAML metadata with a name and summary. The service reads these files and validates the surrounding directory structure before exposing the skills over standard input and output.
File changes trigger an automatic reload cycle without dropping the active session. The server sets a 0.5-second debounce window before reapplying updates. For runtime deployment, you can use the official Docker image or run the package locally with Python 3.13+ and Poetry 1.7+.
Loose SKILL.md files sitting right in the root directory fail silently and get skipped. The loader scans only one directory level deep. Hidden directories, private folders, and package caches like __pycache__ are also ignored.
What it helps with
- serve local custom instructions to an agent via MCP protocol
- update skill definitions without restarting the MCP server
- isolate modular team prompts in standardized directory folders
- deploy an MCP skill hub inside a lightweight Docker container
Example prompts for the agent
- List all available skills discovered in the mounted directory
- Execute the instructions from my-first-skill for this repository
- Check if the excel-advanced skill reloaded after editing its file
How to install MCP Skills Server
Platform CLI
claude mcp add --env MCP_SKILLS_DIR=<MCP_SKILLS_DIR> --env MCP_SKILLS_HOT_RELOAD=<MCP_SKILLS_HOT_RELOAD> --env MCP_SKILLS_LOG_LEVEL=<MCP_SKILLS_LOG_LEVEL> --transport stdio mcp-skills-server -- docker run -i --rm -e MCP_SKILLS_DIR -e MCP_SKILLS_HOT_RELOAD -e MCP_SKILLS_LOG_LEVEL docker.io/srprasanna/mcp-skill-hub:1.0.0Replace <…> with your own values
Platform CLI
codex mcp add mcp-skills-server --env MCP_SKILLS_DIR=<MCP_SKILLS_DIR> --env MCP_SKILLS_HOT_RELOAD=<MCP_SKILLS_HOT_RELOAD> --env MCP_SKILLS_LOG_LEVEL=<MCP_SKILLS_LOG_LEVEL> -- docker run -i --rm -e MCP_SKILLS_DIR -e MCP_SKILLS_HOT_RELOAD -e MCP_SKILLS_LOG_LEVEL docker.io/srprasanna/mcp-skill-hub:1.0.0Replace <…> with your own values
Config file
{
"mcpServers": {
"mcp-skills-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_SKILLS_DIR",
"-e",
"MCP_SKILLS_HOT_RELOAD",
"-e",
"MCP_SKILLS_LOG_LEVEL",
"docker.io/srprasanna/mcp-skill-hub:1.0.0"
],
"env": {
"MCP_SKILLS_DIR": "<MCP_SKILLS_DIR>",
"MCP_SKILLS_HOT_RELOAD": "<MCP_SKILLS_HOT_RELOAD>",
"MCP_SKILLS_LOG_LEVEL": "<MCP_SKILLS_LOG_LEVEL>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"mcp-skills-server": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_SKILLS_DIR",
"-e",
"MCP_SKILLS_HOT_RELOAD",
"-e",
"MCP_SKILLS_LOG_LEVEL",
"docker.io/srprasanna/mcp-skill-hub:1.0.0"
],
"env": {
"MCP_SKILLS_DIR": "<MCP_SKILLS_DIR>",
"MCP_SKILLS_HOT_RELOAD": "<MCP_SKILLS_HOT_RELOAD>",
"MCP_SKILLS_LOG_LEVEL": "<MCP_SKILLS_LOG_LEVEL>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e MCP_SKILLS_DIR=<MCP_SKILLS_DIR> -e MCP_SKILLS_HOT_RELOAD=<MCP_SKILLS_HOT_RELOAD> -e MCP_SKILLS_LOG_LEVEL=<MCP_SKILLS_LOG_LEVEL> mcp-skills-server docker run -i --rm -e MCP_SKILLS_DIR -e MCP_SKILLS_HOT_RELOAD -e MCP_SKILLS_LOG_LEVEL docker.io/srprasanna/mcp-skill-hub:1.0.0Replace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about MCP Skills Server
How to install MCP Skills Server in Claude Code?
Run `claude mcp add --env MCP_SKILLS_DIR=<MCP_SKILLS_DIR> --env MCP_SKILLS_HOT_RELOAD=<MCP_SKILLS_HOT_RELOAD> --env MCP_SKILLS_LOG_LEVEL=<MCP_SKILLS_LOG_LEVEL> --transport stdio mcp-skills-server -- docker run -i --rm -e MCP_SKILLS_DIR -e MCP_SKILLS_HOT_RELOAD -e MCP_SKILLS_LOG_LEVEL docker.io/srprasanna/mcp-skill-hub:1.0.0, replacing <MCP_SKILLS_DIR>` with your local skills path.
What does MCP Skills Server do?
It monitors a local directory, parses modular skill definitions inside SKILL.md files, and exposes them as tools and resources to MCP clients.
Why are some skill files not showing up?
The scanner only checks dedicated folders one level deep. Individual SKILL.md files placed in the root directory, hidden directories, or system folders are skipped completely.