Prompts in MCP-Servern ermöglichen es dir, vorgefertigte, hochwertige Anweisungen zu definieren, die Clients verwenden können, anstatt ihre eigenen Prompts von Grund auf zu schreiben. Betrachte sie als sorgfältig ausgearbeitete Vorlagen, die bessere Ergebnisse liefern als das, was Nutzer selbst erstellen könnten.
Warum Prompts verwenden?
Angenommen, du möchtest, dass Claude ein Dokument in Markdown umformatiert. Ein Nutzer könnte einfach „convert report.pdf to markdown" eingeben, und das würde gut funktionieren. Aber er würde wahrscheinlich viel bessere Ergebnisse mit einem gründlich getesteten Prompt erzielen, der spezifische Anweisungen zu Formatierung, Struktur und Ausgabeanforderungen enthält.

Die zentrale Erkenntnis ist, dass Nutzer diese Aufgaben zwar selbst bewältigen können, aber konsistentere und hochwertigere Ergebnisse erzielen, wenn sie Prompts verwenden, die von den Autoren des MCP-Servers sorgfältig entwickelt und getestet wurden.
Wie Prompts funktionieren
Prompts definieren eine Reihe von Nutzer- und Assistenten-Nachrichten, die Clients direkt verwenden können. Wenn ein Client einen Prompt anfordert, gibt dein Server eine Liste von Nachrichten zurück, die direkt an Claude gesendet werden können.

Die grundlegende Struktur sieht folgendermaßen aus:
- Definiere Prompts mit dem Decorator
@mcp.prompt() - Füge für jeden Prompt einen Namen und eine Beschreibung hinzu
- Gib eine Liste von Nachrichten zurück, die den vollständigen Prompt bilden
- Diese Prompts sollten hochwertig, gut getestet und relevant für den Zweck deines MCP-Servers sein
Einen Format-Befehl erstellen
So implementierst du einen Prompt zur Dokumentformatierung. Zunächst musst du die grundlegenden Nachrichtentypen importieren:
from mcp.server.fastmcp.prompts import baseDefiniere dann deine Prompt-Funktion:
@mcp.prompt(
name="format",
description="Rewrites the contents of the document in Markdown format."
)
def format_document(
doc_id: str = Field(description="Id of the document to format")
) -> list[base.Message]:
prompt = f"""
Your goal is to reformat a document to be written with markdown syntax.
The id of the document you need to reformat is:
{doc_id}
Add in headers, bullet points, tables, etc as necessary. Feel free to add in extra formatting.
Use the 'edit_document' tool to edit the document. After the document has been reformatted...
"""
return [
base.UserMessage(prompt)
]Deine Prompts testen
Du kannst Prompts mit dem MCP Inspector testen. Navigiere zum Bereich „Prompts", wähle deinen Prompt aus und gib alle erforderlichen Parameter an. Der Inspector zeigt dir die generierten Nachrichten, die an Claude gesendet würden.

So kannst du überprüfen, ob dein Prompt Variablen korrekt interpoliert und die erwartete Nachrichtenstruktur erzeugt, bevor du ihn in einer echten Anwendung einsetzt.
Best Practices
Beim Erstellen von Prompts für deinen MCP-Server:
- Konzentriere dich auf Aufgaben, die für den Zweck deines Servers zentral sind
- Schreibe detaillierte, spezifische Anweisungen statt vager Anfragen
- Teste deine Prompts gründlich mit unterschiedlichen Eingaben
- Füge klare Beschreibungen hinzu, damit Nutzer verstehen, was jeder Prompt tut
- Überlege, wie der Prompt mit den Tools und Ressourcen deines Servers zusammenarbeitet
Denke daran, dass Prompts einen Mehrwert bieten sollen, den Nutzer nicht ohne Weiteres selbst erzielen könnten – sie sollten deine Expertise in dem Bereich widerspiegeln, den dein MCP-Server abdeckt.