mcp-to-skill-converter — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited mcp-to-skill-converter (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Convert any MCP server into a Claude Skill with progressive disclosure pattern, reducing context usage by 90%+.
.mcp.json configurationAll commands run from project root where the plugin is installed.
python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --listShows all MCP servers with compatibility status (stdio, http, and sse types are compatible).
python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --name <server-name>Example:
python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --name github
# Outputs to: .claude/skills/mcp-skills/github/
# Automatically removes github from .mcp.json
# Updates mcp-skills/index.jsonpython ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --all
# Converts all compatible servers (stdio, http, sse) to mcp-skills/python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --name github --output-dir /custom/pathpython ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --mcp-json /path/to/.mcp.json --name github --output-dir ./skills| Option | Description |
|---|---|
--list | List all servers with compatibility info |
--name NAME | Convert specific server by name |
--all | Convert all compatible servers |
--output-dir PATH | Output directory for generated skill(s) |
--mcp-json PATH | Path to .mcp.json (auto-discovers if not specified) |
--mcp-config PATH | [Legacy] Direct MCP config JSON file |
| Type | Compatible | Notes |
|---|---|---|
stdio | ✅ Yes | Standard input/output protocol |
http | ✅ Yes | Streamable HTTP protocol |
sse | ✅ Yes | Server-Sent Events protocol |
| Scenario | Native MCP | As Skill | Savings |
|---|---|---|---|
| Idle | 30-50k tokens | ~100 tokens | 99%+ |
| Active | 30-50k tokens | ~5k tokens | 85%+ |
| Executing | 30-50k tokens | 0 tokens | 100% |
Step 1: List available servers
python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --listOutput:
📄 Servers in: /path/to/.mcp.json
Name Type Compatible Command
--------------------------------------------------------------------------------
github stdio ✅ Yes npx
context7 stdio ✅ Yes npx
livekit-docs http ❌ No https://...
📊 Total: 16 servers, 14 compatibleStep 2: Convert desired server
python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --name githubThe converter automatically:
.claude/skills/mcp-skills/github/index.json with the new skill.mcp.json to avoid duplicate loadingStep 3: Add semantic trigger keywords (MANDATORY)
The converter generates a placeholder description. You MUST update it with meaningful trigger keywords based on what the MCP server actually does.
# Before (auto-generated):
description: Dynamic access to assistant-ui MCP server (2 tools)
# After (agent-enhanced):
description: Use for assistant-ui documentation, ToolUI, generative UI, chat components, Thread, Composer, Message primitives, runtime integrations. Get docs and code examples for building AI chat interfaces.mcp-skills/SKILL.md):Example registry entry:
| Skill | Tools | Trigger Keywords |
|-------|-------|------------------|
| assistant-ui | 2 | ToolUI, generative UI, chat components, assistant-ui docs |
| github | 26 | PR, issues, repository, commits, code search |Step 4: Use the generated skill Claude will auto-discover the new skill in the mcp-skills registry and can invoke MCP tools with minimal context overhead.
output-dir/server-name/
├── SKILL.md # Instructions and tool documentation
├── executor.py # Async MCP client wrapper
├── mcp-config.json # Server configuration
└── package.json # Dependency infoUse the central executor from project root:
# List tools in a skill
python .claude/skills/mcp-skills/executor.py --skill <skill-name> --list
# Describe specific tool
python .claude/skills/mcp-skills/executor.py --skill <skill-name> --describe tool_name
# Call a tool
python .claude/skills/mcp-skills/executor.py --skill <skill-name> --call '{"tool": "tool_name", "arguments": {...}}'pip install mcpPython 3.8+ required.
| Error | Cause | Solution |
|---|---|---|
| "Server not found" | Name doesn't exist | Run --list to see available servers |
| "Type not supported" | Server is HTTP/SSE | Only stdio servers can be converted |
| "Could not find .mcp.json" | No config found | Use --mcp-json to specify path |
| "mcp package not found" | Missing dependency | Run pip install mcp |
SKILL.md - This documentationmcp_to_skill.py - The converter scripttemplates/ - Template files for generated skillsThis skill enables converting MCP servers to Claude Skills for 90%+ context savings.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.