Skip to main content
Glama
crunchtools

MCP WordPress CrunchTools

by crunchtools

MCP WordPress CrunchTools

Безопасный MCP-сервер (Model Context Protocol) для управления контентом WordPress. Предназначен для разработчиков, публикующих материалы о своей работе.

Обзор

Этот MCP-сервер разработан с учётом следующих принципов:

  • Безопасен по умолчанию — комплексная проверка входных данных, защита учётных данных и предотвращение SSRF

  • Без сторонних сервисов — работает локально через stdio, ваши учётные данные никогда не покидают вашу машину

  • Кроссплатформенный — работает на Linux, macOS и Windows

  • Автоматически обновляется — GitHub Actions отслеживают CVE и обновляют зависимости

  • Контейнеризирован — доступен на quay.io/crunchtools/mcp-wordpress

Related MCP server: TypeScript WordPress MCP Server

Соглашение об именовании

Компонент

Имя

Репозиторий GitHub

crunchtools/mcp-wordpress

Контейнер

quay.io/crunchtools/mcp-wordpress

Пакет Python (PyPI)

mcp-wordpress-crunchtools

Команда CLI

mcp-wordpress-crunchtools

Импорт модуля

mcp_wordpress_crunchtools

Возможности

  • 30 инструментов для записей, страниц, медиафайлов и комментариев

  • Ориентированность на безопасность: защита учётных данных, проверка входных данных, предотвращение SSRF

  • Рабочий процесс разработчика: отложенная публикация, ревизии, поиск

  • Простая интеграция: работает с Claude Code и другими MCP-клиентами

Установка

С помощью uvx (рекомендуется)

uvx mcp-wordpress-crunchtools

С помощью pip

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

С помощью контейнера

# 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

Примечание по SELinux: используйте :z (строчная, общая) вместо :Z (заглавная, приватная). MCP-серверы работают как долгоживущие процессы stdio. При использовании :Z файлы, скопированные в каталог после запуска контейнера, не будут иметь приватную метку MCS контейнера и будут невидимы внутри контейнера. Флаг :z устанавливает общий контекст container_file_t, который доступен для чтения/записи всем контейнерам и хосту.

Совет: используйте один и тот же общий каталог (~/.local/share/mcp-uploads-downloads/) для нескольких MCP-контейнерных серверов (например, mcp-wordpress и mcp-gemini), чтобы сгенерированные файлы были сразу доступны для загрузки без копирования.

Из исходного кода

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

Конфигурация

Задайте следующие переменные окружения:

Переменная

Описание

Пример

WORDPRESS_URL

URL сайта WordPress

https://example.com

WORDPRESS_USERNAME

Имя пользователя WordPress

admin

WORDPRESS_APP_PASSWORD

Пароль приложения

xxxx xxxx xxxx xxxx

MCP_UPLOAD_DIR

Каталог загрузки внутри контейнера (необязательно)

/tmp/mcp-uploads (по умолчанию)

Создание пароля приложения

  1. Войдите в админ-панель WordPress

  2. Перейдите в Пользователи → Профиль

  3. Прокрутите до Пароли приложений

  4. Введите имя (например, «MCP Server») и нажмите Добавить новый

  5. Скопируйте сгенерированный пароль (отображается один раз)

Использование с Claude Code

С помощью uvx (рекомендуется)

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

С помощью 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

С помощью контейнера

# 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

Доступные инструменты

Инструменты для сайта

Инструмент

Описание

wordpress_get_site_info

Получить название сайта, описание, URL, часовой пояс

wordpress_test_connection

Проверить работоспособность учётных данных API

Инструменты для записей

Инструмент

Описание

wordpress_list_posts

Список записей с фильтрацией (статус, категория, поиск)

wordpress_get_post

Получить запись по ID с полным содержимым

wordpress_search_posts

Поиск записей по ключевому слову

wordpress_create_post

Создать новую запись (поддерживает отложенную публикацию)

wordpress_update_post

Обновить существующую запись

wordpress_delete_post

Удалить/переместить запись в корзину

wordpress_list_revisions

Список ревизий для записи

wordpress_get_revision

Получить содержимое конкретной ревизии

wordpress_list_categories

Список доступных категорий

wordpress_list_tags

Список доступных меток

Инструменты для страниц

Инструмент

Описание

wordpress_list_pages

Список страниц с фильтрацией

wordpress_get_page

Получить страницу по ID

wordpress_create_page

Создать новую страницу

wordpress_update_page

Обновить существующую страницу

wordpress_delete_page

Удалить/переместить страницу в корзину

wordpress_list_page_revisions

Список ревизий страницы

Инструменты для медиафайлов

Инструмент

Описание

wordpress_list_media

Список медиафайлов

wordpress_get_media

Получить сведения о медиафайле

wordpress_upload_media

Загрузить файл из локального пути

wordpress_update_media

Обновить метаданные медиафайла

wordpress_delete_media

Удалить медиафайл

wordpress_get_media_url

Получить публичный URL для медиафайла

Инструменты для комментариев

Инструмент

Описание

wordpress_list_comments

Список комментариев с фильтрацией

wordpress_get_comment

Получить один комментарий

wordpress_create_comment

Добавить комментарий к записи

wordpress_update_comment

Обновить содержимое/статус комментария

wordpress_delete_comment

Удалить комментарий

wordpress_moderate_comment

Одобрить, удержать, пометить спамом или переместить в корзину

Примеры

Создание черновика записи

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

Отложенная публикация записи

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

Загрузка изображения

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

Поиск и модерация комментариев

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

Безопасность

  • Защита учётных данных: все учётные данные хранятся как SecretStr, никогда не логируются

  • Предотвращение SSRF: путь REST API жёстко задан, его нельзя переопределить

  • Проверка входных данных: все входные данные проверяются через модели Pydantic

  • Ограничение скорости: корректно обрабатывает ограничения скорости WordPress

  • Принудительное использование TLS: все запросы используют HTTPS с проверкой сертификатов

  • Ограничение размера: размер ответа ограничен 10 МБ для предотвращения проблем с памятью

  • Тайм-аут: все запросы завершаются по тайм-ауту через 30 секунд

Разработка

# 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

Лицензия

AGPL-3.0-or-later

Авторы

Создано 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