Deine Prompts überall nutzen: Der MCP-Server
Deine Bibliothek muss nicht im Browser-Tab bleiben. Prompt2Love betreibt einen Remote-Server für das Model Context Protocol (MCP) unter https://prompt2love.com/api/mcp, mit dem Claude Code, Claude Desktop, ChatGPT, Cursor und Windsurf deine eigenen Prompts und Skills durchsuchen und direkt in einen Chat holen können. Die Verbindung ist mit OAuth 2.1 und PKCE abgesichert - du meldest dich an und erlaubst den Zugriff, statt API-Keys hin und her zu kopieren. Und das Ganze ist in jedem Plan enthalten, auch im kostenlosen.
Der /prompt-Slash-Befehl
Gib einen Suchbegriff ein (1 bis 200 Zeichen), und der Befehl gleicht ihn mit deinen Prompts über Titel, Beschreibung, Inhalt und Tags ab. Passt genau ein Prompt, wird er sofort eingefügt - mit deutscher Kopfzeile «Hier is mein Prompt „[Titel]" aus prompt2love…» und einem (importiert)-Hinweis, falls es sich um einen Fork handelt. Passen mehrere, erhältst du eine auswählbare Liste von bis zu 8 Titeln samt Beschreibungen und IDs und lädst den gewünschten über get_prompt. Kein Treffer liefert eine kurze Wiederholungsmeldung. Enthält der eingefügte Prompt {{variablen}}, wird ein deutscher Hinweis angehängt, der dem KI-Agenten sagt, dich vor der Nutzung nach den Werten zu fragen. Wie du den Befehl aufrufst, hängt vom Client ab.
- Suchbegriff 1 bis 200 Zeichen; gleicht Titel, Beschreibung, Inhalt und Tags ab (Gross-/Kleinschreibung egal)
- Ein Treffer wird sofort eingefügt; bis zu 8 Treffer erscheinen als auswählbare Liste; kein Treffer liefert eine Wiederholungsmeldung
- Bei {{variablen}} im Prompt wird ein deutscher Variablen-Hinweis angehängt
- Aufruf: Claude Code nutzt /mcp__prompt2love__prompt, Claude Desktop und ChatGPT nutzen /prompt
- Alle Antworten erfolgen auf Deutsch
Bibliothekstools: Prompts und Skills suchen, auflisten und abrufen
search_my_prompts gleicht deine Prompts per Stichwort ab und gibt nur Metadaten zurück. list_my_prompts listet deine Prompts mit optionalen Filtern für Tag, KI-Tool oder Favoriten samt Paginierung. get_prompt ruft den vollständigen Inhalt eines einzelnen Prompts per ID ab (ersatzweise per Slug). list_my_skills und get_skill machen dasselbe für Skills. Jedes Tool prüft per Eigentumsprüfung (ownsRow) erneut, dass der Datensatz dir gehört - ein Client erreicht also immer nur deine eigenen Inhalte, und alle fünf sind in jedem Plan verfügbar. Wenn get_prompt oder get_skill den vollständigen Inhalt zurückgibt, umschliesst es ihn mit Markierungen für nicht vertrauenswürdige Daten und einem UNTRUSTED_CONTENT_NOTICE - so behandelt die KI importierte oder geforkte Inhalte als zu lesende Daten, nicht als auszuführende Anweisungen. Das ist ein eingebauter Schutz gegen Prompt Injection.
- search_my_prompts: Suchbegriff bis 200 Zeichen, Limit 1 bis 50 (Standard 20), nur Metadaten
- list_my_prompts: Filter für Tag, KI-Tool oder Favorit, Limit 1 bis 100 (Standard 50), mit Offset, nur Metadaten
- get_prompt / get_skill: per ID (ersatzweise per Slug), voller Inhalt mit Markierung für nicht vertrauenswürdige Daten plus Herkunft (isImported, sourceUrl)
- list_my_skills: keine Parameter, nur Metadaten
- Alle Tools mit Eigentumsprüfung (ownsRow), beschränkt auf den angemeldeten Nutzer
ChatGPT-konforme search- und fetch-Tools
Damit sich die Tools so verhalten, wie ChatGPT-Connectoren es erwarten, nimmt search einen Suchbegriff (1 bis 200 Zeichen) und gleicht ihn als Teilstring sowohl mit Prompts (Titel, Beschreibung, Inhalt, Tags) als auch mit Skills (Titel, Beschreibung, Instruktionen, Tags) ab und liefert bis zu 20 kombinierte Ergebnisse. Jedes Ergebnis trägt eine ID mit Präfix 'prompt:' oder 'skill:', einen Auszug von etwa 200 Zeichen und eine url. fetch nimmt eine ID (das Präfix ist optional und steht standardmässig für einen Prompt) und gibt den vollständigen Inhalt ohne Markierung zurück - hier holst du nämlich deinen eigenen Inhalt, um ihn zu nutzen, abgesichert durch die Eigentumsprüfung und einen Quellen-Metadaten-Hinweis statt durch eine Markierung.
- search: Prompts und Skills kombiniert, bis zu 20 Ergebnisse, IDs mit Präfix 'prompt:' oder 'skill:', mit Auszug und url
- fetch: per präfixierter ID (Standard: Prompt), voller Inhalt ohne Markierung, metadata.source = "user's own prompt2love library"
- SITE_URL-Konstante: https://prompt2love.com; jeder Aufruf mit Eigentumsprüfung
Autorisierung mit OAuth 2.1 + PKCE
Verbindet sich ein Client zum ersten Mal, liefert eine nicht authentifizierte Anfrage einen 401 mit einem WWW-Authenticate-Header, der auf die Discovery-Metadaten verweist (/.well-known/oauth-protected-resource führt zu /.well-known/oauth-authorization-server); Dynamic Client Registration wird unterstützt. Du landest auf der gebrandeten deutschen Zustimmungsseite unter /dashboard/mcp/consent, die den Consent-Code, die Client-ID und den Scope library:read zeigt, und klickst «Erlauben» oder «Ablehnen». Der Client erfasst dann den Autorisierungscode und tauscht ihn gegen ein Token. Jede weitere MCP-Anfrage prüft das Token erneut über getMcpSession(), kontrolliert dessen Ablauf und weist gesperrte Konten ab. Tokens werden serverseitig in oauthAccessTokens gespeichert, deine Zustimmungen in oauthConsents.
- OAuth 2.1 mit PKCE, kein Implicit Flow; Dynamic Client Registration über Discovery-Endpunkte
- Zustimmungsseite unter /dashboard/mcp/consent (Deutsch); Buttons «Erlauben» / «Ablehnen»; Scope library:read (nur lesend)
- Prüfung pro Anfrage über getMcpSession(); Ablauf kontrolliert; gesperrte Konten (isSuspended) abgewiesen
- Tokens in oauthAccessTokens, Zustimmungen in oauthConsents gespeichert
Verbindungsverwaltung
Der MCP-Bereich deines Dashboards listet deine aktiven OAuth-Tokens über GET /api/mcp/connections auf und zeigt Client-ID, App-Name, gewährte Scopes sowie das gebietsschema-formatierte Verbindungs- und Ablaufdatum. Ein grüner Punkt steht für eine aktive Verbindung, ein grauer für keine. Ein einziger «Disconnect all»-Button (DELETE /api/mcp/connections) löscht alle deine oauthAccessTokens und oauthConsents auf einmal, sodass du jeden Client in einem Schritt trennen kannst. Das ist in allen Plänen verfügbar.
- GET /api/mcp/connections listet aktive Sitzungen (clientId, appName, scopes, createdAt, expiresAt)
- DELETE /api/mcp/connections widerruft ALLE deine Tokens und Zustimmungen auf einmal
- Daten gebietsschema-formatiert (de-DE / en-US); grüner Punkt bei bestehender Verbindung
- In allen Plänen verfügbar
Unterstützte Clients & Verfügbarkeit
Alles läuft über einen Remote-Endpunkt, https://prompt2love.com/api/mcp, den du pro Client registrierst. Claude Code nutzt den CLI-Befehl 'claude mcp add --transport http prompt2love https://prompt2love.com/api/mcp'. Claude Desktop verbindet sich über Einstellungen, dann Connectors, und benötigt einen kostenpflichtigen Plan. ChatGPT verbindet sich über Einstellungen, dann Connectors, mit aktiviertem Developer Mode und benötigt einen Plus-, Pro-, Team- oder Enterprise-Plan. Cursor liest den Endpunkt aus ~/.cursor/mcp.json als {url}-Eintrag, Windsurf aus seiner MCP-Konfiguration als {serverUrl}-Eintrag. Jeder Client durchläuft beim ersten Verbinden einmal OAuth, danach funktionieren die Tools einfach. Auf Seiten von Prompt2Love gibt es keine Plan-Beschränkung - nur Kontosperrung und der allgemeine /api-Rate-Limiter greifen. Die genannten Anforderungen (kostenpflichtiges Claude Desktop, ChatGPT ab Plus) kommen also von diesen Clients, nicht von uns.
- Endpunkt: https://prompt2love.com/api/mcp (HTTP-Transport, nicht stdio)
- Claude Code: CLI-Add-Befehl; Cursor: mcp.json {url}; Windsurf: Konfiguration {serverUrl}
- Claude Desktop benötigt einen kostenpflichtigen Plan; ChatGPT benötigt Plus oder höher und Developer Mode
- Keine Plan-Beschränkung für MCP (kostenlos inklusive); gesperrte Konten werden blockiert; vom /api-Rate-Limiter abgedeckt