Strapi MCP Server
Strapi MCP
Ein MCP-Server für Strapi CMS, der Zugriff auf Inhaltstypen und Einträge über das Model Context Protocol bietet.
Überblick
Dieser MCP-Server lässt sich in jede Strapi CMS-Instanz integrieren und bietet:
Zugriff auf Strapi-Inhaltstypen als Ressourcen
Tools zum Erstellen und Aktualisieren von Inhaltstypen in Strapi
Tools zum Verwalten von Inhaltseinträgen (Erstellen, Lesen, Aktualisieren, Löschen)
Unterstützung für Strapi im Entwicklungsmodus
Related MCP server: Strapi Content MCP
Aufstellen
Umgebungsvariablen
Es wird empfohlen, zum Speichern Ihrer Anmeldeinformationen eine .env Datei im Projektstamm zu verwenden.
STRAPI_URL: Die URL Ihrer Strapi-Instanz (Standard:http://localhost:1337)STRAPI_ADMIN_EMAIL: Die E-Mail-Adresse eines Strapi-Administratorbenutzers (empfohlen für die volle Funktionalität, insbesondere Schemazugriff).STRAPI_ADMIN_PASSWORD: Das Passwort für den Strapi-Administratorbenutzer (empfohlen).STRAPI_API_TOKEN: (Optionaler Fallback) Ein API-Token. Kann verwendet werden, wenn keine Administratoranmeldeinformationen angegeben sind, hat aber möglicherweise eingeschränkte Berechtigungen.STRAPI_DEV_MODE: Auf"true"setzen, um die Funktionen des Entwicklungsmodus zu aktivieren (Standard istfalse“).
Beispiel .env Datei:
STRAPI_URL=http://localhost:1337
STRAPI_ADMIN_EMAIL=your_admin_email@example.com
STRAPI_ADMIN_PASSWORD=your_admin_password
# STRAPI_API_TOKEN=your_api_token_here # OptionalWichtig: Fügen Sie Ihrer .gitignore Datei .env hinzu, um die Übermittlung von Anmeldeinformationen zu vermeiden.
Installation
npm install strapi-mcpLäuft
Empfohlene Methode (mithilfe der Cursor-MCP-Konfiguration):
Cursor-Benutzer konfigurieren den Strapi-MCP-Server in ihrer Datei ~/.cursor/mcp.json :
"strapi-mcp": {
"command": "node",
"args": ["/path/to/strapi-mcp/build/index.js"],
"env": {
"STRAPI_URL": "http://localhost:1337",
"STRAPI_ADMIN_EMAIL": "your_admin_email@example.com",
"STRAPI_ADMIN_PASSWORD": "your_admin_password"
}
}Cursor verwaltet den Server-Lebenszyklus automatisch, wenn Strapi-MCP-Tools verwendet werden.
Alternative Methode (mithilfe .env Datei):
Stellen Sie sicher, dass Sie das Projekt erstellt haben ( npm run build ). Führen Sie anschließend den Server mit Node.js v20.6.0+ und dem Flag --env-file aus:
node --env-file=.env build/index.jsAlternative (direkte Verwendung von Umgebungsvariablen):
export STRAPI_URL=http://localhost:1337
export STRAPI_ADMIN_EMAIL=your_admin_email@example.com
export STRAPI_ADMIN_PASSWORD=your_admin_password
# export STRAPI_API_TOKEN=your-api-token # Optional fallback
export STRAPI_DEV_MODE=true # optional
# Run the globally installed package (if installed via npm install -g)
strapi-mcp
# Or run the local build directly
node build/index.jsMerkmale
Auflisten und Lesen von Inhaltstypen
Einträge abrufen, erstellen, aktualisieren und löschen
Mediendateien hochladen
Verbinden und Trennen von Beziehungen
Abrufen von Inhaltstypschemata
Änderungsprotokoll
0.1.6
Tool
create_content_typehinzugefügt: Ermöglicht das Erstellen neuer Inhaltstypen über die Content-Type Builder-API (erfordert Administratoranmeldeinformationen).Priorisierte Administratoranmeldeinformationen: Aktualisierte Logik, um beim Abrufen von Inhaltstypen und Schemata die E-Mail-Adresse/das Kennwort des Administrators zu bevorzugen und so die Zuverlässigkeit zu verbessern.
Aktualisierte Dokumentation: Verdeutlichte Authentifizierungsmethoden und empfohlene Ausführungsverfahren.
0,1,5
Verbesserte Inhaltstyperkennung mit mehreren Fallback-Methoden
Robustere Fehlerbehandlung und Protokollierung hinzugefügt
Verbesserte Schemainferenz für Inhaltstypen
0.1.4
Verbesserte Fehlerbehandlung mit spezifischeren Fehlercodes
Fehlercodes
ResourceNotFoundundAccessDeniedhinzugefügtBessere Fehlermeldungen für häufige API-Fehler
0.1.3
Erste öffentliche Veröffentlichung
Lizenz
MIT
strapi-mcp MCP-Server
Ein MCP-Server für Ihr Strapi CMS
Dies ist ein TypeScript-basierter MCP-Server, der in Strapi CMS integriert ist. Er bietet Zugriff auf Strapi-Inhaltstypen und -Einträge über das MCP-Protokoll und ermöglicht Ihnen Folgendes:
Greifen Sie auf Strapi-Inhaltstypen als Ressourcen zu
Inhaltseinträge erstellen, lesen, aktualisieren und löschen
Verwalten Sie Ihre Strapi-Inhalte über MCP-Tools
Merkmale
Ressourcen
Auflisten und Zugreifen auf Inhaltstypen über
strapi://content-type/-URIsJeder Inhaltstyp stellt seine Einträge als JSON bereit
Anwendungs-/JSON-MIME-Typ für strukturierten Inhaltszugriff
Werkzeuge
list_content_types– Listet alle verfügbaren Inhaltstypen in Strapi aufget_entries- Abrufen von Einträgen für einen bestimmten Inhaltstyp mit optionaler Filterung, Paginierung, Sortierung und Auffüllung von Beziehungenget_entry- Einen bestimmten Eintrag per ID abrufencreate_entry- Einen neuen Eintrag für einen Inhaltstyp erstellenupdate_entry- Einen vorhandenen Eintrag aktualisierendelete_entry- Einen Eintrag löschenupload_media- Laden Sie eine Mediendatei auf Strapi hochget_content_type_schema– Ruft das Schema (Felder, Typen, Beziehungen) für einen bestimmten Inhaltstyp ab.connect_relation– Verbindet verwandte Einträge mit dem Relationsfeld eines Eintrags.disconnect_relation– Trennen Sie verwandte Einträge vom Beziehungsfeld eines Eintrags.create_content_type– Erstellen Sie einen neuen Inhaltstyp mithilfe der Content-Type Builder-API (erfordert Administratorrechte).publish_entry– Veröffentlichen Sie einen bestimmten Eintrag.unpublish_entry– Veröffentlichung eines bestimmten Eintrags rückgängig machen.list_components– Listet alle verfügbaren Komponenten in Strapi auf.get_component_schema– Ruft das Schema für eine bestimmte Komponente ab.create_component– Erstellen Sie eine neue Komponente.update_component– Aktualisieren Sie eine vorhandene Komponente.
Erweiterte Funktionen
Filtern, Paginieren und Sortieren
Das Tool get_entries unterstützt erweiterte Abfrageoptionen:
{
"contentType": "api::article.article",
"filters": {
"title": {
"$contains": "hello"
}
},
"pagination": {
"page": 1,
"pageSize": 10
},
"sort": ["title:asc", "createdAt:desc"],
"populate": ["author", "categories"]
}Ressourcen-URIs
Auf Ressourcen kann mit verschiedenen URI-Formaten zugegriffen werden:
strapi://content-type/api::article.article– Alle Artikel abrufenstrapi://content-type/api::article.article/1– Artikel mit der ID 1 abrufenstrapi://content-type/api::article.article?filters={"title":{"$contains":"hello"}}– Gefilterte Artikel abrufen
Veröffentlichen und Aufheben der Veröffentlichung von Inhalten
Die Tools publish_entry und unpublish_entry ermöglichen die Kontrolle über den Lebenszyklus von Inhalten:
{
"contentType": "api::article.article",
"id": "1"
}Diese Tools verwenden die Admin-API-Pfade für Veröffentlichungs-/Aufhebungsaktionen und bieten die Möglichkeit, das Feld publishedAt direkt zu aktualisieren, wenn keine Administratorberechtigungen verfügbar sind.
Komponentenverwaltung
Strapi-Komponenten können mit den folgenden Tools verwaltet werden:
list_components: Alle verfügbaren Komponenten abrufenget_component_schema: Zeigen Sie die Struktur einer bestimmten Komponente ancreate_component: Erstellen Sie eine neue Komponente mit angegebenen Feldernupdate_component: Eine vorhandene Komponente ändern
Beispiel für die Erstellung einer Komponente:
{
"componentData": {
"displayName": "Security Settings",
"category": "security",
"icon": "shield",
"attributes": {
"enableTwoFactor": {
"type": "boolean",
"default": false
},
"passwordExpiration": {
"type": "integer",
"min": 0
}
}
}
}Entwicklung
Installieren Sie Abhängigkeiten:
npm installErstellen Sie den Server:
npm run buildFür die Entwicklung mit automatischem Rebuild:
npm run watchInstallation
Ausführliche Schritt-für-Schritt-Anleitungen zum Bereitstellen und Testen dieses MCP-Servers finden Sie in der Datei DEPLOYMENT.md .
Schnelle Einrichtung:
Erstellen Sie den Server:
npm run buildKonfigurieren Sie Ihre Strapi-Instanz und erhalten Sie ein API-Token
Fügen Sie die Serverkonfiguration zu Claude Desktop hinzu:
Unter MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json Unter Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"strapi-mcp": {
"command": "/path/to/strapi-mcp/build/index.js",
"env": {
"STRAPI_URL": "http://localhost:1337",
"STRAPI_API_TOKEN": "your-api-token-here",
"STRAPI_DEV_MODE": "false"
}
}
}
}Umgebungsvariablen
STRAPI_URL(optional): Die URL Ihrer Strapi-Instanz (standardmäßig http://localhost:1337 )STRAPI_ADMIN_EMAIL&STRAPI_ADMIN_PASSWORD(empfohlen): Anmeldeinformationen für einen Strapi-Administrator. Erforderlich für die volle Funktionalität, z. B. das Abrufen von Inhaltstypschemata.STRAPI_API_TOKEN(Optionaler Fallback): Ihr Strapi-API-Token. Kann verwendet werden, wenn keine Administratoranmeldeinformationen angegeben sind. Die Funktionalität kann jedoch je nach Tokenberechtigung eingeschränkt sein.STRAPI_DEV_MODE(optional): Auf „true“ setzen, um die Funktionen des Entwicklungsmodus zu aktivieren (Standard ist „false“)
Authentifizierungspriorität
Der Server priorisiert Authentifizierungsmethoden in dieser Reihenfolge:
E-Mail und Passwort des Administrators (
STRAPI_ADMIN_EMAIL,STRAPI_ADMIN_PASSWORD)API-Token (
STRAPI_API_TOKEN)
Für optimale Ergebnisse wird dringend empfohlen, Administratoranmeldeinformationen zu verwenden.
Strapi-Anmeldeinformationen erhalten
Administratoranmeldeinformationen: Verwenden Sie die E-Mail-Adresse und das Kennwort eines vorhandenen Superadministrators oder erstellen Sie einen dedizierten Administratorbenutzer in Ihrem Strapi-Administrationsbereich (Einstellungen > Administrationsbereich > Benutzer).
API-Token: (Optionaler Fallback)
Melden Sie sich bei Ihrem Strapi-Administrationsbereich an
Gehen Sie zu Einstellungen > API-Token
Klicken Sie auf „Neues API-Token erstellen“.
Legen Sie einen Namen, eine Beschreibung und einen Token-Typ fest (vorzugsweise „Vollzugriff“)
Kopieren Sie das generierte Token und verwenden Sie es in Ihrer MCP-Serverkonfiguration
Debuggen
Da MCP-Server über stdio kommunizieren, kann das Debuggen eine Herausforderung darstellen. Wir empfehlen die Verwendung des MCP Inspector , der als Paketskript verfügbar ist:
npm run inspectorDer Inspector stellt eine URL für den Zugriff auf Debugging-Tools in Ihrem Browser bereit.
Anwendungsbeispiele
Sobald der MCP-Server konfiguriert und betriebsbereit ist, können Sie ihn zusammen mit Claude zur Interaktion mit Ihrem Strapi CMS verwenden. Hier einige Beispiele:
Auflisten von Inhaltstypen
use_mcp_tool(
server_name: "strapi-mcp",
tool_name: "list_content_types",
arguments: {}
)Einträge erhalten
use_mcp_tool(
server_name: "strapi-mcp",
tool_name: "get_entries",
arguments: {
"contentType": "api::article.article",
"filters": {
"title": {
"$contains": "hello"
}
},
"pagination": {
"page": 1,
"pageSize": 10
},
"sort": ["title:asc"]
}
)Einen Eintrag erstellen
use_mcp_tool(
server_name: "strapi-mcp",
tool_name: "create_entry",
arguments: {
"contentType": "api::article.article",
"data": {
"title": "My New Article",
"content": "This is the content of my article.",
"publishedAt": "2023-01-01T00:00:00.000Z"
}
}
)Hochladen von Medien
use_mcp_tool(
server_name: "strapi-mcp",
tool_name: "upload_media",
arguments: {
"fileData": "base64-encoded-data-here",
"fileName": "image.jpg",
"fileType": "image/jpeg"
}
)Beziehungen verbinden
use_mcp_tool(
server_name: "strapi-mcp",
tool_name: "connect_relation",
arguments: {
"contentType": "api::article.article",
"id": "1",
"relationField": "authors",
"relatedIds": [2, 3]
}
)Trennung von Beziehungen
use_mcp_tool(
server_name: "strapi-mcp",
tool_name: "disconnect_relation",
arguments: {
"contentType": "api::article.article",
"id": "1",
"relationField": "authors",
"relatedIds": [3]
}
)Erstellen eines Inhaltstyps
use_mcp_tool(
server_name: "strapi-mcp-local",
tool_name: "create_content_type",
arguments: {
"displayName": "My New Product",
"singularName": "product",
"pluralName": "products",
"kind": "collectionType",
"description": "Represents products in the store",
"draftAndPublish": true,
"attributes": {
"name": { "type": "string", "required": true },
"description": { "type": "text" },
"price": { "type": "decimal", "required": true },
"stock": { "type": "integer" }
}
}
)Aktualisieren eines Inhaltstyps
use_mcp_tool(
server_name: "strapi-mcp-local",
tool_name: "update_content_type",
arguments: {
"contentType": "api::speaker.speaker",
"attributes": {
"isHighlightSpeaker": {
"type": "boolean",
"default": false
},
"newTextField": {
"type": "string"
}
}
}
)Zugriff auf Ressourcen
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
- Alicense-qualityDmaintenanceEnables AI assistants to interact with Strapi CMS instances through REST API operations. Supports content management, media uploads, schema introspection, and multiple server configurations with JWT authentication.14MIT
- Alicense-qualityDmaintenanceEnables AI assistants to interact directly with Strapi v5 CMS content through full CRUD operations, media uploads, and content type exploration using Strapi's Document Service API.1201MIT
- Flicense-qualityDmaintenanceEnables CRUD operations, content management, and media handling for any Strapi content type through standardized tools. Supports internationalization, schema management, and works with Strapi v5's API.
- Flicense-quality-maintenanceProvides AI agents with full access to Strapi 5.x CMS for managing content types, entries, media, and schemas. It supports full CRUD operations, relation management, and secure authentication for comprehensive content administration.
Related MCP Connectors
Manage SRG+ hubs, channels, content, assets, users, and workspaces from any MCP-aware AI agent.
Create and manage Lindo AI websites, pages, blogs, clients, and credits from any MCP client.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
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/l33tdawg/strapi-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server