Skip to main content

Skillhub MCP

Skillhub MCP logo

PyPI version PyPI downloads

mcp-name: io.github.214140846/skillhub-mcp

You already have Claude-style skills (SKILL.md), but in practice you often hit a wall:

  • your client speaks MCP, not Claude Skills
  • your team uses multiple agents (Cursor, Copilot, Codex, etc.), so skills are painful to reuse across tools
  • you want a more flexible way to organize and ship skills (nested folders, zip packaging)

Skillhub MCP bridges that gap: it turns Claude-style skills into MCP tools, so any MCP client can call the same skills.

⚠️ Experimental. Skills may contain scripts/resources. Treat them as untrusted and run with sandboxes/containers when possible.

Is this an MCP server or an MCP client?

This project is an MCP server.

  • Skillhub MCP (this repo): runs as a server process and exposes tools/resources to clients.
  • MCP clients: editors/agents like Cursor, Claude Code, Codex, etc. They start or connect to MCP servers.

What You Get

  • Cross-client reuse: install once, use from any MCP client
  • Flexible packaging: nested directories, .zip and .skill archives
  • Skill resources: expose scripts/datasets/examples as MCP resources (files the client can read)
  • Resource fallback: a fetch_resource tool for clients without native MCP resource support
  • Multiple transports: stdio (default), http, sse

Quick Start

Default skills root: ~/.skillhub-mcp

{
  "skillhub-mcp": {
    "command": "uvx",
    "args": ["skillhub-mcp@latest"]
  }
}

Use a custom skills root:

{
  "skillhub-mcp": {
    "command": "uvx",
    "args": ["skillhub-mcp@latest", "/path/to/skills"]
  }
}

Below are minimal working examples for mainstream “vibe coding” editors.

Cursor

Cursor supports configuring MCP servers via mcp.json. Add the following to your global ~/.cursor/mcp.json or project .cursor/mcp.json, then restart Cursor.

{
  "mcpServers": {
    "skillhub-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": ["skillhub-mcp@latest", "/path/to/skills"]
    }
  }
}

Claude Code

Option A: configure via Claude Code CLI (recommended for quick setup):

claude mcp add --transport stdio skillhub-mcp -- uvx skillhub-mcp@latest /path/to/skills

Option B: project-scoped configuration via .mcp.json at your project root. You may need to explicitly allow project MCP servers in .claude/settings.json.

./.mcp.json

{
  "mcpServers": {
    "skillhub-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": ["skillhub-mcp@latest", "/path/to/skills"]
    }
  }
}

./.claude/settings.json (approve only this server)

{
  "enabledMcpjsonServers": ["skillhub-mcp"]
}

Codex (OpenAI)

Option A: use the Codex CLI to add a stdio MCP server:

codex mcp add skillhub-mcp -- uvx skillhub-mcp@latest /path/to/skills

Option B: edit ~/.codex/config.toml:

[mcp_servers.skillhub-mcp]
command = "uvx"
args = ["skillhub-mcp@latest", "/path/to/skills"]

Skill Format

Skillhub MCP discovers skills under the root directory (default ~/.skillhub-mcp). Each skill can be:

  • a directory containing SKILL.md
  • a .zip or .skill archive containing SKILL.md (at the archive root or inside a single top-level folder)

All other files become downloadable MCP resources for your agent to read. Note: Skillhub MCP does not execute scripts; the client decides whether/how to run them.

Example layout:

~/.skillhub-mcp/
├── summarize-docs/
│   ├── SKILL.md
│   ├── summarize.py
│   └── prompts/example.txt
├── translate.zip
├── analyzer.skill
└── web-search/
    └── SKILL.md

Archive rules:

translate.zip
├── SKILL.md
└── helpers/
    └── translate.js
data-cleaner.zip
└── data-cleaner/
    ├── SKILL.md
    └── clean.py

Directory Structure: Skillhub MCP vs Claude Code

Claude Code expects a flat skills directory (each immediate subdirectory is one skill). Skillhub MCP is more permissive:

  • nested directories are discovered
  • .zip / .skill packaged skills are supported

If you need Claude Code compatibility, keep the flat layout.

CLI Reference

skillhub-mcp [skills_root] [options]

Flag / Option Description
positional skills_root Optional skills directory (defaults to ~/.skillhub-mcp).
--transport {stdio,http,sse} Transport (default stdio).
--host HOST Bind address for HTTP/SSE transports.
--port PORT Port for HTTP/SSE transports.
--path PATH URL path for HTTP transport.
--list-skills List discovered skills and exit.
--verbose Emit debug logging.
--log Mirror verbose logs to /tmp/skillhub-mcp.log.

Safety Notes

  • Skills are not "just prompts": they can include scripts and arbitrary files.
  • Skillhub MCP does not run scripts, but your client might. Prefer running in a sandbox/container.

Language

  • English: README.md
  • 中文: README.zh-CN.md

About the Author

I focus on AI SaaS going global, covering the full journey from idea validation and vibe coding to product development, infrastructure, SEO, backlinks, and growth experiments.

Everything shared here comes from real projects, real traffic, and real revenue attempts.

Metadata

Release files for skillhub-mcp 1.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for skillhub-mcp 1.0.5
File Size Uploaded
skillhub_mcp-1.0.5.tar.gz 15.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for skillhub-mcp 1.0.5
File Interpreter ABI Platform
skillhub_mcp-1.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 33.0 kB

Release files / skillhub_mcp-1.0.5.tar.gz

Download URL skillhub_mcp-1.0.5.tar.gz
Size 15.9 kB
Tags Source
SHA-256 checksum
How to use checksums
89a411e3eb00fde8b6668d8c89c54e4731de5657bb7724d9c9fb604cfb7e7e78
BLAKE2b-256 checksum
How to use checksums
3f3b21fac14f4e1f2c9a0acdbedd4750670a4563b570fef2ac05c03781398ec3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / skillhub_mcp-1.0.5-py3-none-any.whl

Download URL skillhub_mcp-1.0.5-py3-none-any.whl
Size 17.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8bb7f4d5b6bb7a999952b8e437522b1caf687efa38c561b3bb013882f6fb7a19
BLAKE2b-256 checksum
How to use checksums
b62445fb5360badbfd150de86f9fc5ff3a4227b6aaac43c94dbea73046414d61
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

1.0.5 This release

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page