skills-as-mcp
An MCP server for dynamic AI agent skill management. Install, search, and manage Agent Skills from any MCP client — Claude Code, Cursor, Simba, or any tool that speaks MCP.
What Makes This Different
Every existing solution assumes skills are local files you manually place. skills-as-mcp lets your AI agent install skills from URLs mid-conversation:
You: "install this skill https://example.com/weather/SKILL.md"
Agent: calls install_skill(url="https://example.com/weather/SKILL.md")
Agent: "Weather skill installed. You now have weather lookup capabilities."
You: "what's the weather in Tokyo?"
Agent: reads skill://weather → follows instructions → answers
Install
pip install skills-as-mcp
Quick Start
With Claude Code
Add to your MCP config (.claude/settings.json or ~/.claude.json):
{
"mcpServers": {
"skills-as-mcp": {
"command": "skills-as-mcp"
}
}
}
With Any MCP Client
# Run via stdio (default)
skills-as-mcp
# Run as HTTP server
skills-as-mcp --transport http --port 8000
Storage
Skills are stored in ~/.skills-as-mcp/ by default. Override with:
export SKILL_SHELF_DIR=/path/to/shelf
MCP Tools
| Tool | Description |
|---|---|
install_skill(url?, content?) |
Install from URL or raw SKILL.md content |
list_skills(enabled_only?) |
List all installed skills |
get_skill(name) |
Read full SKILL.md instructions |
search_skills(query) |
Search by name/description |
remove_skill(name) |
Uninstall a skill |
enable_skill(name) |
Re-enable a disabled skill |
disable_skill(name) |
Disable without removing |
MCP Resources
| URI | Description |
|---|---|
skill://index |
Index of all enabled skills |
skill://{name} |
Full SKILL.md content for a skill |
SKILL.md Format
Follows the agentskills.io open standard:
---
name: my-skill
description: What this skill does and when to use it
license: MIT
compatibility: Requires internet access
metadata:
author: your-name
version: "1.0"
---
# My Skill
Instructions the agent reads and follows...
Examples
The examples/ directory contains sample skills you can install to test the server:
| Skill | Description |
|---|---|
web-search |
Search the web and summarize results |
code-reviewer |
Review code changes for bugs and improvements |
daily-standup |
Prepare daily standup summaries from git activity |
Install a sample skill from the repo:
# Start the server
skills-as-mcp
# Then from any MCP client, install a sample skill:
install_skill(url="https://raw.githubusercontent.com/sumododda/skills-as-mcp/main/examples/web-search/SKILL.md")
install_skill(url="https://raw.githubusercontent.com/sumododda/skills-as-mcp/main/examples/code-reviewer/SKILL.md")
install_skill(url="https://raw.githubusercontent.com/sumododda/skills-as-mcp/main/examples/daily-standup/SKILL.md")
Or install from a local file:
install_skill(content=open("examples/web-search/SKILL.md").read())
Development
git clone https://github.com/sumo/skills-as-mcp.git
cd skills-as-mcp
pip install -e ".[dev]"
pytest -v
License
MIT
Metadata
Release files for skills-as-mcp 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| skills_as_mcp-0.4.0.tar.gz | 14.4 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| skills_as_mcp-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.8 kB
Release files / skills_as_mcp-0.4.0.tar.gz
| Download URL | skills_as_mcp-0.4.0.tar.gz |
|---|---|
| Size | 14.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d9e502771ac30516ad67fdfe062104359cfe3e626783bd414c9dd1c102d521a0
|
|
BLAKE2b-256 checksum How to use checksums |
3f435594c01172878a13ab823605f3e2d2828e3e2e9cecbab5e475e70991bd6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / skills_as_mcp-0.4.0-py3-none-any.whl
| Download URL | skills_as_mcp-0.4.0-py3-none-any.whl |
|---|---|
| Size | 10.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ac0629d9c83140fec8c172a9abd6543182b8358c1be02f4ac76bdbfa451b68f0
|
|
BLAKE2b-256 checksum How to use checksums |
200c408a10e39d352273253b9fef14f97d81cde4677e5a82082de3d4e4ecefcf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Security for skills-as-mcp 0.4.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.