Skip to main content
Glama
crunchtools

MCP WordPress CrunchTools

by crunchtools

MCP WordPress CrunchTools

Un servidor MCP (Model Context Protocol) seguro para la gestión de contenido de WordPress. Diseñado para desarrolladores que publican sobre su trabajo.

Descripción general

  • Seguro por defecto: Validación integral de entradas, protección de credenciales y prevención de SSRF

  • Sin servicios de terceros: Se ejecuta localmente mediante stdio, tus credenciales nunca salen de tu máquina

  • Multiplataforma: Funciona en Linux, macOS y Windows

  • Actualizado automáticamente: GitHub Actions supervisa CVEs y actualiza dependencias

  • Containerizado: Disponible en quay.io/crunchtools/mcp-wordpress

Related MCP server: TypeScript WordPress MCP Server

Convención de nombres

Componente

Nombre

Repositorio de GitHub

crunchtools/mcp-wordpress

Contenedor

quay.io/crunchtools/mcp-wordpress

Paquete de Python (PyPI)

mcp-wordpress-crunchtools

Comando CLI

mcp-wordpress-crunchtools

Importación del módulo

mcp_wordpress_crunchtools

Características

  • 30 herramientas para entradas, páginas, medios y comentarios

  • Centrado en la seguridad: Credenciales protegidas, validación de entradas, prevención de SSRF

  • Flujo de trabajo para desarrolladores: Publicación programada, revisiones, búsqueda

  • Integración sencilla: Funciona con Claude Code y otros clientes MCP

Instalación

Con uvx (recomendado)

uvx mcp-wordpress-crunchtools

Con pip

pip install mcp-wordpress-crunchtools
mcp-wordpress-crunchtools

Con contenedor

# Create a shared upload directory (required before first run)
mkdir -p ~/.local/share/mcp-uploads-downloads

podman run -v ~/.local/share/mcp-uploads-downloads:/tmp/mcp-uploads:z \
  -e WORDPRESS_URL=https://example.com \
  -e WORDPRESS_USERNAME=admin \
  -e WORDPRESS_APP_PASSWORD='xxxx xxxx xxxx xxxx' \
  quay.io/crunchtools/mcp-wordpress

Nota sobre SELinux: Usa :z (minúscula, compartido) en lugar de :Z (mayúscula, privado). Los servidores MCP se ejecutan como procesos stdio de larga duración. Con :Z, los archivos copiados en el directorio después de iniciar el contenedor no tendrán la etiqueta MCS privada del contenedor y serán invisibles dentro del contenedor. La opción :z establece un contexto container_file_t compartido que todos los contenedores y el host pueden leer/escribir.

Consejo: Usa el mismo directorio compartido (~/.local/share/mcp-uploads-downloads/) en varios servidores MCP en contenedores (p. ej., mcp-wordpress y mcp-gemini) para que los archivos generados estén disponibles inmediatamente para subir sin copiarlos.

Desde el código fuente

git clone https://github.com/crunchtools/mcp-wordpress.git
cd mcp-wordpress
uv sync --all-extras
uv run mcp-wordpress-crunchtools

Configuración

Establece estas variables de entorno:

Variable

Descripción

Ejemplo

WORDPRESS_URL

URL del sitio de WordPress

https://example.com

WORDPRESS_USERNAME

Nombre de usuario de WordPress

admin

WORDPRESS_APP_PASSWORD

Contraseña de aplicación

xxxx xxxx xxxx xxxx

MCP_UPLOAD_DIR

Directorio de subida dentro del contenedor (opcional)

/tmp/mcp-uploads (por defecto)

Crear una contraseña de aplicación

  1. Inicia sesión en el administrador de WordPress

  2. Ve a Usuarios → Perfil

  3. Desplázate hasta Contraseñas de aplicación

  4. Introduce un nombre (p. ej., "MCP Server") y haz clic en Añadir nueva

  5. Copia la contraseña generada (se muestra una sola vez)

Uso con Claude Code

Con uvx (recomendado)

claude mcp add mcp-wordpress-crunchtools \
    --env WORDPRESS_URL=https://example.com \
    --env WORDPRESS_USERNAME=admin \
    --env WORDPRESS_APP_PASSWORD="xxxx xxxx xxxx xxxx" \
    -- uvx mcp-wordpress-crunchtools

Con pip

pip install mcp-wordpress-crunchtools

claude mcp add mcp-wordpress-crunchtools \
    --env WORDPRESS_URL=https://example.com \
    --env WORDPRESS_USERNAME=admin \
    --env WORDPRESS_APP_PASSWORD="xxxx xxxx xxxx xxxx" \
    -- mcp-wordpress-crunchtools

Con contenedor

# Create a shared upload directory (required before first run)
mkdir -p ~/.local/share/mcp-uploads-downloads

claude mcp add mcp-wordpress-crunchtools \
    --env WORDPRESS_URL=https://example.com \
    --env WORDPRESS_USERNAME=admin \
    --env WORDPRESS_APP_PASSWORD="xxxx xxxx xxxx xxxx" \
    -- podman run -i --rm \
        -v ~/.local/share/mcp-uploads-downloads:/tmp/mcp-uploads:z \
        -e WORDPRESS_URL \
        -e WORDPRESS_USERNAME \
        -e WORDPRESS_APP_PASSWORD \
        quay.io/crunchtools/mcp-wordpress

Herramientas disponibles

Herramientas del sitio

Herramienta

Descripción

wordpress_get_site_info

Obtener título, descripción, URL y zona horaria del sitio

wordpress_test_connection

Verificar que las credenciales de la API funcionan

Herramientas de entradas

Herramienta

Descripción

wordpress_list_posts

Listar entradas con filtros (estado, categoría, búsqueda)

wordpress_get_post

Obtener una entrada por ID con contenido completo

wordpress_search_posts

Buscar entradas por palabra clave

wordpress_create_post

Crear una nueva entrada (admite programación)

wordpress_update_post

Actualizar una entrada existente

wordpress_delete_post

Eliminar/mover a la papelera una entrada

wordpress_list_revisions

Listar revisiones de una entrada

wordpress_get_revision

Obtener el contenido de una revisión específica

wordpress_list_categories

Listar categorías disponibles

wordpress_list_tags

Listar etiquetas disponibles

Herramientas de páginas

Herramienta

Descripción

wordpress_list_pages

Listar páginas con filtros

wordpress_get_page

Obtener una página por ID

wordpress_create_page

Crear una nueva página

wordpress_update_page

Actualizar una página existente

wordpress_delete_page

Eliminar/mover a la papelera una página

wordpress_list_page_revisions

Listar revisiones de página

Herramientas de medios

Herramienta

Descripción

wordpress_list_media

Listar elementos de medios

wordpress_get_media

Obtener detalles de un elemento de medios

wordpress_upload_media

Subir archivo desde una ruta local

wordpress_update_media

Actualizar metadatos de medios

wordpress_delete_media

Eliminar elemento de medios

wordpress_get_media_url

Obtener la URL pública de un medio

Herramientas de comentarios

Herramienta

Descripción

wordpress_list_comments

Listar comentarios con filtros

wordpress_get_comment

Obtener un comentario

wordpress_create_comment

Añadir un comentario a una entrada

wordpress_update_comment

Actualizar contenido/estado de un comentario

wordpress_delete_comment

Eliminar un comentario

wordpress_moderate_comment

Aprobar, retener, marcar como spam o mover a la papelera

Ejemplos

Crear una entrada en borrador

Create a new WordPress post titled "My Technical Article" with the content below. Keep it as a draft.

Programar una entrada

Update post ID 123 to publish on December 25, 2024 at 10:00 AM.

Subir una imagen

Upload this image to WordPress and set the alt text to "Architecture diagram".

Buscar y moderar comentarios

List all comments in "hold" status and approve the legitimate ones.

Seguridad

  • Protección de credenciales: Todas las credenciales se almacenan como SecretStr, nunca se registran

  • Prevención de SSRF: La ruta de la API REST está codificada, no se puede sobrescribir

  • Validación de entradas: Todas las entradas se validan mediante modelos Pydantic

  • Límite de velocidad: Gestiona los límites de velocidad de WordPress correctamente

  • Aplicación de TLS: Todas las solicitudes usan HTTPS con validación de certificados

  • Límites de tamaño: El tamaño de la respuesta se limita a 10MB para evitar problemas de memoria

  • Tiempo de espera: Todas las solicitudes expiran después de 30 segundos

Desarrollo

# Install dev dependencies
uv sync --all-extras

# Run tests
uv run pytest

# Run linting
uv run ruff check src tests

# Run type checking
uv run mypy src

# Format code
uv run ruff format src tests

Licencia

AGPL-3.0-or-later

Créditos

Creado por crunchtools.com

Install Server
A
license - permissive license
B
quality
B
maintenance

Maintenance

Maintainers
Response time
5dRelease cycle
4Releases (12mo)
Commit activity

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

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

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/crunchtools/mcp-wordpress'

If you have feedback or need assistance with the MCP directory API, please join our Discord server