Communitygithub.com

MCP-Server-Entwicklungsleitfaden

Leitfaden zur Erstellung hochwertiger MCP-Server (Model Context Protocol), die LLMs die Interaktion mit externen Diensten durch durchdachte Werkzeuge ermöglichen. Verwenden Sie dies beim Erstellen von MCP-Servern zur Integration externer APIs oder Dienste, entweder in Python (FastMCP) oder Node/TypeScript (MCP SDK).

Was ist MCP-Server-Entwicklungsleitfaden?

Dieser Skill, 'MCP Server Development Guide', bietet eine umfassende, vierphasige Roadmap für die Entwicklung von MCP-Servern (Model Context Protocol) hoher Qualität. Diese Server sind das entscheidende Bindeglied, das Large Language Models (LLMs) wie Claude oder GPT befähigt, durch klar definierte Werkzeuge (Tools) mit externen APIs und Diensten zu interagieren. Der Leitfaden betont die Bedeutung einer ausgewogenen API-Abdeckung und spezialisierter Workflow-Werkzeuge, einer konsistenten Benennung von Tools, eines effektiven Kontextmanagements und der Bereitstellung umsetzbarer Fehlermeldungen. Die Entwicklung ist in die Phasen Planung, Implementierung, Testen und Evaluierung unterteilt, mit Empfehlungen für TypeScript (MCP SDK) oder Python (FastMCP). Der Skill enthält detaillierte Referenzen zu bewährten Verfahren, SDK-Dokumentation und Implementierungsleitfäden, die während des gesamten Entwicklungsprozesses geladen werden können. Ziel ist es, MCP-Server zu schaffen, die LLMs die nahtlose Lösung komplexer, realer Aufgaben ermöglichen.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/David-Li0406/meta-skill-evloving/tree/HEAD/AgentSkillOS/data/skill_seeds/mcp-builder

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Leitfaden zur MCP-Server-Entwicklung

Überblick

Erstellen Sie MCP-Server (Model Context Protocol), die LLMs die Interaktion mit externen Diensten durch durchdachte Werkzeuge ermöglichen. Die Qualität eines MCP-Servers wird daran gemessen, wie gut er LLMs befähigt, reale Aufgaben zu erledigen.


Prozess

🚀 Hochrangiger Arbeitsablauf

Die Erstellung eines hochwertigen MCP-Servers umfasst vier Hauptphasen:

Phase 1: Tiefgehende Recherche und Planung

1.1 Modernes MCP-Design verstehen

API-Abdeckung vs. Workflow-Tools: Gleichen Sie eine umfassende Abdeckung der API-Endpunkte mit spezialisierten Workflow-Tools ab. Workflow-Tools können für bestimmte Aufgaben bequemer sein, während eine umfassende Abdeckung den Agenten Flexibilität bei der Zusammenstellung von Operationen bietet. Die Leistung variiert je nach Client – einige Clients profitieren von der Codeausführung, die grundlegende Werkzeuge kombiniert, während andere mit übergeordneten Workflows besser arbeiten. Wenn Sie unsicher sind, priorisieren Sie eine umfassende API-Abdeckung.

Benennung und Auffindbarkeit von Tools: Klare, beschreibende Tool-Namen helfen Agenten, die richtigen Werkzeuge schnell zu finden. Verwenden Sie konsistente Präfixe (z. B. github_create_issue, github_list_repos) und handlungsorientierte Benennung.

Kontextverwaltung: Agenten profitieren von prägnanten Tool-Beschreibungen und der Möglichkeit, Ergebnisse zu filtern/zu paginieren. Entwerfen Sie Tools, die fokussierte, relevante Daten zurückgeben. Einige Clients unterstützen Codeausführung, die Agenten helfen kann, Daten effizient zu filtern und zu verarbeiten.

Umsetzbare Fehlermeldungen: Fehlermeldungen sollten Agenten mit spezifischen Vorschlägen und nächsten Schritten zu Lösungen führen.

1.2 MCP-Protokolldokumentation studieren

Navigation durch die MCP-Spezifikation:

Beginnen Sie mit der Sitemap, um relevante Seiten zu finden: https://modelcontextprotocol.io/sitemap.xml

Rufen Sie dann bestimmte Seiten mit der .md-Endung für das Markdown-Format ab (z. B. https://modelcontextprotocol.io/specification/draft.md).

Wichtige Seiten zum Überprüfen:

  • Spezifikationsüberblick und Architektur
  • Transportmechanismen (streamable HTTP, stdio)
  • Definitionen von Tools, Ressourcen und Prompts

1.3 Framework-Dokumentation studieren

Empfohlener Stack:

  • Sprache: TypeScript (hochwertige SDK-Unterstützung und gute Kompatibilität in vielen Ausführungsumgebungen, z. B. MCPB. Außerdem sind KI-Modelle gut darin, TypeScript-Code zu generieren, was von seiner breiten Verwendung, statischen Typisierung und guten Linting-Tools profitiert)
  • Transport: Streamable HTTP für entfernte Server, unter Verwendung von zustandslosem JSON (einfacher zu skalieren und zu warten, im Gegensatz zu zustandsbehafteten Sitzungen und Streaming-Antworten). stdio für lokale Server.

Framework-Dokumentation laden:

Für TypeScript (empfohlen):

  • TypeScript-SDK: Verwenden Sie WebFetch, um https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md zu laden
  • ⚡ TypeScript-Leitfaden - TypeScript-Muster und Beispiele

Für Python:

  • Python-SDK: Verwenden Sie WebFetch, um https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md zu laden
  • 🐍 Python-Leitfaden - Python-Muster und Beispiele

1.4 Implementierung planen

Die API verstehen: Überprüfen Sie die API-Dokumentation des Dienstes, um wichtige Endpunkte, Authentifizierungsanforderungen und Datenmodelle zu identifizieren. Verwenden Sie bei Bedarf Websuche und WebFetch.

Tool-Auswahl: Priorisieren Sie eine umfassende API-Abdeckung. Listen Sie die zu implementierenden Endpunkte auf, beginnend mit den häufigsten Operationen.


Phase 2: Implementierung

2.1 Projektstruktur einrichten

Siehe sprachspezifische Anleitungen zur Projekteinrichtung:

2.2 Kerninfrastruktur implementieren

Erstellen Sie gemeinsam genutzte Hilfsprogramme:

  • API-Client mit Authentifizierung
  • Hilfsprogramme zur Fehlerbehandlung
  • Antwortformatierung (JSON/Markdown)
  • Paginierungsunterstützung

2.3 Tools implementieren

Für jedes Tool:

Eingabeschema:

  • Verwenden Sie Zod (TypeScript) oder Pydantic (Python)
  • Fügen Sie Einschränkungen und klare Beschreibungen ein
  • Fügen Sie Beispiele in Feldbeschreibungen ein

Ausgabeschema:

  • Definieren Sie nach Möglichkeit outputSchema für strukturierte Daten
  • Verwenden Sie structuredContent in Tool-Antworten (TypeScript-SDK-Funktion)
  • Hilft Clients, Tool-Ausgaben zu verstehen und zu verarbeiten

Tool-Beschreibung:

  • Prägnante Zusammenfassung der Funktionalität
  • Parameterbeschreibungen
  • Rückgabetypschema

Implementierung:

  • Async/await für I/O-Operationen
  • Ordnungsgemäße Fehlerbehandlung mit umsetzbaren Nachrichten
  • Paginierung unterstützen, wo zutreffend
  • Sowohl Textinhalt als auch strukturierte Daten zurückgeben, wenn moderne SDKs verwendet werden

Annotationen:

  • readOnlyHint: wahr/falsch
  • destructiveHint: wahr/falsch
  • idempotentHint: wahr/falsch
  • openWorldHint: wahr/falsch

Phase 3: Überprüfen und Testen

3.1 Code-Qualität

Überprüfen auf:

  • Keinen doppelten Code (DRY-Prinzip)
  • Einheitliche Fehlerbehandlung
  • Vollständige Typabdeckung
  • Klare Tool-Beschreibungen

3.2 Builden und Testen

TypeScript:

  • Führen Sie npm run build aus, um die Kompilierung zu überprüfen
  • Testen Sie mit dem MCP Inspector: npx @modelcontextprotocol/inspector

Python:

  • Syntax überprüfen: python -m py_compile your_server.py
  • Testen Sie mit dem MCP Inspector

Siehe sprachspezifische Anleitungen für detaillierte Testansätze und Qualitätschecklisten.


Phase 4: Auswertungen erstellen

Erstellen Sie nach der Implementierung Ihres MCP-Servers umfassende Auswertungen, um seine Effektivität zu testen.

Laden Sie den ✅ Auswertungsleitfaden für vollständige Richtlinien zur Auswertung.

4.1 Zweck der Auswertung verstehen

Verwenden Sie Auswertungen, um zu testen, ob LLMs Ihren MCP-Server effektiv nutzen können, um realistische, komplexe Fragen zu beantworten.

4.2 10 Auswertungsfragen erstellen

Um effektive Auswertungen zu erstellen, befolgen Sie den im Auswertungsleitfaden beschriebenen Prozess:

  1. Tool-Inspektion: Verfügbare Tools auflisten und ihre Fähigkeiten verstehen
  2. Inhaltserkundung: Verwenden Sie SCHREIBGESCHÜTZTE Operationen, um verfügbare Daten zu erkunden
  3. Fragengenerierung: Erstellen Sie 10 komplexe, realistische Fragen
  4. Antwortüberprüfung: Lösen Sie jede Frage selbst, um die Antworten zu überprüfen

4.3 Auswertungsanforderungen

Stellen Sie sicher, dass jede Frage:

  • Unabhängig: Nicht von anderen Fragen abhängig
  • Schreibgeschützt: Nur nicht-destruktive Operationen erforderlich
  • Komplex: Mehrere Tool-Aufrufe und tiefgehende Erkundung erforderlich
  • Realistisch: Basierend auf realen Anwendungsfällen, die Menschen interessieren
  • Überprüfbar: Einzige, klare Antwort, die durch Zeichenfolgenvergleich überprüft werden kann
  • Stabil: Die Antwort ändert sich im Laufe der Zeit nicht

4.4 Ausgabeformat

Erstellen Sie eine XML-Datei mit dieser Struktur:

<evaluation>
  <qa_pair>
    <question>Finden Sie Diskussionen über KI-Modellveröffentlichungen mit Tier-Codenamen. Ein Modell benötigte eine spezifische Sicherheitsbezeichnung im Format ASL-X. Welche Nummer X wurde für das nach einer gefleckten Wildkatze benannte Modell bestimmt?</question>
    <answer>3</answer>
  </qa_pair>
<!-- Weitere qa_pairs... -->
</evaluation>

Referenzdateien

📚 Dokumentationsbibliothek

Laden Sie diese Ressourcen bei Bedarf während der Entwicklung:

Kern-MCP-Dokumentation (zuerst laden)

  • MCP-Protokoll: Beginnen Sie mit der Sitemap unter https://modelcontextprotocol.io/sitemap.xml, rufen Sie dann bestimmte Seiten mit der .md-Endung ab
  • 📋 MCP Best Practices - Universelle MCP-Richtlinien, einschließlich:
    • Konventionen zur Benennung von Servern und Tools
    • Richtlinien zum Antwortformat (JSON vs. Markdown)
    • Best Practices für die Paginierung
    • Transportauswahl (streamable HTTP vs. stdio)
    • Sicherheits- und Fehlerbehandlungsstandards

SDK-Dokumentation (während Phase 1/2 laden)

  • Python-SDK: Abrufen von https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md
  • TypeScript-SDK: Abrufen von https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md

Sprachspezifische Implementierungsleitfäden (während Phase 2 laden)

  • 🐍 Python-Implementierungsleitfaden - Vollständiger Python/FastMCP-Leitfaden mit:

    • Server-Initialisierungsmustern
    • Pydantic-Modellbeispielen
    • Tool-Registrierung mit @mcp.tool
    • Vollständigen funktionierenden Beispielen
    • Qualitätscheckliste
  • ⚡ TypeScript-Implementierungsleitfaden - Vollständiger TypeScript-Leitfaden mit:

    • Projektstruktur
    • Zod-Schema-Mustern
    • Tool-Registrierung mit server.registerTool
    • Vollständigen funktionierenden Beispielen
    • Qualitätscheckliste

Auswertungsleitfaden (während Phase 4 laden)

  • ✅ Auswertungsleitfaden - Vollständiger Leitfaden zur Erstellung von Auswertungen mit:
    • Richtlinien zur Fragenerstellung
    • Strategien zur Antwortüberprüfung
    • XML-Formatspezifikationen
    • Beispielfragen und -antworten
    • Durchführen einer Auswertung mit den bereitgestellten Skripten

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

David-Li0406/meta-skill-evloving

Browser automation with persistent page state. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", or any browser interaction request.

David-Li0406/meta-skill-evloving

Create technical diagrams using Mermaid syntax for architecture, sequences, ERDs, flowcharts, and state machines. Use for visualizing system design, data flows, and processes. Triggers: diagram, mermaid, architecture diagram, sequence diagram, flowchart, ERD, entity relationship, state diagram, C4 model, component diagram, visualize, draw.

David-Li0406/meta-skill-evloving

Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks

David-Li0406/meta-skill-evloving

Complete color manipulation and green screen effects system. PROACTIVELY activate for: (1) Green screen/chromakey removal, (2) Color grading with LUTs, (3) Color correction (levels, curves, white balance), (4) Colorkey/color removal effects, (5) Hue/saturation manipulation, (6) Color space conversions (BT.709, BT.2020, HDR), (7) Color isolation effects, (8) Teal and orange look, (9) Vintage/film looks, (10) Color keying for transparency. Provides: chromakey and colorkey filters, LUT application (lut3d), curves and levels adjustment, color balance, selective color manipulation, color space handling, HDR tone mapping, professional color grading chains.

David-Li0406/meta-skill-evloving

Convert files and office documents to Markdown. Supports PDF, DOCX, PPTX, XLSX, images (with OCR), audio (with transcription), HTML, CSV, JSON, XML, ZIP, YouTube URLs, EPubs and more.

David-Li0406/meta-skill-evloving

Build with OpenAI's stateless APIs - Chat Completions (GPT-5, GPT-4o), Embeddings, Images (DALL-E 3), Audio (Whisper + TTS), and Moderation. Includes Node.js SDK and fetch-based approaches for Cloudflare Workers. Use when: implementing chat completions with GPT-5/GPT-4o, streaming responses with SSE, using function calling/tools, creating structured outputs with JSON schemas, generating embeddings for RAG (text-embedding-3-small/large), generating images with DALL-E 3, editing images with GPT-Image-1, transcribing audio with Whisper, synthesizing speech with TTS (11 voices), moderating content (11 safety categories), or troubleshooting rate limits (429), invalid API keys (401), function calling failures, streaming parse errors, embeddings dimension mismatches, or token limit exceeded.

David-Li0406/meta-skill-evloving

Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.

David-Li0406/meta-skill-evloving

Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks

David-Li0406/meta-skill-evloving

Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas

David-Li0406/meta-skill-evloving

Download YouTube videos with customizable quality and format options. Use this skill when the user asks to download, save, or grab YouTube videos. Supports various quality settings (best, 1080p, 720p, 480p, 360p), multiple formats (mp4, webm, mkv), and audio-only downloads as MP3.

David-Li0406/meta-skill-evloving

Best practices for Remotion - Video creation in React

David-Li0406/meta-skill-evloving

Provides bidirectional translation (Chinese/English), grammar checking, and sentence polishing. Supports specific tense constraints, context-aware tone adjustment, and natural expression optimization. Outputs direct text without formatting.

David-Li0406/meta-skill-evloving

指导如何通过自定义注解(如@Unicom)标识Dubbo接口,利用BeanDefinitionRegistryPostProcessor在启动时扫描并动态注册ReferenceBean,实现RPC调用的封装。

David-Li0406/meta-skill-evloving

生成Python脚本,利用FFmpeg将图片序列按3x3布局合并,或将合并图拆分。要求使用subprocess模块执行命令,并支持用户交互式输入路径。

David-Li0406/meta-skill-evloving

SOP for extracting and analyzing promotional activity details, handling time formatting, location mapping, payment logic, and step-by-step process validation.

David-Li0406/meta-skill-evloving

Specializes in creating TikTok short video scripts using an anthropomorphic 'Chef' perspective to explain wildlife food chains and survival environments, utilizing real field footage.

David-Li0406/meta-skill-evloving

针对TikTok平台,以拟人化视角(如动物作为厨师)创作系列短视频脚本。重点介绍野生动物、食物链及生态环境,要求使用野外实拍素材,风格幽默且具有教育意义。

David-Li0406/meta-skill-evloving

Generates KWL (Know, Want to know, Learned) charts for educational videos, specifically BrainPOP, using simple 7th-grade language and short, concise bullet points.

David-Li0406/meta-skill-evloving

Develops DAX measures to calculate promo and regular volumes and generates a calculated table of dates excluding continuous promo date ranges, handling multiple periods and nulls.

David-Li0406/meta-skill-evloving

Tracks complex, multi-session work using the Beads issue tracker and dependency graphs, and provides persistent memory that survives conversation compaction. Use when work spans multiple sessions, has complex dependencies, or needs persistent context across compaction cycles. Trigger with phrases like "create task for", "what's ready to work on", "show task", "track this work", "what's blocking", or "update status".

Verwandte Skills