Token导航 LogoToken导航

MCP Server · 文档知识

MCP Strapi Server

一个基于Model Context Protocol (MCP)的Strapi服务,提供13种工具支持CRUD操作、内容类型管理和媒体文件处理,适用于需要与Strapi内容类型交互的开发场景。

未说明官方级别未说明来源级核验工具 0
CRUD操作TypeScriptClaude知识管理Claude Desktop

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
devlitus
提供方
devlitus

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

2 个

MCP World

选型结论

MCP Strapi Server 属于文档知识类 MCP Server,公开资料标注 0 个工具,通过传输方式未标注接入,适配 Claude Desktop、Claude,没有现成的安装命令;接入前要先准备 访问 Token。

分类

文档知识

传输方式

未说明

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

MCP Strapi Server

Un servidor Model Context Protocol (MCP) para operaciones CRUD en Strapi, permitiendo interactuar con cualquier content type de Strapi a través de herramientas estandarizadas.

Características

  • ✅ 13 Herramientas para operaciones CRUD, gestión de contenidos y medios
  • ✅ Sistema genérico - funciona con cualquier content type
  • ✅ Fetch nativo - sin dependencias adicionales (Node.js 22+)
  • ✅ Stdio transport - integración local con Claude Desktop
  • ✅ TypeScript moderno - tipado completo y seguro
  • ✅ Gestión de medios - búsqueda, obtención y carga de archivos
  • ✅ i18n support - soporte completo para internacionalización

Requisitos

  • Node.js 22+ (para soporte nativo de fetch)
  • Strapi corriendo en localhost:1337 (o configurado en STRAPI_URL)

Instalación

Opción 1: Desarrollo Local

# Instalar dependencias
npm install

# Copiar variables de entorno
cp .env.example .env

# Editar .env con tu configuración de Strapi
nano .env

# Compilar TypeScript
npm run build

# Ejecutar servidor
npm start

Opción 2: Desarrollo con Watch Mode

# Ejecutar con hot-reload (usando tsx)
npm run dev

Configuración en Claude Desktop

Añade el servidor MCP a tu configuración de Claude Desktop:

{
  "mcpServers": {
    "strapi": {
      "command": "node",
      "args": ["/ruta/absoluta/a/mcp-strapi/dist/index.js"],
      "env": {
        "STRAPI_URL": "http://localhost:1337",
        "STRAPI_API_TOKEN": "tu-token-opcional"
      }
    }
  }
}

⚠️ Notas Importantes sobre Content Types

Uso del parámetro contentType

Para las operaciones CRUD (create, read, list, update, delete), SIEMPRE debes usar el nombre PLURAL del content type:

✅ CORRECTO:

  • "products"
  • "articles"
  • "categories"
  • "profiles"

❌ INCORRECTO:

  • "api::product.product" (UID completo)
  • "product" (singular)
  • "Product" (capitalizado)

Cómo obtener el nombre correcto

  1. Usa la herramienta strapi-list-content-types para ver todos los content types disponibles
  2. En la respuesta, busca el campo pluralName - ese es el valor que debes usar
  3. Ejemplo de respuesta:
{
  "uid": "api::product.product",
  "apiID": "product",
  "pluralName": "products"  // ← Usa este valor
}

Excepciones

La herramienta strapi-add-field es la ÚNICA que requiere el UID completo:

  • ✅ "api::product.product" para strapi-add-field
  • ❌ "products" NO funciona con strapi-add-field

Herramientas Disponibles (13 total)

CRUD Operations (6 tools)

1. strapi-create

Crea una nueva entrada en un content type.

Parámetros:

  • contentType (string): Nombre PLURAL del content type (ej: "articles", "products")
  • data (object): Datos de la entrada
  • populate (string[], opcional): Relaciones a poblar

Ejemplo:

{
  "contentType": "articles",
  "data": {
    "title": "Mi Artículo",
    "content": "Contenido del artículo",
    "publishedAt": null
  },
  "populate": ["author", "category"]
}

⚠️ IMPORTANTE: Usa el nombre plural del content type ("articles"), NO el UID completo ("api::article.article").

2. strapi-read

Lee una entrada específica por ID o documentId.

Parámetros:

  • contentType (string): Nombre PLURAL del content type (ej: "articles")
  • id (string | number): ID numérico o documentId (string) de la entrada
  • fields (string[], opcional): Campos a retornar
  • populate (string[], opcional): Relaciones a poblar

Ejemplo:

{
  "contentType": "articles",
  "id": "abc123xyz",
  "fields": ["title", "content"],
  "populate": ["author"]
}

💡 Nota: En Strapi v5, el parámetro id acepta tanto IDs numéricos como documentIds (strings).

3. strapi-list

Lista entradas con filtrado, paginación y ordenamiento.

Parámetros:

  • contentType (string): Nombre PLURAL del content type (ej: "articles")
  • filters (object, opcional): Filtros de búsqueda
  • sort (string[], opcional): Campos de ordenamiento
  • pagination (object, opcional): Configuración de paginación
  • fields (string[], opcional): Campos a retornar
  • populate (string[], opcional): Relaciones a poblar

Ejemplo:

{
  "contentType": "articles",
  "filters": {
    "publishedAt": { "$notNull": true }
  },
  "sort": ["createdAt:desc"],
  "pagination": {
    "page": 1,
    "pageSize": 10
  },
  "populate": ["author", "category"]
}

4. strapi-update

Actualiza una entrada existente (actualización parcial).

Parámetros:

  • contentType (string): Nombre PLURAL del content type (ej: "articles")
  • id (string | number): ID numérico o documentId (string) de la entrada
  • data (object): Datos a actualizar (solo los campos que quieres cambiar)
  • populate (string[], opcional): Relaciones a poblar

Ejemplo:

{
  "contentType": "articles",
  "id": "abc123xyz",
  "data": {
    "title": "Título Actualizado",
    "publishedAt": "2024-01-15T10:00:00.000Z"
  }
}

5. strapi-delete

Elimina una entrada.

Parámetros:

  • contentType (string): Nombre PLURAL del content type (ej: "articles")
  • id (string | number): ID numérico o documentId (string) de la entrada a eliminar

Ejemplo:

{
  "contentType": "articles",
  "id": "abc123xyz"
}

⚠️ Nota: Puede aparecer un error de "JSON input" después de eliminar, pero la entrada SÍ se elimina correctamente. Esto ocurre porque Strapi retorna una respuesta vacía.

Content Type Management (3 tools)

  • strapi-list-content-types - Listar todos los content types disponibles
  • strapi-get-schema - Obtener schema detallado de un content type
  • strapi-add-field - Añadir campo a un content type

Internationalization (1 tool)

  • strapi-get-i18n-locales - Obtener locales disponibles

Media Management (3 tools)

  • strapi-search-media - Buscar archivos en la biblioteca de medios
  • strapi-get-media - Obtener archivo específico por ID
  • strapi-upload-media - Subir archivo a la biblioteca de medios

Ejemplos de Uso con Content Types Personalizados

Productos

{
  "contentType": "products",
  "data": {
    "name": "Producto Ejemplo",
    "price": 99.99,
    "stock": 100,
    "category": 1
  }
}

Perfiles de Usuario

{
  "contentType": "profiles",
  "data": {
    "displayName": "Juan Pérez",
    "bio": "Desarrollador",
    "avatar": ""
  }
}

Estructura del Proyecto

mcp-strapi/
├── docs/                        # Documentación
├── src/
│   ├── index.ts                 # Entry point
│   ├── server.ts                # Configuración MCP server
│   ├── tools/                   # Herramientas (13 total)
│   │   ├── create.ts
│   │   ├── create-with-locales.ts
│   │   ├── read.ts
│   │   ├── list.ts
│   │   ├── update.ts
│   │   ├── delete.ts
│   │   ├── list-content-types.ts
│   │   ├── get-schema.ts
│   │   ├── add-field.ts
│   │   ├── get-i18n-locales.ts
│   │   ├── search-media.ts
│   │   ├── get-media.ts
│   │   └── upload-media.ts
│   ├── services/
│   │   ├── strapi-client.ts    # Cliente HTTP (fetch nativo)
│   │   └── i18n-validator.ts   # Validador de internacionalización
│   ├── types/
│   │   └── index.ts            # Tipos TypeScript
│   └── config/
│       └── environment.ts      # Variables de entorno
├── package.json
├── tsconfig.json
├── CLAUDE.md
└── README.md

Variables de Entorno

VariableDescripciónValor por defecto
STRAPI_URLURL base de la API de Strapihttp://localhost:1337
NODE_ENVEntorno de ejecuciónproduction

Debugging

Los logs se escriben a stderr para no interferir con el protocolo MCP (que usa stdout):

# Ver logs en desarrollo
npm run dev 2>&1 | grep "ERROR\|CONFIG\|TOOL"

Características implementadas

  • ✅ Autenticación con API Tokens de Strapi
  • ✅ Validación de i18n con detección de idiomas heredados
  • ✅ 13 herramientas completas (CRUD, Content Types, Medios, i18n)
  • ✅ Soporte para localizaciones múltiples
  • ✅ Gestión completa de medios (búsqueda, descarga, carga)
  • ✅ Documentación exhaustiva en CLAUDE.md
  • ✅ Strict mode para validaciones de contenido

Solución de Problemas

Error: "Node.js 22+ required"

Asegúrate de tener Node.js 22 o superior instalado:

node --version  # Debe mostrar v22.x.x o superior

Error de conexión a Strapi

Verifica que Strapi esté corriendo y accesible:

curl http://localhost:1337/api

Licencia

MIT

Contribuciones

Las contribuciones son bienvenidas. Por favor:

  1. Fork el repositorio
  2. Crea una rama para tu feature (git checkout -b feature/amazing-feature)
  3. Commit tus cambios (git commit -m 'Add amazing feature')
  4. Push a la rama (git push origin feature/amazing-feature)
  5. Abre un Pull Request

Autor

Creado con las mejores prácticas de MCP TypeScript SDK y Strapi Entity Service API.

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

CRUD操作TypeScript本地部署内容管理媒体处理Strapi集成

支持客户端

Claude DesktopClaude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

读长文档提问

把 PDF、Markdown 和笔记交给模型,按章节追问细节。

整理知识库

把零散资料归档、打标签,检索时更容易命中。

批量出摘要

提取要点,输出能直接引用的段落。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 已经适配 Claude Desktop、Claude,换客户端不用重新研究配置。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在文档知识场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 暂时拿不到访问 Token的人。
  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
MCP Strapi Server

MCP World · 本页

0未说明未标注2 个2026-05-17
Cherry Studio

MCP World

0未说明未标注1 个2026-05-17
Pdf Math Translate

MCP World

0stdio有1 个2026-05-17
report generation

MCP World

0stdio有1 个2026-05-17
Anything To Notebooklm

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

MCP Strapi Server 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

MCP Strapi Server 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

MCP Strapi Server 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

MCP Strapi Server 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

MCP Strapi Server 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP