ItchWPMCP
ItchWPMCP
Локальный MCP-сервер для Codex/Claude, позволяющий запрашивать и редактировать контент WordPress через REST API WordPress.
Его можно использовать с любым сайтом на WordPress, где включен REST API и поддерживается аутентификация через пароли приложений (Application Passwords).
Настройка
Создайте пароль приложения в WordPress:
WordPress Admin -> Users -> Profile -> Application PasswordsСкопируйте
.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Установите зависимости:
npm installЗапустите сервер:
$env:NODE_OPTIONS='--use-system-ca' npm startNODE_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-адресе.
Перенос для другого пользователя
Скопируйте папку
ItchWPMCPна их компьютер или опубликуйте её как приватный/публичный репозиторий.Выполните
npm installвнутри папки.Создайте файл
.envиз.env.example.В их админ-панели WordPress создайте пароль приложения:
Users -> Profile -> Application PasswordsВнесите URL их сайта, имя пользователя и пароль приложения в
.env.Зарегистрируйте 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/.
Maintenance
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
- AlicenseNot gradedqualityBmaintenanceHosted MCP server that bridges Claude.ai with one or more WordPress sites.5ISC
- AlicenseAqualityBmaintenanceA Model Context Protocol server that gives Claude (or any MCP-compatible LLM) direct access to a self-hosted WordPress site over its REST API.73MIT
- AlicenseNot gradedqualityBmaintenanceA local server that enables Claude or other MCP tools to manage WordPress posts and media via REST API.21MIT
- FlicenseNot gradedqualityCmaintenanceA local MCP server that bridges Claude Desktop to your WordPress site via the WordPress MCP Adapter. It dynamically discovers and proxies all tools, resources, and prompts registered through the WordPress Abilities API.
Related MCP Connectors
WordPress MCP server: generate SEO posts, AI images, autoblog & WooCommerce on your self-hosted site
WordPress MCP server: publish posts, AI images, SEO and full site management, self-hosted
Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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