Skip to main content
Glama

WordPress MCP Server

Готовый к использованию сервер Model Context Protocol (MCP) для интеграции с WordPress. Позволяет AI-агентам взаимодействовать с сайтами WordPress через структурированные инструменты.

Возможности

  • 39 инструментов WordPress, охватывающих записи, страницы, медиафайлы, пользователей, категории, метки, плагины, темы, меню и WooCommerce

  • Безопасная аутентификация с использованием паролей приложений WordPress

  • Защита от деструктивных операций, требующая явного подтверждения

  • Структурированная обработка ошибок с подробными кодами ошибок

  • Поддержка пагинации для операций со списками

  • Конфигурация на основе переменных окружения для учётных данных

Related MCP server: WordPress MCP Server

Предварительные требования

  • Node.js 18+

  • Сайт WordPress с включённым REST API

  • Пароль приложения WordPress для аутентификации

Установка

npm install
npm run build

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

Создайте файл .env в корне проекта:

WORDPRESS_URL=https://your-wordpress-site.com
WORDPRESS_USERNAME=your-username
WORDPRESS_APP_PASSWORD=your-application-password

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

  1. Перейдите в WordPress Admin → Пользователи → Ваш профиль

  2. Прокрутите до раздела «Пароли приложений»

  3. Введите имя (например, «MCP Server»)

  4. Нажмите «Добавить новый пароль приложения»

  5. Скопируйте сгенерированный пароль

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

Запуск сервера

# Development
npm run dev

# Production
npm start

Интеграция с MCP-клиентами

Добавьте в конфигурацию вашего MCP-клиента:

{
  "mcp": {
    "wordpress": {
      "type": "local",
      "command": ["node", "/path/to/wordpress-mcp-server/dist/index.js"],
      "environment": {
        "WORDPRESS_URL": "https://your-site.com",
        "WORDPRESS_USERNAME": "your-username",
        "WORDPRESS_APP_PASSWORD": "your-app-password"
      }
    }
  }
}

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

Операции с сайтом

Инструмент

Описание

get_site_info

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

get_site_settings

Получить конфигурацию сайта

get_site_health

Получить диагностику здоровья

get_performance

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

search_site

Поиск контента по всему сайту

Операции с записями

Инструмент

Описание

list_posts

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

get_post

Получить запись по ID

create_post

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

update_post

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

delete_post

Удалить запись (требуется подтверждение)

publish_post

Опубликовать черновик записи

Операции со страницами

Инструмент

Описание

list_pages

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

get_page

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

create_page

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

update_page

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

delete_page

Удалить страницу (требуется подтверждение)

Операции с медиафайлами

Инструмент

Описание

list_media

Список элементов медиатеки

upload_media

Загрузить медиафайл

delete_media

Удалить медиафайл (требуется подтверждение)

Операции с пользователями

Инструмент

Описание

list_users

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

get_user

Получить пользователя по ID

create_user

Создать нового пользователя

update_user

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

Операции с таксономиями

Инструмент

Описание

list_categories

Список категорий

create_category

Создать новую категорию

list_tags

Список меток

create_tag

Создать новую метку

Операции с плагинами

Инструмент

Описание

list_plugins

Список установленных плагинов

activate_plugin

Активировать плагин (требуется подтверждение)

deactivate_plugin

Деактивировать плагин (требуется подтверждение)

Операции с темами

Инструмент

Описание

list_themes

Список установленных тем

activate_theme

Активировать тему (требуется подтверждение)

Операции с меню

Инструмент

Описание

get_menus

Получить навигационные меню

update_menu

Обновить меню

Операции WooCommerce

Инструмент

Описание

get_woocommerce_products

Список товаров

create_woocommerce_product

Создать товар

update_woocommerce_product

Обновить товар

get_woocommerce_orders

Список заказов

get_woocommerce_customer

Список клиентов

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

  • Учётные данные хранятся в переменных окружения (никогда не отображаются в выводе)

  • Деструктивные операции требуют явного подтверждения

  • Операции только для чтения выполняются автоматически

  • Аутентификация для всех защищённых ресурсов

Разработка

# Run in development mode
npm run dev

# Build for production
npm run build

# Run tests
npm test

Структура проекта

wordpress-mcp-server/
├── src/
│   ├── index.ts          # Entry point
│   ├── server.ts         # MCP server setup
│   ├── client/
│   │   └── wordpress.ts  # WordPress API client
│   ├── tools/
│   │   ├── index.ts      # Tool registration
│   │   ├── definitions.ts # Tool schemas
│   │   ├── site.ts       # Site tools
│   │   ├── posts.ts      # Post tools
│   │   ├── pages.ts      # Page tools
│   │   ├── media.ts      # Media tools
│   │   ├── users.ts      # User tools
│   │   ├── taxonomies.ts # Taxonomy tools
│   │   ├── plugins.ts    # Plugin tools
│   │   ├── themes.ts     # Theme tools
│   │   ├── menus.ts      # Menu tools
│   │   └── woocommerce.ts # WooCommerce tools
│   ├── validation/
│   │   └── schemas.ts    # Zod validation schemas
│   ├── types/
│   │   └── index.ts      # TypeScript type definitions
│   └── utils/
│       ├── config.ts     # Environment configuration
│       └── logger.ts     # Structured logging
├── package.json
├── tsconfig.json
└── .env.example

Лицензия

MIT

Related MCP Connectors

Related MCP Servers