Skip to main content
Glama

ItchWPMCP

Локальный MCP-сервер для Codex/Claude, позволяющий запрашивать и редактировать контент WordPress через REST API WordPress.

Его можно использовать с любым сайтом на WordPress, где включен REST API и поддерживается аутентификация через пароли приложений (Application Passwords).

Настройка

  1. Создайте пароль приложения в WordPress: WordPress Admin -> Users -> Profile -> Application Passwords

  2. Скопируйте .env.example в .env и заполните данные:

    WP_BASE_URL=https://your-wordpress-site.example
    WP_USERNAME=your-wordpress-username
    WP_APP_PASSWORD=xxxx xxxx xxxx xxxx xxxx xxxx
    WP_ALLOW_PRODUCTION_WRITES=false
  3. Установите зависимости:

    npm install
  4. Запустите сервер:

    $env:NODE_OPTIONS='--use-system-ca'
    npm start

    NODE_OPTIONS=--use-system-ca может помочь в Windows, если Node требуется доступ к системному хранилищу сертификатов.

Related MCP server: mcp-wordpress

Инструменты

  • wordpress_list_pages: список страниц WordPress.

  • wordpress_get_page: получение страницы по ID.

  • wordpress_create_page: создание страницы, по умолчанию со статусом черновика.

  • wordpress_clone_page: клонирование существующей страницы в новый черновик.

  • wordpress_update_page: обновление заголовка, контента, отрывка, ярлыка (slug), статуса, родительской страницы или порядка меню.

  • wordpress_update_page_status: обновление только статуса страницы.

  • wordpress_delete_page: перемещение в корзину или удаление страницы с подтверждением.

  • wordpress_list_posts: список записей WordPress.

  • wordpress_get_post: получение записи по ID.

  • wordpress_create_post: создание записи, по умолчанию со статусом черновика.

  • wordpress_update_post: обновление записи.

  • wordpress_delete_post: перемещение в корзину или удаление записи с подтверждением.

  • wordpress_list_media: список элементов медиабиблиотеки.

  • wordpress_upload_media: загрузка локального файла в медиабиблиотеку.

  • wordpress_list_categories: список категорий записей.

  • wordpress_create_category: создание категории записей.

  • wordpress_list_tags: список меток записей.

  • wordpress_create_tag: создание метки записей.

  • wordpress_list_plugins: список плагинов (если у аутентифицированного пользователя есть права).

  • wordpress_update_plugin_status: активация или деактивация установленного плагина.

  • wordpress_get_settings: чтение общих настроек сайта.

  • wordpress_update_settings: обновление выбранных общих настроек сайта.

  • wordpress_list_users: список пользователей (если у аутентифицированного пользователя есть права).

  • wordpress_list_menus: список меню (если доступна конечная точка REST).

  • wordpress_list_menu_items: список элементов меню (если доступна конечная точка REST).

  • wordpress_rest_request: расширенный инструмент для запросов к REST API.

Инструменты записи включены для URL-адресов промежуточных серверов (staging). Если WP_BASE_URL изменен на рабочий (production), запись блокируется, если в .env не установлено WP_ALLOW_PRODUCTION_WRITES=true.

Использование другого сайта WordPress

Создайте пароль приложения в админ-панели того сайта WordPress, затем обновите .env:

WP_BASE_URL=https://another-wordpress-site.example
WP_USERNAME=your-wordpress-username
WP_APP_PASSWORD=xxxx xxxx xxxx xxxx xxxx xxxx
WP_ALLOW_PRODUCTION_WRITES=false

Держите WP_ALLOW_PRODUCTION_WRITES=false, пока вы намеренно не захотите включить инструменты записи на рабочем URL-адресе.

Перенос для другого пользователя

  1. Скопируйте папку ItchWPMCP на их компьютер или опубликуйте её как приватный/публичный репозиторий.

  2. Выполните npm install внутри папки.

  3. Создайте файл .env из .env.example.

  4. В их админ-панели WordPress создайте пароль приложения: Users -> Profile -> Application Passwords

  5. Внесите URL их сайта, имя пользователя и пароль приложения в .env.

  6. Зарегистрируйте MCP-сервер в их MCP-клиенте.

Не добавляйте файлы .env в систему контроля версий. Пароли приложений должны оставаться локальными для каждого пользователя/сайта.

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

Добавьте это в ~/.codex/config.toml:

[mcp_servers.itch_wp_mcp]
command = "node"
args = ["C:\\path\\to\\ItchWPMCP\\src\\server.js"]
enabled = true
startup_timeout_sec = 20
tool_timeout_sec = 60

[mcp_servers.itch_wp_mcp.env]
WP_BASE_URL = "https://your-wordpress-site.example"
WP_USERNAME = "your-wordpress-username"
WP_APP_PASSWORD = "xxxx xxxx xxxx xxxx xxxx xxxx"
WP_ALLOW_PRODUCTION_WRITES = "false"
NODE_OPTIONS = "--use-system-ca"

В Windows использование полного пути к Node может быть надежнее:

command = "C:\\Program Files\\nodejs\\node.exe"

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

Добавьте это в файл claude_desktop_config.json для Claude Desktop в раздел mcpServers:

{
  "mcpServers": {
    "itch_wp_mcp": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": [
        "C:\\path\\to\\ItchWPMCP\\src\\server.js"
      ],
      "env": {
        "WP_BASE_URL": "https://your-wordpress-site.example",
        "WP_USERNAME": "your-wordpress-username",
        "WP_APP_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
        "WP_ALLOW_PRODUCTION_WRITES": "false",
        "NODE_OPTIONS": "--use-system-ca"
      }
    }
  }
}

В Windows конфигурация Claude Desktop обычно находится здесь:

%APPDATA%\Claude\claude_desktop_config.json

После изменения конфигурации перезапустите Claude Desktop.

Настройка для нескольких сайтов

Вам не нужно иметь отдельную копию ItchWPMCP для каждого сайта WordPress. Сохраняйте одну кодовую базу и регистрируйте несколько MCP-серверов, каждый с разными переменными окружения.

Пример для нескольких сайтов в Codex

[mcp_servers.wp_erm_staging]
command = "C:\\Program Files\\nodejs\\node.exe"
args = ["C:\\Users\\hesha\\Documents\\GitHub\\ItchWPMCP\\src\\server.js"]
enabled = true
startup_timeout_sec = 20
tool_timeout_sec = 60

[mcp_servers.wp_erm_staging.env]
WP_BASE_URL = "https://staging.erm.buzzinn.co"
WP_USERNAME = "erm-admin"
WP_APP_PASSWORD = "xxxx xxxx xxxx xxxx xxxx xxxx"
WP_ALLOW_PRODUCTION_WRITES = "false"
NODE_OPTIONS = "--use-system-ca"

[mcp_servers.wp_client_site]
command = "C:\\Program Files\\nodejs\\node.exe"
args = ["C:\\Users\\hesha\\Documents\\GitHub\\ItchWPMCP\\src\\server.js"]
enabled = true
startup_timeout_sec = 20
tool_timeout_sec = 60

[mcp_servers.wp_client_site.env]
WP_BASE_URL = "https://client-site.example"
WP_USERNAME = "client-admin"
WP_APP_PASSWORD = "xxxx xxxx xxxx xxxx xxxx xxxx"
WP_ALLOW_PRODUCTION_WRITES = "false"
NODE_OPTIONS = "--use-system-ca"

Пример для нескольких сайтов в Claude

{
  "mcpServers": {
    "wp_erm_staging": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": ["C:\\Users\\hesha\\Documents\\GitHub\\ItchWPMCP\\src\\server.js"],
      "env": {
        "WP_BASE_URL": "https://staging.erm.buzzinn.co",
        "WP_USERNAME": "erm-admin",
        "WP_APP_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
        "WP_ALLOW_PRODUCTION_WRITES": "false",
        "NODE_OPTIONS": "--use-system-ca"
      }
    },
    "wp_client_site": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": ["C:\\Users\\hesha\\Documents\\GitHub\\ItchWPMCP\\src\\server.js"],
      "env": {
        "WP_BASE_URL": "https://client-site.example",
        "WP_USERNAME": "client-admin",
        "WP_APP_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
        "WP_ALLOW_PRODUCTION_WRITES": "false",
        "NODE_OPTIONS": "--use-system-ca"
      }
    }
  }
}

Файл .env теперь является лишь локальным резервным вариантом. Переменные окружения MCP для конкретного сайта имеют приоритет, если они предоставлены Codex или Claude.

Модель безопасности

  • Новые страницы/записи по умолчанию имеют статус draft (черновик).

  • Для деструктивных инструментов требуется confirmDelete=true.

  • Запись на не-staging сайтах блокируется, если не установлено WP_ALLOW_PRODUCTION_WRITES=true.

  • wordpress_rest_request разрешает только пути, начинающиеся с /wp-json/.

Install Server
F
license - not found
B
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (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/manofsadness/ItchWPMCP'

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