Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
MCP server that loads and serves skills from a mounted directory with hot reload.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
MCP_SKILLS_DIR, MCP_SKILLS_HOT_RELOAD, MCP_SKILLS_LOG_LEVELNecesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"skills": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_SKILLS_DIR",
"-e",
"MCP_SKILLS_HOT_RELOAD",
"-e",
"MCP_SKILLS_LOG_LEVEL",
"docker.io/srprasanna/mcp-skills-server:1.0.0"
],
"env": {
"MCP_SKILLS_DIR": "your-value",
"MCP_SKILLS_HOT_RELOAD": "your-value",
"MCP_SKILLS_LOG_LEVEL": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add skills --env MCP_SKILLS_DIR=your-value --env MCP_SKILLS_HOT_RELOAD=your-value --env MCP_SKILLS_LOG_LEVEL=your-value -- docker run -i --rm -e MCP_SKILLS_DIR -e MCP_SKILLS_HOT_RELOAD -e MCP_SKILLS_LOG_LEVEL docker.io/srprasanna/mcp-skills-server:1.0.0Completa los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"skills": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_SKILLS_DIR",
"-e",
"MCP_SKILLS_HOT_RELOAD",
"-e",
"MCP_SKILLS_LOG_LEVEL",
"docker.io/srprasanna/mcp-skills-server:1.0.0"
],
"env": {
"MCP_SKILLS_DIR": "your-value",
"MCP_SKILLS_HOT_RELOAD": "your-value",
"MCP_SKILLS_LOG_LEVEL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"skills": {
"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-skills-server:1.0.0"
],
"env": {
"MCP_SKILLS_DIR": "your-value",
"MCP_SKILLS_HOT_RELOAD": "your-value",
"MCP_SKILLS_LOG_LEVEL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
MCP_SKILLS_DIR envMCP_SKILLS_HOT_RELOAD envMCP_SKILLS_LOG_LEVEL envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 9 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub srprasanna, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (1.0.0) llegó al registro hace 13 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Docker en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, Statuser
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Monitor services, manage incidents and status pages in Statuser.cloud from your AI assistant.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
A production-ready Model Context Protocol (MCP) server that dynamically loads and exposes skills from a mounted volume with hot-reloading support.
📦 Available on [MCP Registry](https://registry.modelcontextprotocol.io/v0.1/servers/io.github.srprasanna%2Fmcp-skill-hub/versions) - Install with one command!
CRITICAL REQUIREMENT: Each skill MUST be in its own dedicated folder within the skills directory. The server will ONLY recognize skills that follow this structure.
your-skills-directory/
├── skill-one/ │ └── SKILL.md ← Required ├── skill-two/ │ ├── SKILL.md ← Required │ └── examples/ ← Optional │ └── example.py └── skill-three/ ├── SKILL.md ├── examples/ │ └── demo.py └── templates/ └── template.txt
your-skills-directory/
├── SKILL.md ❌ Not in a folder - WILL BE SKIPPED ├── random-file.txt ❌ Not a skill folder ├── .hidden-folder/ ❌ Hidden folder - WILL BE SKIPPED │ └── SKILL.md └── pycache/ ❌ System folder - WILL BE SKIPPED └── SKILL.md
Valid folder names:
my-skill-nameexcel_advancedskill-name-v2Invalid (will be skipped):
.___pycache__, node_modules, .git, etc.mkdir -p ~/claude-skills/my-first-skill
cat > ~/claude-skills/my-first-skill/SKILL.md << 'EOF'
name: "my-first-skill" description: "My first Claude skill"
This is my first skill for Claude!
Simply describe what your skill does here. EOF
docker run -i --rm \
-v ~/claude-skills:/skills:ro \ mcp-skill-hub
git clone https://github.com/srprasanna/mcp-skill-hub.git
cd mcp-skill-hub poetry install
mkdir -p ~/claude-skills/my-first-skill
export MCP_SKILLS_DIR=~/claude-skills
poetry run mcp-skills
# Clone the repository
git clone https://github.com/srprasanna/mcp-skill-hub.git cd mcp-skill-hub
poetry install
poetry run mcp-skills --help
# Build the image
docker build -t mcp-skill-hub .
docker-compose build
# Set the skills directory
export MCP_SKILLS_DIR=/path/to/your/skills
poetry run mcp-skills
docker run -i --rm \
-v /path/to/your/skills:/skills:ro \ -e MCP_SKILLS_LOG_LEVEL=INFO \ mcp-skill-hub
# Edit docker-compose.yml to set your skills directory path
docker-compose up mcp-skills
Add to your Claude Desktop configuration (claude_desktop_config.json):
{
"mcpServers": { "skills": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "${HOME}/claude-skills:/skills:ro", "mcp-skill-hub" ] } } }
Or using Poetry:
{
"mcpServers": { "skills": { "command": "poetry", "args": ["run", "mcp-skills"], "cwd": "/path/to/mcp-skill-hub", "env": { "MCP_SKILLS_DIR": "/path/to/your/skills" } } } }
Important: Make sure your ${HOME}/claude-skills directory contains skill folders, not loose SKILL.md files!
Configuration is done via environment variables with the prefix MCP_SKILLS_:
| Variable | Default | Description |
|---|---|---|
MCP_SKILLS_DIR | /skills | Root directory containing skill folders |
MCP_SKILLS_HOT_RELOAD | true | Enable automatic reloading |
MCP_SKILLS_DEBOUNCE_DELAY | 0.5 | Delay (seconds) before reload |
MCP_SKILLS_LOG_LEVEL | INFO | Log level (DEBUG, INFO, WARNING, ERROR) |
MCP_SKILLS_SCAN_DEPTH | 1 | Scan depth (always 1) |
MCP_SKILLS_DIR=/path/to/skills
MCP_SKILLS_HOT_RELOAD=true MCP_SKILLS_DEBOUNCE_DELAY=0.5 MCP_SKILLS_LOG_LEVEL=INFO
Skills are defined in SKILL.md files with YAML frontmatter:
---
name: "my-skill" description: "Brief description"
Your skill content here in Markdown.
---
name: "excel-advanced" description: "Advanced Excel automation techniques"
version: "1.2.0" author: "Your Name" created: "2025-01-15" updated: "2025-10-23"
dependencies: python: ["openpyxl>=3.0.0", "pandas>=2.0.0"] system: ["libreoffice"]
category: "office-automation" tags: ["excel", "spreadsheet", "automation"] complexity: "intermediate" # beginner|intermediate|advanced
when_to_use:
related_skills: ["csv-processing", "data-analysis"]
has_examples: true example_files: ["examples/report_generator.py", "templates/report_template.xlsx"]
This skill covers advanced Excel automation techniques...
See examples/report_generator.py for a working example.
Required:
name: Unique identifier (kebab-case recommended)description: Brief descriptionOptional:
version: Semantic versionauthor: Creator namecreated, updated: ISO dates (YYYY-MM-DD)dependencies: Python packages or system toolscategory: Main category for groupingtags: Array of tags for searchcomplexity: beginner, intermediate, or advancedwhen_to_use: Array of usage scenariosrelated_skills: Names of related skillshas_examples: Boolean flagexample_files: Paths to example files (relative to skill folder)The server exposes these MCP resources:
Four tools are available for interacting with skills:
search_skillsSearch for skills by query, category, tag, or complexity.
{
"query": "excel", "category": "office-automation", "tag": "automation", "complexity": "intermediate" }
reload_skillsManually trigger a reload of all skills from the directory.
{}
get_skill_infoGet metadata for a specific skill without loading full content.
{
"name": "excel-advanced" }
list_skill_foldersList all valid skill folders found in the skills directory.
{}
# Clone repository
git clone https://github.com/srprasanna/mcp-skill-hub.git cd mcp-skill-hub
poetry install
poetry shell
# Run all tests
poetry run pytest
poetry run pytest --cov=mcp_skills --cov-report=html
poetry run pytest tests/test_scanner.py
poetry run pytest -v
# Format code
poetry run black .
poetry run ruff check .
poetry run mypy src
poetry run black . && poetry run ruff check . && poetry run mypy src
git checkout -b feature/my-feature
poetry run pytest
poetry run mypy src
poetry run black .
poetry run ruff check .
git commit -m "Add feature: description"
git push origin feature/my-feature
mcp-skill-hub/
├── src/mcp_skills/ # Source code │ ├── models/ # Data models │ ├── parsers/ # Skill parsers │ ├── storage/ # Repository pattern │ ├── scanner.py # Directory scanning │ ├── watcher.py # Hot-reload watcher │ ├── server.py # MCP server │ ├── config.py # Configuration │ └── main.py # CLI entry point ├── tests/ # Test suite ├── examples/ # Example skills ├── docs/ # Documentation └── pyproject.toml # Poetry configuration
Problem: No skills are loaded when the server starts.
Solution:
/skills/my-skill/SKILL.md ✓
/skills/SKILL.md ✗
2. Verify folder names don't start with `.` or `_`
Problem: Changes to SKILL.md files aren't detected.
Solution:
MCP_SKILLS_HOT_RELOAD=trueSKILL.mdProblem: SKILL.md files fail to parse.
Solution:
Solo se muestra el principio; lee el resto en el repo