agentsclimarketplace

Mcp to skill converter

Skill bjornslib/mcp-to-uber-skills-converter/skills/mcp-to-skill-converter

Claude Code plugin that converts MCP servers to Claude Skills with progressive disclosure. Reduces context usage by 90%+.

Install
npx -y skills add bjornslib/mcp-to-uber-skills-converter --skill mcp-to-skill-converter

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

This skill should be used when the user asks to "convert MCP to skill", "create skill from MCP", "list MCP servers", "batch convert MCP", "generate skills from .mcp.json", or when working with MCP server configurations. Reduces context usage by 90%+ compared to native MCP loading.

SKILL.md

6.5 KB, as published. Nobody here has run it

MCP to Skill Converter

Convert any MCP server into a Claude Skill with progressive disclosure pattern, reducing context usage by 90%+.

When to Use This Skill

  • Converting MCP servers to skills for context efficiency
  • Listing available MCP servers in a project
  • Batch converting multiple MCP servers
  • Creating skills from .mcp.json configuration

Quick Commands

All commands run from project root where the plugin is installed.

List Available Servers

python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --list

Shows all MCP servers with compatibility status (stdio, http, and sse types are compatible).

Convert Single Server (auto-outputs to mcp-skills/)

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.json

Convert All Compatible Servers

python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --all
# Converts all compatible servers (stdio, http, sse) to mcp-skills/

Custom Output Directory

python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --name github --output-dir /custom/path

Specify Custom .mcp.json

python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --mcp-json /path/to/.mcp.json --name github --output-dir ./skills

CLI Options

OptionDescription
--listList all servers with compatibility info
--name NAMEConvert specific server by name
--allConvert all compatible servers
--output-dir PATHOutput directory for generated skill(s)
--mcp-json PATHPath to .mcp.json (auto-discovers if not specified)
--mcp-config PATH[Legacy] Direct MCP config JSON file

Server Compatibility

TypeCompatibleNotes
stdioβœ… YesStandard input/output protocol
httpβœ… YesStreamable HTTP protocol
sseβœ… YesServer-Sent Events protocol

Context Savings

ScenarioNative MCPAs SkillSavings
Idle30-50k tokens~100 tokens99%+
Active30-50k tokens~5k tokens85%+
Executing30-50k tokens0 tokens100%

Workflow Example

Step 1: List available servers

python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --list

Output:

πŸ“„ 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 compatible

Step 2: Convert desired server

python ${PLUGIN_DIR}/skills/mcp-to-skill-converter/mcp_to_skill.py --name github

The converter automatically:

  • Creates the skill in .claude/skills/mcp-skills/github/
  • Initializes the mcp-skills registry (SKILL.md + index.json) if needed
  • Updates index.json with the new skill
  • Removes the server from .mcp.json to avoid duplicate loading

Step 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.

  1. Read the generated SKILL.md to understand what tools are available
  2. Identify semantic keywords - What would users naturally ask for?
    • Think about user intent, not tool names
    • "ToolUI", "chat components" NOT "assistantUIDocs"
    • "create PR", "issues", "repository" NOT "create_pull_request"
  3. Update the SKILL.md description with trigger keywords:
# 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.
  1. Update the registry SKILL.md (mcp-skills/SKILL.md):
    • Add the skill to the "Available Skills" table
    • Include the trigger keywords column

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.

Generated Skill Structure

output-dir/server-name/
β”œβ”€β”€ SKILL.md           # Instructions and tool documentation
β”œβ”€β”€ executor.py        # Async MCP client wrapper
β”œβ”€β”€ mcp-config.json    # Server configuration
└── package.json       # Dependency info

Using Generated Skills

Use 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": {...}}'

Requirements

pip install mcp

Python 3.8+ required.

Error Handling

ErrorCauseSolution
"Server not found"Name doesn't existRun --list to see available servers
"Type not supported"Server is HTTP/SSEOnly stdio servers can be converted
"Could not find .mcp.json"No config foundUse --mcp-json to specify path
"mcp package not found"Missing dependencyRun pip install mcp

Files in This Skill

  • SKILL.md - This documentation
  • mcp_to_skill.py - The converter script
  • templates/ - Template files for generated skills

This skill enables converting MCP servers to Claude Skills for 90%+ context savings.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.