skill2mcp
skill2mcp

skill2mcp ist eine TypeScript-CLI/Bibliothek, die SKILL.md-Dokumente in MCP-fähige Tool-Definitionen konvertiert und ein minimales, bereitstellbares MCP-Server-Paket aus einer einzelnen Datei oder einem gesamten Skill-Verzeichnis generieren kann.
Der generierte Server verwendet das offizielle MCP TypeScript SDK (@modelcontextprotocol/sdk) und unterstützt stdio-, http- oder both-Transporte.
Warum dieses Projekt
SKILL-Dokumente sind normalerweise semistrukturierte Markdown-Dateien (Frontmatter + Fließtext + Tabellen). MCP-Tools erfordern strikte Verträge (name, description, inputSchema).
skill2mcp schließt diese Lücke mit einer mehrschichtigen Pipeline:
Parsen von Markdown in eine stabile Intermediate Representation (IR)
Transformation der IR in MCP-Tool-Definitionen
Generierung eines bereitstellbaren MCP-Server-Pakets mit Handler-Stubs
Related MCP server: Skillz
Aktueller Status
MVP implementiert und funktionsfähig:
Deterministischer Parser (
strict,tolerant)Kaskadierender semantischer Modus (
semantic) für fehlende Metadaten-Fallback-LösungenTool-Transformation (
SchemaBuilder,ToolMapper,ToolValidator)inspect-Ausgabe mit Tool-JSON im MCP-Stilbuild-Ausgabe mit bereitstellbarem MCP-Server-PaketGenerierter Server unterstützt
stdio+httpbuild --watchfür iterative Neugenerierung
Installation
Voraussetzungen
Node.js 20+
npm 10+
Lokale Installation
npm installCLI bauen
npm run buildSchnellstart
1. Einen einzelnen SKILL parsen
npm run parse -- ./fixtures/skills/valid-skill.md --mode strict2. Generierte Tool-Definitionen prüfen
npm run inspect -- ./fixtures/skills --mode tolerant3. Bereitstellbares MCP-Server-Paket generieren
npm run gen -- ./fixtures/skills --out ./generated/mcp-server --transport both --mode tolerant4. Generierten Server ausführen
cd ./generated/mcp-server
npm install
npm run build
npm run start:stdio
# or
npm run start:httpHTTP-Endpunkt:
POST /mcpCLI-Referenz
parse
Konvertiert SKILL-Markdown in IR-JSON.
skill2mcp parse <input> [--mode strict|tolerant|semantic]Argumente:
<input>: Pfad zu einer.md-Datei oder einem Verzeichnis
Optionen:
--mode: Parser-Modus (tolerantist Standard)--format: aktuelljson
Ausgabe:
results[]mit geparstemSkillDocumentdiagnostics[]pro Quelldatei
inspect
Konvertiert geparste IR in MCP-ähnliche Tool-Definitionen.
skill2mcp inspect <input> [--mode strict|tolerant|semantic]Ausgabe:
tools[]: generierte Tool-Definitionen (name,description,inputSchema)results[]: Tool + Diagnosen pro Quelle
build
Generiert ein bereitstellbares MCP-Server-Paket aus einem oder mehreren Skills.
skill2mcp build <input> --out <dir> [--transport stdio|http|both] [--mode strict|tolerant|semantic] [--watch]Argumente:
<input>: Pfad zu einer.md-Datei oder einem Verzeichnis
Erforderliche Optionen:
--out: Ausgabeverzeichnis für das generierte Paket
Optionale Optionen:
--transport: Standard-Transport für den generierten Server (bothist Standard)--mode: Parsing-Modus (tolerantist Standard)--watch: Paket bei Quellenänderungen neu generieren
Ausgabe:
generierte Paketdateien (
package.json,tools.json,src/server.ts, Handler)Diagnosezusammenfassung in JSON
Parse-Modi
strict
Schlägt bei fehlenden erforderlichen Metadaten/Schemas fehl
Am besten für CI-Qualitäts-Gates geeignet
tolerant
Fährt mit Warnungen bei fehlenden Feldern fort
Am besten für die Stapelverarbeitung von Skills mit gemischter Qualität geeignet
semantic
Startet mit tolerantem Parsing
Versucht semantische Extraktion über OpenRouter (sofern konfiguriert)
Wendet deterministische Fallback-Inferenz für nicht aufgelöste Felder an
Behält Diagnose-Trace bei (
SEMANTIC_*-Codes)
OpenRouter-Konfiguration für semantic
Umgebungsvariablen:
OPENROUTER_API_KEY: aktiviert die Remote-Semantik-ExtraktionOPENROUTER_MODEL(optional): Standard istanthropic/claude-3.5-sonnetSKILL2MCP_CACHE_DIR(optional): Cache-Verzeichnis überschreibenOPENROUTER_HTTP_REFERER(optional): wird als OpenRouter-Header weitergeleitetOPENROUTER_X_TITLE(optional): wird als OpenRouter-Header weitergeleitet
Cache-Verhalten:
Semantische Antworten werden nach Inhalts-Hash in
.skill2mcp-cache/semantic-openrouter-cache.jsonzwischengespeichertWenn ein Cache vorhanden ist, verwendet der semantische Modus den Cache wieder und vermeidet zusätzliche Remote-Aufrufe
Kanonisches SKILL.md-Format (empfohlen)
---
name: docx-generator
version: 1.0.0
description: Generate Word docs from structured markdown
tags: [documents, office]
---
## Parameters
| Name | Type | Required | Default | Description |
|------|------|----------|---------|-------------|
| content | string | yes | | Markdown content |
| title | string | yes | | Document title |
## Examples
**Input:** `{ content: "# Hello", title: "Report" }`
**Output:** report.docx generated at /outputs/
## Triggers
- "generate document"
- "create report"Struktur des generierten Pakets
generated/mcp-server/
package.json
tsconfig.json
README.md
tools.json
src/
server.ts
generated-tools.ts
handlers/
index.ts
<tool_name>.tsEntwicklung
Skripte
npm run build # compile TypeScript
npm run test # run test suite
npm run parse # parse command entry
npm run inspect # inspect command entry
npm run gen # build command entryTest-Suite
Die aktuelle automatisierte Abdeckung umfasst:
Parser-Verhalten (
strict,tolerant,semantic)Schema-Builder und Tool-Mapping
Vertragsprüfung der
inspect-BefehlsausgabeEnd-to-End-Generierung von Build-Artefakten
Engineering-Konventionen
Befolgen Sie die Regeln für die Zusammenarbeit im Repository in
AGENTS.mdProdukt-/Geschäftsanweisungen werden durch
ROADMAP.mdgeregeltCommit-Nachrichten müssen das Präfix
[AI]verwenden, wenn sie KI-generiert sind
Release-Artefakte
Dieses Repo enthält:
Dual-Lizenz-Distribution:
MIT OR Apache-2.0CHANGELOG.mdCONTRIBUTING.mdRELEASE_CHECKLIST.md
Zusammenarbeitsmodell
Governance- und Entscheidungsregeln:
GOVERNANCE.mdVerhaltenskodex:
CODE_OF_CONDUCT.mdSicherheitsmeldungen:
SECURITY.mdSupport-Kanäle:
SUPPORT.md
Bekannte Einschränkungen
Das Parameter-Parsing geht derzeit von einem Markdown-Tabellenformat unter
## ParametersausDer semantische Modus priorisiert fehlende Metadaten und kann fehlende Parameter anreichern, wenn eine Extraktion verfügbar ist
Der Watch-Modus verfolgt den aktuellen Baum; wenn später tief verschachtelte Ordner hinzugefügt werden, starten Sie den Watch-Modus neu, um eine vollständige Abdeckung zu gewährleisten
Roadmap-Ausrichtung
Die aktive Implementierung folgt der phasenweisen Bereitstellung in ROADMAP.md.
Die GenAI-Integrationsrichtlinie (sofern aktiviert) priorisiert OpenRouter als Standard-Provider-Strategie, wie in den Roadmap-Richtlinien definiert.
Lizenz
Lizenziert unter einer der folgenden Lizenzen:
MIT-Lizenz (
LICENSE-MIT)Apache-Lizenz 2.0 (
LICENSE-APACHE)
nach Ihrer Wahl.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceConverts AI Skills (following Claude Skills format) into MCP server resources, enabling LLM applications to discover, access, and utilize self-contained skill directories through the Model Context Protocol. Provides tools to list available skills, retrieve skill details and content, and read supporting files with security protections.327Apache 2.0
- Alicense-qualityDmaintenanceTurns Claude-style skills (SKILL.md files with resources) into callable MCP tools for any agent. Discovers skills from a directory, exposes their instructions and resources, and can execute bundled helper scripts.398MIT
- Alicense-qualityDmaintenanceTurns Claude-style skill folders into MCP tools, resources, and prompts for discovering and using skills.81MIT
- Alicense-qualityAmaintenanceExposes an agent's skills as MCP tools, allowing any MCP client to route requests and load skills on demand from a single .3md file.91MIT
Related MCP Connectors
MCP server for skill documentation, generated by doc2mcp.
Generate AGENTS.md, AP2 compliance docs, checkout rules, debug playbook & MCP configs from any repo.
Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/agenttic-ai-dev/skill2mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server