Skip to main content
Glama

Servidor MCP de Contentstack

insignia de herrería

Este servidor de Protocolo de contexto de modelo (MCP) se integra con la API de gestión de contenido de Contentstack, lo que permite que los asistentes de IA como Claude interactúen con su CMS Contentstack a través de un protocolo estandarizado.

Nota: Esta es una versión preliminar de Contentstack MCP Server. Consulte la hoja de ruta para ver las próximas mejoras y funciones planificadas.

Tabla de contenido

Related MCP server: mcp-clickup

Características

Recursos disponibles

  • content-types : enumera todos los tipos de contenido (URI: contentstack://content-types )

  • content-type : obtiene el tipo de contenido por UID (URI: contentstack://content-type/{uid} )

  • entries : Obtener entradas por tipo de contenido (URI: contentstack://entries/{content_type_uid} )

  • entry : Obtener una entrada específica (URI: contentstack://entry/{content_type_uid}/{entry_uid} )

  • assets : enumera todos los activos (URI: contentstack://assets )

Gestión de tipos de contenido

  • Crear, actualizar y eliminar tipos de contenido

  • Definir esquemas, opciones, reglas de campo y taxonomías

  • Administrar campos globales

Gestión de entradas

  • Crear, actualizar y eliminar entradas

  • Publicar y anular la publicación de entradas en distintos entornos

  • Consultar entradas con opciones de filtrado, paginación y ordenación

Gestión global de campos

  • Crear y actualizar campos globales para reutilizarlos en distintos tipos de contenido

  • Recuperar campos globales con opciones de paginación

Flujos de trabajo de contenido

  • Flujos de trabajo de creación de contenido guiado

  • Análisis de contenido y perspectivas

  • Asistencia para la planificación de la migración

Instalación

Prerrequisitos

  • Node.js (v16.0.0 o superior)

  • Una cuenta de Contentstack

  • Credenciales de API (clave de API y token de administración)

Instalación de NPM

La forma más sencilla de utilizar este servidor MCP es a través de NPM:

# Install globally
npm install -g @drossman/contentstack-mcp

# Or use directly via npx
npx @drossman/contentstack-mcp

Instalación manual

  1. Clonar el repositorio:

    git clone https://github.com/darekrossman/contentstack-mcp.git
    cd contentstack-mcp
  2. Instalar dependencias:

    npm install
  3. Configurar variables de entorno:

    cp .env.example .env

    Edite el archivo .env con sus credenciales de Contentstack:

    CONTENTSTACK_API_KEY=your_api_key_here
    CONTENTSTACK_MANAGEMENT_TOKEN=your_management_token_here
    # Optional: Specify branch if using branches
    CONTENTSTACK_BRANCH=your_branch_name
  4. Construya e inicie el servidor:

    npm run build
    npm start

Instalación a través de Smithery CLI

También puedes instalar este servidor MCP usando la CLI de Smithery :

npx @smithery/cli install contentstack-mcp --client claude

Consulte la documentación CLI de Smithery para obtener más detalles y uso avanzado.

Desarrollo

Configuración para el desarrollo

Para el desarrollo, puedes utilizar:

npm run dev

Esto inicia el servidor usando ts-node para un ciclo de desarrollo más rápido.

Calidad del código

Este proyecto utiliza Biome.js para el análisis de errores y el formateo. Proporciona un estilo de código consistente y ayuda a detectar posibles problemas de forma temprana.

Comandos disponibles

  • Código de pelusa :

    npm run lint
  • Pelusa y arreglo :

    npm run lint:fix
  • Código de formato :

    npm run format
  • Formato y corrección :

    npm run format:fix

Configuración

Autenticación

Este servidor requiere autenticación con la API de Contentstack:

Token de gestión (obligatorio) :

  • Token a nivel de pila con permisos predefinidos

  • Establecer mediante la variable de entorno CONTENTSTACK_MANAGEMENT_TOKEN

  • Generar desde el panel de Contentstack: Configuración > Tokens > Tokens de administración

Clave API (obligatoria) :

  • Clave API de pila para autenticación

  • Establecer mediante la variable de entorno CONTENTSTACK_API_KEY

Soporte de sucursal

Si su cuenta de Contentstack utiliza ramas, puede especificar una rama:

CONTENTSTACK_BRANCH=develop

Integración con asistentes de IA

Claude para escritorio

Para utilizar este servidor con Claude for Desktop:

  1. Edite su archivo de configuración de Claude for Desktop:

    • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Ventanas: %APPDATA%\Claude\claude_desktop_config.json

  2. Agregue este servidor a la sección mcpServers :

    {
      "mcpServers": {
        "contentstack": {
          "command": "npx",
          "args": ["-y", "@drossman/contentstack-mcp"],
          "env": {
            "CONTENTSTACK_API_KEY": "your_api_key_here",
            "CONTENTSTACK_MANAGEMENT_TOKEN": "your_management_token_here"
          }
        }
      }
    }
  3. Reiniciar Claude para escritorio

Cursor

Para utilizar este servidor con Cursor, agregue la configuración del servidor Contentstack MCP:

{
   "mcpServers": {
      "contentstack": {
      "command": "npx",
      "args": ["-y", "@drossman/contentstack-mcp"],
      "env": {
         "CONTENTSTACK_API_KEY": "your_api_key_here",
         "CONTENTSTACK_MANAGEMENT_TOKEN": "your_management_token_here",
      }
      }
   }
}

Instalar con Smithery

También puedes instalar este servidor MCP mediante la CLI de Smithery usando el cliente de tu elección:

npx -y @smithery/cli install @drossman/contentstack-mcp --client claude

Los clientes disponibles incluyen:

  • claudio

  • clina

  • windsurf

  • código roo

  • ingenioso

  • encuentro

  • cursor

  • vscode

  • miembros de vscode

  • Boltai

  • Amazon Bedrock

  • amazonq

Consulte la documentación CLI de Smithery para obtener más detalles y uso avanzado.

Hoja de ruta

  • [ ] Comprensión contextual de IA mejorada : mejore el aprovisionamiento de contexto para consultas complejas

  • [ ] Consultas y filtrado avanzados : admite filtrado por múltiples criterios y campos personalizados

  • [ ] Automatización de flujo de trabajo y publicación : habilite acciones de flujo de trabajo de contenido impulsadas por IA

  • [ ] Mejoras en la gestión de activos : agregue capacidades de manipulación directa de activos

  • [ ] Soporte de operaciones masivas : Implemente operaciones por lotes para entradas y activos

  • [ ] Manejo de errores mejorado y retroalimentación de IA : refine los mensajes de error para el consumo de IA

  • [ ] Contexto y permisos específicos del usuario : adapte las acciones en función de los permisos del usuario

  • [ ] Extensibilidad para herramientas personalizadas : crear un marco de extensión

  • [ ] Manejo de eventos en tiempo real : agregue compatibilidad con webhooks para comportamientos de IA reactivos

  • [ ] Documentación completa : Desarrollar guías detalladas para la interacción con IA

Grito

Agradecimientos especiales a Ivo Toby . Este proyecto y su autor están profundamente inspirados en su trabajo en este espacio.

Licencia

Instituto Tecnológico de Massachusetts (MIT)


Aviso legal: Este proyecto no está afiliado, respaldado ni respaldado por Contentstack. Es un proyecto independiente de código abierto diseñado para funcionar con la API de Contentstack.

Available Tools

15 tools
create_content_typeC

Creates a new content type with the specified schema, options, field rules, and taxonomies.

Inputs: schema (required), title (required), uid (required), field_rules, +2 more.

create_entryC

Creates a new entry for a specified content type.

Inputs: content_type_uid (required), entry (required).

create_global_fieldC

Creates a new global field with the specified title, UID, and schema.

Inputs: schema (required), title (required), uid (required).

delete_content_typeC

Deletes a content type identified by its UID.

Inputs: uid (required).

delete_entryC

Deletes an entry identified by its UID and content type UID.

Inputs: content_type_uid (required), entry_uid (required).

get_all_content_typesC

Retrieves a list of all content types, with options for pagination and including additional details like global field schema and counts.

Inputs: include_branch_info, include_count, include_global_field_schema, include_reference_content_type_uid, +2 more.

get_all_global_fieldsC

Retrieves a list of all global fields, with options for pagination and including branch information.

Inputs: include_branch_info, include_count, limit, skip.

get_content_typeB

Retrieves a specific content type by its UID, optionally including the global field schema.

Inputs: uid (required), include_global_field_schema.

get_entriesC

Retrieves entries for a specified content type, with extensive options for filtering, sorting, pagination, and including related data.

Inputs: content_type_uid (required), asc, desc, except, +13 more.

get_entryA

Retrieves a specific entry by its content type UID and entry UID, with options for locale and including references.

Inputs: content_type_uid (required), entry_uid (required), include_reference_content_type_uid, include_references, +1 more.

publish_entryC

Publishes an entry to a specified environment and locale.

Inputs: content_type_uid (required), entry_uid (required), environment (required), locale.

unpublish_entryC

Unpublishes an entry from a specified environment and locale.

Inputs: content_type_uid (required), entry_uid (required), environment (required), locale.

update_content_typeC

Updates an existing content type identified by its UID. Allows modification of title, schema, options, and field rules.

Inputs: uid (required), field_rules, options, schema, +1 more.

update_entryC

Updates an existing entry identified by its UID and content type UID.

Inputs: content_type_uid (required), entry (required), entry_uid (required).

update_global_fieldB

Updates an existing global field identified by its UID. Allows modification of title and schema.

Inputs: uid (required), schema, title.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 15 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose targeting specific resources (content types, entries, global fields) and actions (create, get, update, delete, publish/unpublish). There is no overlap or ambiguity; for example, get_all_content_types vs. get_content_type are clearly differentiated by scope.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern with underscores (e.g., create_content_type, get_entries, update_global_field). The naming is predictable and uniform across all 15 tools, making it easy for agents to understand and use them.

    Tool Count5/5

    With 15 tools, this server is well-scoped for content management operations. Each tool earns its place by covering essential CRUD and lifecycle actions for content types, entries, and global fields, without being overly bloated or sparse.

    Completeness5/5

    The tool surface provides complete CRUD and lifecycle coverage for the content management domain. It includes create, get, update, and delete for all core resources (content types, entries, global fields), plus publishing/unpublishing for entries, with no obvious gaps that would hinder agent workflows.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers