Skip to main content
Glama

Strapi MCP Server

Correa MCP

Un servidor MCP para Strapi CMS, que proporciona acceso a tipos de contenido y entradas a través del Protocolo de contexto de modelo.

Descripción general

Este servidor MCP se integra con cualquier instancia de Strapi CMS para proporcionar:

  • Acceso a los tipos de contenido de Strapi como recursos
  • Herramientas para crear y actualizar tipos de contenido en Strapi
  • Herramientas para gestionar entradas de contenido (crear, leer, actualizar, eliminar)
  • Soporte para Strapi en modo de desarrollo

Configuración

Variables de entorno

Se recomienda utilizar un archivo .env en la raíz del proyecto para almacenar sus credenciales.

  • STRAPI_URL : La URL de su instancia de Strapi (predeterminado: http://localhost:1337 )
  • STRAPI_ADMIN_EMAIL : La dirección de correo electrónico de un usuario administrador de Strapi (recomendado para funcionalidad completa, especialmente acceso al esquema).
  • STRAPI_ADMIN_PASSWORD : La contraseña para el usuario administrador de Strapi (recomendado).
  • STRAPI_API_TOKEN : (Respaldo opcional) Un token de API. Se puede usar si no se proporcionan credenciales de administrador, pero puede tener permisos limitados.
  • STRAPI_DEV_MODE : Establezca en "true" para habilitar las funciones del modo de desarrollo (el valor predeterminado es false ).

Ejemplo de archivo .env :

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 # Optional

Importante: agregue .env a su archivo .gitignore para evitar confirmar las credenciales.

Instalación

npm install strapi-mcp

Correr

Método recomendado (usando archivo .env ):

Asegúrate de haber compilado el proyecto ( npm run build ). Luego, ejecuta el servidor con Node.js v20.6.0+ y el parámetro --env-file :

node --env-file=.env build/index.js

Alternativa (utilizando variables de entorno directamente):

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.js

Características

  • Enumerar y leer tipos de contenido
  • Obtener, crear, actualizar y eliminar entradas
  • Subir archivos multimedia
  • Conectar y desconectar relaciones
  • Obtener esquemas de tipos de contenido

Registro de cambios

0.1.6

  • Se agregó la herramienta create_content_type : permite crear nuevos tipos de contenido a través de la API Content-Type Builder (requiere credenciales de administrador).
  • Credenciales de administrador priorizadas: se actualizó la lógica para preferir el correo electrónico y la contraseña del administrador para obtener tipos de contenido y esquemas, lo que mejora la confiabilidad.
  • Documentación actualizada: se aclararon los métodos de autenticación y se recomendaron procedimientos de ejecución.

0.1.5

  • Descubrimiento mejorado de tipos de contenido con múltiples métodos de respaldo
  • Se agregó un manejo y registro de errores más robusto
  • Inferencia de esquemas mejorada para tipos de contenido

0.1.4

  • Manejo de errores mejorado con códigos de error más específicos
  • Se agregaron los códigos de error ResourceNotFound y AccessDenied
  • Mejores mensajes de error para errores comunes de API

0.1.3

  • Lanzamiento público inicial

Licencia

Instituto Tecnológico de Massachusetts (MIT)

Servidor MCP strapi-mcp

Un servidor MCP para su Strapi CMS

Este es un servidor MCP basado en TypeScript que se integra con Strapi CMS. Proporciona acceso a los tipos de contenido y entradas de Strapi mediante el protocolo MCP, lo que permite:

  • Acceda a los tipos de contenido de Strapi como recursos
  • Crear, leer, actualizar y eliminar entradas de contenido
  • Gestiona tu contenido de Strapi a través de las herramientas MCP

Características

Recursos

  • Enumere y acceda a los tipos de contenido mediante las URI strapi://content-type/
  • Cada tipo de contenido expone sus entradas como JSON
  • Tipo MIME de aplicación/JSON para acceso a contenido estructurado

Herramientas

  • list_content_types : enumera todos los tipos de contenido disponibles en Strapi
  • get_entries : obtiene entradas para un tipo de contenido específico con filtrado, paginación, ordenamiento y población de relaciones opcionales
  • get_entry - Obtener una entrada específica por ID
  • create_entry - Crea una nueva entrada para un tipo de contenido
  • update_entry - Actualizar una entrada existente
  • delete_entry - Eliminar una entrada
  • upload_media - Sube un archivo multimedia a Strapi
  • get_content_type_schema : obtiene el esquema (campos, tipos, relaciones) para un tipo de contenido específico.
  • connect_relation - Conecta entradas relacionadas al campo de relación de una entrada.
  • disconnect_relation - Desconectar entradas relacionadas del campo de relación de una entrada.
  • create_content_type : crea un nuevo tipo de contenido utilizando la API Content-Type Builder (requiere privilegios de administrador).

Funciones avanzadas

Filtrado, paginación y ordenación

La herramienta get_entries admite opciones de consulta avanzadas:

{ "contentType": "api::article.article", "filters": { "title": { "$contains": "hello" } }, "pagination": { "page": 1, "pageSize": 10 }, "sort": ["title:asc", "createdAt:desc"], "populate": ["author", "categories"] }
URI de recursos

Se puede acceder a los recursos con varios formatos de URI:

  • strapi://content-type/api::article.article - Obtener todos los artículos
  • strapi://content-type/api::article.article/1 - Obtener el artículo con ID 1
  • strapi://content-type/api::article.article?filters={"title":{"$contains":"hello"}} - Obtener artículos filtrados

Desarrollo

Instalar dependencias:

npm install

Construir el servidor:

npm run build

Para desarrollo con reconstrucción automática:

npm run watch

Instalación

Para obtener instrucciones detalladas paso a paso sobre cómo implementar y probar este servidor MCP, consulte el archivo DEPLOYMENT.md .

Configuración rápida:

  1. Construya el servidor: npm run build
  2. Configure su instancia de Strapi y obtenga un token API
  3. Agregue la configuración del servidor a Claude Desktop:

En MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json En 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" } } } }

Variables de entorno

  • STRAPI_URL (opcional): la URL de su instancia de Strapi (el valor predeterminado es http://localhost:1337 )
  • STRAPI_ADMIN_EMAIL y STRAPI_ADMIN_PASSWORD (Recomendado): Credenciales de un usuario administrador de Strapi. Necesarias para funcionalidades completas, como la obtención de esquemas de tipos de contenido.
  • STRAPI_API_TOKEN (Respaldo opcional): Su token de la API de Strapi. Puede usarse si no se proporcionan credenciales de administrador, pero la funcionalidad podría estar limitada según los permisos del token.
  • STRAPI_DEV_MODE (opcional): Establézcalo en "verdadero" para habilitar las funciones del modo de desarrollo (el valor predeterminado es falso)

Prioridad de autenticación

El servidor prioriza los métodos de autenticación en este orden:

  1. Correo electrónico y contraseña de administrador ( STRAPI_ADMIN_EMAIL , STRAPI_ADMIN_PASSWORD )
  2. Token API ( STRAPI_API_TOKEN )

Se recomienda encarecidamente utilizar credenciales de administrador para obtener los mejores resultados.

Obtención de credenciales Strapi

  • Credenciales de administrador: utilice el correo electrónico y la contraseña de un superadministrador existente o cree un usuario administrador dedicado en su panel de administración de Strapi (Configuración > Panel de administración > Usuarios).
  • Token de API: (Respaldo opcional)
  1. Inicie sesión en su panel de administración de Strapi
  2. Vaya a Configuración > Tokens API
  3. Haga clic en "Crear nuevo token de API".
  4. Establezca un nombre, una descripción y un tipo de token (preferiblemente "Acceso completo")
  5. Copia el token generado y úsalo en la configuración de tu servidor MCP

Depuración

Dado que los servidores MCP se comunican a través de stdio, la depuración puede ser complicada. Recomendamos usar el Inspector MCP , disponible como script de paquete:

npm run inspector

El Inspector proporcionará una URL para acceder a las herramientas de depuración en su navegador.

Ejemplos de uso

Una vez configurado y en funcionamiento el servidor MCP, puede usarlo con Claude para interactuar con su CMS Strapi. Aquí tiene algunos ejemplos:

Listado de tipos de contenido

use_mcp_tool( server_name: "strapi-mcp", tool_name: "list_content_types", arguments: {} )

Obtener entradas

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"] } )

Creando una entrada

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" } } )

Carga de medios

use_mcp_tool( server_name: "strapi-mcp", tool_name: "upload_media", arguments: { "fileData": "base64-encoded-data-here", "fileName": "image.jpg", "fileType": "image/jpeg" } )

Conectando relaciones

use_mcp_tool( server_name: "strapi-mcp", tool_name: "connect_relation", arguments: { "contentType": "api::article.article", "id": "1", "relationField": "authors", "relatedIds": [2, 3] } )

Desconectando relaciones

use_mcp_tool( server_name: "strapi-mcp", tool_name: "disconnect_relation", arguments: { "contentType": "api::article.article", "id": "1", "relationField": "authors", "relatedIds": [3] } )

Creación de un tipo de contenido

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" } } } )

Actualizar un tipo de contenido

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" } } } )

Acceso a recursos

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Proporciona acceso al contenido de Strapi CMS a través del protocolo MCP, lo que permite a los usuarios crear, leer, actualizar y eliminar entradas de contenido a través de Claude.

  1. Descripción general
    1. Configuración
      1. Variables de entorno
      2. Instalación
      3. Correr
    2. Características
      1. Registro de cambios
        1. 0.1.6
        2. 0.1.5
        3. 0.1.4
        4. 0.1.3
      2. Licencia
        1. Servidor MCP strapi-mcp
          1. Características
          2. Desarrollo
          3. Instalación
          4. Ejemplos de uso

        Related MCP Servers

        • A
          security
          A
          license
          A
          quality
          A Model Context Protocol server that enables AI assistants to interact with Strapi CMS instances through a standardized interface, supporting content types and REST API operations.
          Last updated -
          5
          65
          20
          JavaScript
          MIT License
          • Apple
        • -
          security
          A
          license
          -
          quality
          An MCP server that allows accessing and managing ledger files through Claude by providing account listing, balance checking, and transaction register viewing capabilities.
          Last updated -
          1
          Python
          GPL 3.0
          • Apple
        • A
          security
          A
          license
          A
          quality
          An MCP server that enables Claude to interact with Twitter, allowing for posting tweets and searching Twitter content.
          Last updated -
          2
          108
          195
          TypeScript
          MIT License
          • Apple
        • A
          security
          F
          license
          A
          quality
          An MCP server that integrates Claude with Anki flashcards, allowing users to review due cards and create new flashcards directly through conversation.
          Last updated -
          6
          8
          Python
          • Apple

        View all related MCP servers

        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