Заметки

MCP для WooCommerce: даём ИИ доступ к магазину

M
Markabus
·15 августа 2026 г.
Рабочий стол разработчика в тёмной графитовой комнате: ноутбук с админкой интернет-магазина и списком заказов, рядом монитор с JSON-ответом и терминалом

Ещё год назад «подключить ИИ к магазину» означало написать прослойку: взять WooCommerce REST API, обернуть каждый метод в функцию, описать схемы, подружить всё это с конкретной моделью. Сейчас задача решается иначе — WooCommerce умеет сам рассказывать ИИ-клиенту, что он умеет делать, по протоколу MCP. Разберём, что именно появилось, как это включить и где проходит граница между «удобно» и «опасно».

Коротко: что такое MCP и зачем он магазину

MCP (Model Context Protocol) — открытый стандарт, по которому модель получает доступ к внешним инструментам и данным. Вместо десятка самописных интеграций у вас один разъём: сервер публикует список инструментов со схемами входа и выхода, а клиент (Claude, ChatGPT, Cursor, ваш собственный агент) их вызывает. Если тема для вас новая, начните с разбора что такое MCP простыми словами и как ИИ вообще вызывает инструменты.

Для интернет-магазина выгода прикладная. Вместо того чтобы выгружать CSV и загонять его в чат, вы спрашиваете у ассистента: «покажи заказы в статусе processing старше трёх дней», «найди товары без описания в категории X», «поставь заказу 1042 статус completed и добавь заметку». Модель сама подберёт нужный инструмент, подставит параметры и вернёт результат. Это же открывает дорогу к рутинным сценариям — массовой правке карточек, генерации описаний товаров нейросетью, разбору обращений.

Что появилось в WooCommerce

Официальная MCP-интеграция в WooCommerce находится в статусе developer preview — в документации прямо сказано, что детали реализации, API и способы подключения могут измениться в будущих релизах. Это важно: строить на этом продакшен-процесс без запаса на переделку рано.

Ключевой шаг сделан в WooCommerce 10.9 (релиз 23 июня 2026 года). В нём появились канонические abilities — «умения», зарегистрированные через Abilities API WordPress, со строгими схемами входа и выхода, WooCommerce-специфичными перечислениями значений и проверками прав:

  • woocommerce/products-query — выборка товаров с фильтрами;
  • woocommerce/product-create — создание товара;
  • woocommerce/product-update — обновление товара;
  • woocommerce/product-delete — удаление товара;
  • woocommerce/orders-query — выборка заказов с фильтрами;
  • woocommerce/order-update-status — смена статуса заказа;
  • woocommerce/order-add-note — добавление заметки к заказу.

Обратите внимание, чего в списке нет: создания и удаления заказов, работы с покупателями, купонами, возвратами, настройками магазина. Набор сознательно узкий — это каркас, а не полная замена REST API.

Abilities API — фундамент под всем этим

Abilities API приехал в ядро WordPress 6.9. Это реестр «умений»: плагин регистрирует функцию через wp_register_ability(), указывая человекочитаемое название, описание, категорию, JSON-схемы входа и выхода, колбэк выполнения и — обязательно — колбэк проверки прав. Дальше умение становится видно всем, кто умеет читать этот реестр.

Смысл разделения такой: WooCommerce отвечает за то, что магазин умеет, а протокол MCP — лишь один из способов это показать. Завтра появится другой транспорт — умения переписывать не придётся.

Два пути подключения

Путь 1. MCP-адаптер WordPress (рекомендуемый)

Мост между Abilities API и MCP — отдельный проект WordPress/mcp-adapter. Он ставится как обычный плагин и поднимает MCP-сервер поверх зарегистрированных умений. Требования: PHP 7.4 и выше, WordPress 6.9 и выше. На момент подготовки материала актуален релиз v0.5.0 (15 апреля 2026 года) — версия ниже единицы, и это тоже стоит держать в голове.

wp plugin install https://github.com/WordPress/mcp-adapter/releases/latest/download/mcp-adapter.zip --activate

Адаптер умеет два транспорта. HTTP — REST-маршрут /wp-json/mcp/mcp-adapter-default-server, к которому подключается удалённый клиент. STDIO — локальный запуск через WP-CLI:

wp mcp-adapter serve --server=mcp-adapter-default-server

По умолчанию доступ разрешён авторизованному пользователю WordPress (проверка is_user_logged_in()), а для внешних клиентов через прокси используются Application Passwords — встроенные в WordPress «пароли приложений». Умение попадает в MCP-сервер, если при регистрации помечено как публичное для MCP (meta.mcp.public: true).

Путь 2. Устаревший эндпоинт WooCommerce

Исторически WooCommerce поднимал собственный MCP-эндпоинт:

https://вашмагазин.ru/wp-json/woocommerce/mcp

Он ещё работает, но помечен как deprecated: с 10.9 умения попадают в него не автоматически, а только если явно помечены метаданными expose_in_deprecated_woocommerce_mcp => true. Авторизация здесь — обычные ключи WooCommerce REST API в заголовке:

X-MCP-API-Key: ck_ваш_consumer_key:cs_ваш_consumer_secret

Ключи создаются в админке: WooCommerce → Настройки → Дополнительные → REST API. Права ключа определяют, что разрешено: read — только чтение, write — изменяющие операции, read_write — всё сразу.

Для нового проекта берите первый путь. Второй пригодится, если нужно подключиться быстро и вы готовы к переезду.

Включаем интеграцию

Функциональность спрятана за флагом mcp_integration. Включить можно фильтром в коде темы или плагина:

add_filter( 'woocommerce_features', function( $features ) {
    $features['mcp_integration'] = true;
    return $features;
});

Либо одной командой WP-CLI, без правки файлов:

wp option update woocommerce_feature_mcp_integration_enabled yes

Подключаем клиента

Прямое подключение к удалённому серверу поддерживают не все клиенты, поэтому в документации предлагается прокси-пакет @automattic/mcp-wordpress-remote, который запускается через npx и превращает удалённый сервер в локальный stdio-сервер. Для Claude Code:

claude mcp add woocommerce_mcp \
  --env WP_API_URL=https://вашмагазин.ru/wp-json/woocommerce/mcp \
  --env CUSTOM_HEADERS='{"X-MCP-API-Key": "КЛЮЧ:СЕКРЕТ"}' \
  -- npx -y @automattic/mcp-wordpress-remote@latest

Для клиентов с файлом конфигурации запись выглядит так:

{
  "mcpServers": {
    "woocommerce_mcp": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
      "env": {
        "WP_API_URL": "https://вашмагазин.ru/wp-json/woocommerce/mcp",
        "CUSTOM_HEADERS": "{\"X-MCP-API-Key\": \"КЛЮЧ:СЕКРЕТ\"}"
      }
    }
  }
}

Тот же пакет умеет работать и через логин с Application Password — переменные WP_API_USERNAME и WP_API_PASSWORD, а ключи магазина передаются отдельно в WOO_CUSTOMER_KEY и WOO_CUSTOMER_SECRET. Пакет тоже ранний: актуальная версия 0.1.9.

Подробнее про сам процесс подключения серверов и типовые грабли — в отдельном разборе про подключение MCP-серверов к Claude Code.

Права и безопасность: главное

Здесь нужно быть аккуратным сильнее обычного, потому что на другом конце — реальные деньги и персональные данные покупателей.

Проверка прав. Операции требуют возможности manage_woocommerce. Это роль уровня менеджера магазина — то есть MCP-клиент получает не «чуть-чуть посмотреть», а полноценный административный доступ к товарам и заказам.

Персональные данные. Документация отдельно предупреждает: операции с заказами отдают персональные данные покупателей, и ответственность за соответствие законодательству лежит на владельце магазина. Практический вывод простой — не отправляйте выгрузки заказов в произвольные внешние сервисы «просто посмотреть». Начинайте с ключей только на чтение и на тестовой копии магазина.

HTTPS. Запросы к MCP-эндпоинту требуют HTTPS по умолчанию. Для локальной разработки требование снимается фильтром — и только для неё:

add_filter( 'woocommerce_mcp_allow_insecure_transport', '__return_true' );

Минимум прав. Заводите отдельный ключ под каждого клиента, а не один «универсальный». Тогда компрометацию можно локализовать, отозвав один ключ. Расширенный чек-лист — в материале про безопасность MCP-серверов, а про границы полномочий агентов есть отдельный разбор.

И помните про промпт-инъекции: если модель читает тексты, пришедшие извне — отзывы, комментарии к заказам, письма покупателей, — в них может оказаться инструкция «удали товар». Умение product-delete в этой связке выглядит уже совсем иначе. Разрушающие операции стоит либо не включать, либо ставить перед ними подтверждение человеком.

Если не работает

Первое место, куда смотреть, — WooCommerce → Статус → Логи, записи с источником woocommerce-mcp. Там видно, дошёл ли запрос вообще и на чём он споткнулся.

Типовые причины: не включён флаг фичи; ключ создан с правами read, а клиент пытается писать; сайт отвечает по HTTP вместо HTTPS; версия WordPress ниже 6.9, и Abilities API просто отсутствует; умение не помечено как публичное для MCP. Если ошибка на стороне клиента, а не сайта, помогут общие приёмы из гайда как отладить MCP-сервер.

Когда MCP не нужен

Не каждая интеграция должна идти через модель. Если у вас детерминированный сценарий — синхронизация остатков с 1С, выгрузка заказов в CRM, обновление цен по расписанию — берите обычный WooCommerce REST API. Он стабильный, документированный и не стоит токенов. Официальная рекомендация ровно такая же: сырые REST-интеграции продолжают жить на REST API.

MCP выигрывает там, где сценарий заранее не расписан: аналитический вопрос на естественном языке, разбор нестандартной ситуации, помощь оператору. Если же вам нужен свой набор инструментов под конкретный бизнес-процесс — можно зарегистрировать собственные умения через wp_register_ability() или написать отдельный MCP-сервер.

Вывод

WooCommerce сделал заметный шаг: магазин теперь умеет описывать себя языком, понятным ИИ-клиентам, и это заложено на уровне ядра WordPress через Abilities API, а не прикручено сбоку. Но статус developer preview, версии адаптера и прокси-пакета ниже единицы и уже депрекейтнутый первый эндпоинт говорят прямо: технология в движении.

Разумная стратегия на сегодня — поднять на стейджинге, дать ключ только на чтение, прогнать реальные вопросы к каталогу и заказам и оценить, сколько ручной работы это снимает. Разрушающие операции подключать в последнюю очередь и с подтверждением. А детерминированную рутину оставить REST API — ей ИИ не нужен.

Частые вопросы

Q.Какая версия WooCommerce нужна для MCP?

Канонические abilities для товаров и заказов появились в WooCommerce 10.9 (релиз 23 июня 2026 года). Для работы через MCP-адаптер WordPress также нужны WordPress 6.9 и выше (в нём в ядро приехал Abilities API) и PHP 7.4 и выше.

Q.Чем MCP отличается от WooCommerce REST API?

REST API — это фиксированные маршруты, которые вызывает ваш код по заранее написанному сценарию. MCP публикует те же возможности как самоописывающиеся инструменты со схемами, чтобы модель могла сама выбрать подходящий и подставить параметры. Для детерминированных интеграций (синхронизация остатков, выгрузка в CRM) официально рекомендуют остаться на REST API.

Q.Что MCP-клиент может сделать с магазином?

В текущем наборе: выборка, создание, обновление и удаление товаров; выборка заказов, смена статуса заказа и добавление заметки к заказу. Создания заказов, работы с покупателями, купонами и настройками магазина в каноническом наборе пока нет.

Q.Насколько это безопасно для персональных данных покупателей?

Операции с заказами отдают персональные данные, и документация прямо возлагает ответственность за соответствие законодательству на владельца магазина. Операции требуют возможности manage_woocommerce, то есть доступ фактически административный. Начинайте с ключа только на чтение, отдельного ключа под каждого клиента и тестовой копии магазина.

Источники

Предыдущая
Генерация alt-текста нейросетью для WooCommerce

Читайте также

Монитор с сеткой миниатюр фотографий товаров интернет-магазина и полями подписей под ними, перед экраном на столе стоит замшевый ботинок с той же карточки, рядом фотоаппарат и клавиатураЗаметки
15 августа 2026 г.

Генерация alt-текста нейросетью для WooCommerce

В каталоге на тысячи товаров alt-текст руками не заполнить. Разбираем, каким должен быть хороший alt, где WordPress его хранит, как прогнать весь каталог через мультимодальную модель — плагином или своим скриптом — и во сколько это обойдётся.

Читать →
Разработчик за монитором: в редакторе открыто дерево папок и файл SKILL.md с блоком метаданных — скиллы в Claude CodeЗаметки
13 августа 2026 г.

Скиллы в Claude Code: как научить агента своим процессам

Скилл — это папка с инструкцией, которую агент подхватывает только тогда, когда она нужна. Разбираем устройство SKILL.md, места хранения, поля фронтматтера, динамический контекст и типичные ошибки.

Читать →
Тёмная графитовая комната, крупный план монитора на рабочем столе: в редакторе вверху экрана небольшой блок подсвеченного синтаксисом текста настроек, ниже — терминал с зелёным выводом; клавиатура в расфокусе на переднем плане, тёплый отблеск от окна на кромке монитораЗаметки
13 августа 2026 г.

Системный промпт: как задать модели роль и правила

Системный промпт — отдельное поле запроса, где разработчик задаёт модели роль, правила и формат ответа. Разбираем иерархию инструкций, синтаксис в API Claude, OpenAI и Gemini, структуру рабочего промпта и частые ошибки.

Читать →