marketplaces-mcp-ru
AI-доступ к кабинетам Wildberries и Ozon через MCP-сервера над Seller API. Обеспечивает 793 метода для управления продажами, остатками, ценами, финансами, отзывами и рекламой с safety-гейтом и авто-пагинацией.
README
marketplaces-mcp-ru: AI-доступ к кабинетам Wildberries и Ozon для Claude Code, Cursor, Codex и Cowork
Продаёте на WB и Ozon — дайте ИИ прямой доступ к обоим кабинетам. Два MCP-сервера над Seller API Wildberries и Ozon: 793 метода (продажи, остатки, цены, финансы, отзывы, поставки, реклама), собранных schema-driven из официальных OpenAPI-спеков. Числа приходят из реального API, а не выдумываются моделью. Safety-гейт не даёт случайно изменить цену или остаток. Авто-пагинация, мультикабинет, поиск по-русски. Для Claude Code, Cursor, Codex, Cowork и Claude Desktop.
<!-- social preview: assets/social-preview.png → загрузить в Settings → Social preview. TODO: сайт marketplaces-mcp-ru.aifrontier.tech (как у humanizer-ru / small-business-ru) -->
Зачем это нужно
Вы продаёте на двух маркетплейсах одновременно, а данные — в двух разных кабинетах. Продажи, остатки, цены, финансы, отзывы — всё руками, через два браузера, по очереди. ИИ-ассистент тут обычно бесполезен: либо ходит через браузер и спотыкается о капчу, либо выдумывает цифры, которые звучат уверенно.
marketplaces-mcp-ru заходит с другой стороны — даёт ИИ-агенту прямой доступ к Seller API обоих кабинетов:
- Числа из реального API, а не из головы модели. Продажи, остатки, маржа, финотчёт — это ответ Wildberries и Ozon, с источником и полями, а не правдоподобная выдумка.
- Safety-гейт на всё, что трогает деньги. Каждый метод помечен
read/write/destructive; чтение идёт сразу, а смена цены или остатка требует явного подтверждения. Случайно «уронить цену в 3 раза» нельзя. - Без браузера и капчи. Прямые HTTPS-вызовы по токену кабинета.
Скажите агенту обычными словами: «покажи продажи за неделю на обоих», «что пора дозаказать», «сравни цены с рынком» — он подберёт метод или готовый сценарий и проведёт по шагам.
⚠️ alpha. Помогает с операционкой продавца, но это инструмент, а не замена аналитика. Курированное ядро выверено боем на реальных кабинетах; импортированные из спеков методы — карта для разведки (пути надёжны, HTTP-глаголы подтверждайте по докам). Подробности — в разделе «Оговорки» ниже.
Что внутри
Не «один тул на эндпоинт» (это 300+ тулов, в которых агент тонет), а 8 generic мета-тулов над каталогом — полное покрытие API при маленькой поверхности.
ваш ИИ-агент
│
▼
8 мета-тулов ──► каталог (endpoints.yaml) ──► общий core
search / describe / клиент · safety · ошибки
call / call_raw / пагинация · реестр
fetch_all / ... │
+ типизированные тулы (wb_get_sales, ozon_get_prices, …) ▼
Wildberries / Ozon HTTPS API
Мета-тулы (одинаковый набор на оба сервера, префикс wb_ / ozon_):
| Тул | Что делает |
|---|---|
*_check_auth |
Есть ли креды (секреты не печатает) |
*_search_methods |
Поиск метода — по-русски или по-английски |
*_describe_method |
Полная спека: метод, хост, путь, scope, safety, лимит, doc |
*_call_method |
Вызвать любой метод каталога (через safety-гейт) |
*_call_raw |
Вызвать любой путь, даже вне каталога (100% покрытие) |
*_fetch_all |
Авто-пагинация (offset / last_id / cursor / WB date-курсор) |
Плюс типизированные удобные тулы (wb_get_sales, wb_get_stocks, ozon_get_products, ozon_get_prices, …) и тулы кабинетов.
Сценарии (workflows) — не сырые эндпоинты, а рецепты. *_list_workflows / *_get_workflow выдают пошаговые рецепты с трактовкой и типичными ошибками. WB: sales_pulse, stock_health, price_audit, reorder_planner, abc_analysis, reviews_pulse. Ozon: oos_risk_analysis, pricing_analysis, unit_economics, catalog_sync, content_quality_audit, abc_analysis, reviews_pulse. Каждый шаг сверяется с каталогом.
Покрытие — schema-driven из официальных OpenAPI-спеков:
| Каталог | Файл | Методов | Секций |
|---|---|---|---|
| Wildberries | wb_mcp/endpoints.yaml |
307 | 70 |
| Ozon Seller | ozon_mcp/endpoints.yaml |
441 | 67 |
| Ozon Performance (реклама) | ozon_mcp/perf_endpoints.yaml |
45 | 6 |
Курированное ядро (продажи/остатки/цены/финансы/отзывы) выверено вживую; остальное импортировано из спеков. call_raw достаёт всё, чего ещё нет в каталоге.
Секции методов — что покрыто на обоих маркетплейсах
Сырые секции каталога сгруппированы по бизнес-областям:
| Область | Wildberries | Ozon |
|---|---|---|
| Продажи и заказы | продажи, заказы, сборочные задания FBS / DBS / DBW / Самовывоз | заказы FBO / FBS, отправления, возвраты |
| Остатки и склады | остатки, склады продавца, поставки FBS | остатки по складам, FBO / FBS, аналитика остатков |
| Цены и скидки | цены и скидки, календарь акций | цены, стратегии ценообразования, акции |
| Финансы | финотчёт реализации, баланс | транзакции, начисления, реализация, компенсации |
| Контент и карточки | карточки, категории, характеристики, медиа | товары, атрибуты, категории, сертификаты |
| Отзывы и вопросы | отзывы, вопросы | отзывы (нужен Premium Plus), вопросы и ответы |
| Реклама | управление кампаниями, статистика | Performance API (отдельный сервер) |
| Аналитика | воронка продаж, отчёты | аналитические отчёты, оборачиваемость |
Полный список секций — *_list_sections прямо в чате, или поиск: wb_search_methods("остатки").
Что можно спросить
Попросите агента по-русски, обычными словами:
покажи продажи за неделю на WB и Ozon и сравни
что пора дозаказать — посчитай дни покрытия по остаткам и продажам
вытащи финотчёт реализации WB за прошлый месяц
какие товары на Ozon с красным индексом цены — кандидаты на снижение
собери отзывы ниже 4 звёзд за неделю и сгруппируй жалобы по товару
сделай ABC-анализ по выручке и покажи товары-хвост
Не уверены, с чего начать — скажите «что ты умеешь по моему кабинету» или вызовите wb_list_workflows / ozon_list_workflows: готовые сценарии с трактовкой и типичными ошибками.
До и после
Аналитика «на глаз», по одному кабинету в браузере:
Зашёл в кабинет WB, прикинул по верхам, что продаётся. До Ozon руки не дошли. Что пора дозаказывать — решил по памяти.
Через marketplaces-mcp-ru:
Агент дёрнул продажи и остатки с обоих кабинетов по API, посчитал ADS и дни покрытия скриптом, вывел список «дозаказать в первую очередь» с цифрами. Сравнил цены Ozon с рыночным индексом, отметил красные. Всё — из реального ответа API, не из головы модели, и без риска случайно изменить цену (safety-гейт на запись).
Safety model
Ключи кабинета двигают цены, остатки и деньги. Каждый метод классифицирован:
- read → выполняется сразу;
- write → требует
confirm_write=true; - destructive → требует
confirm_write=trueиi_understand_this_modifies_data=true.
Гейт работает локально — без подтверждений наружу ничего не уходит. 0 мутаций, помеченных как read во всех трёх каталогах — это проверяется тестом в CI (test_safety_catalog.py), а не на словах: сборка падает, если в каталог попадёт PUT/PATCH/DELETE с safety: read. Вдобавок call_method страхуется на лету — даже устаревший read на мутирующем глаголе не понизит гейт ниже write.
Установка
Подробный пошаговый гайд под любую аудиторию — в QUICKSTART.md. Три пути, один результат:
- Проще всего — попроси своего ИИ (без терминала). Открой Claude / Cowork и скажи: «установи WB + Ozon MCP» — агент проведёт по встроенному
install-skill/. (Песочница Cowork не лезет на твою машину, поэтому финальный клик остаётся за тобой — скилл лишь доводит без ошибок. В Claude Code ставится полностью сам.) - Скачать и кликнуть. Возьми
marketplaces-mcp-ru-v<версия>.zipиз GitHub Releases, распакуй, двойной кликinstall.command(macOS) /install.bat(Windows), вставь ключи. macOS, первый раз: правый клик → «Открыть» → «Открыть» (обойти Gatekeeper для скачанного файла). - Технический.
git clone https://github.com/ilyautov/marketplaces-mcp-ru→python3 install.py --client <твой-клиент>.
Установщик копирует приложение в стабильное место (~/.marketplace-mcp/app) и привязывает конфиг туда — скачанную или подключённую папку потом можно перемещать и удалять, MCP не сломается. Ни pip install, ни правки JSON: зависимости ставятся сами при первом запуске (локальный venv), от тебя — только ключи. 4 клиента через --client: claude-desktop и opencode получают записанный конфиг, claude-code и codex — готовые * mcp add команды.
Где взять ключи: Wildberries — seller.wildberries.ru → Настройки → Доступ к API; Ozon — seller.ozon.ru → Настройки → API-ключи. Ключи хранятся в ~/.marketplace-mcp/cabinets.json (локально, chmod 600, никогда в репо). Поддержка мультикабинета — несколько магазинов с переключением из чата (*_add_cabinet / *_use_cabinet).
Проверка после установки:
python3 serve.py ozon --selfcheck
Скрипты и рост каталога
В scripts/: ingest_specs.py / ingest_ozon.py (сборка каталогов из официальных спеков), derive_pagination.py и fix_items_path_from_examples.py (пагинация и items_path), validate_items_path.py (live-валидатор, гонять локально), package_release.py (чистый версионный zip), smoke_mcp.py. Каталоги дорастают аддитивно и идемпотентно — курированные safety и описания не перетираются.
Тесты
python3 -m pytest tests/ -q # 21 офлайн-тест, токены не нужны
Часто ищут
Как подключить ИИ к API Wildberries и Ozon? Поставьте marketplaces-mcp-ru — два MCP-сервера дают вашему агенту (Claude, Cursor, Codex, ChatGPT через MCP) прямой доступ к Seller API обоих кабинетов по токену. Без браузера и без капчи.
MCP-сервер для Wildberries / Ozon Seller API — есть готовый? Да, это он. Schema-driven каталог из официальных OpenAPI-спеков: 307 методов WB + 441 Ozon + 45 Ozon Performance, поиск по-русски, авто-пагинация.
Как дать Claude или ChatGPT доступ к кабинету WB / Ozon? Через MCP. Один раз ставите сервер (двойной клик инсталлера или install.py), вводите токен кабинета — дальше агент сам зовёт нужные методы. Ключ хранится локально (chmod 600), в чат не попадает.
Как получить продажи, остатки, цены и финансы WB / Ozon через API в ИИ? Спросите обычными словами — агент подберёт метод (wb_get_sales, ozon_get_prices, …) или сценарий и вернёт данные из реального ответа API.
Можно без 1С и без программирования? Да. Никакого pip install и правки JSON: зависимости ставятся сами, от вас — только API-ключ. Для не-технических есть установка «попроси своего ИИ» и двойной клик.
Чем отличается от парсеров и браузерных ботов? Это прямой Seller API по токену, а не парсинг страниц: нет капчи, нет блокировок, данные структурированные. Плюс safety-гейт не даёт случайно изменить цену или остаток.
Это бесплатно? Да, открытый код под MIT. Берите, форкайте, дорабатывайте.
Безопасно ли, куда уходят ключи? Сервер работает там же, где ваш агент (локально). Ключи лежат в ~/.marketplace-mcp/cabinets.json (chmod 600), в репозиторий и в чат не попадают. Запись в кабинет (смена цены/остатка) — только с явным подтверждением.
Оговорки (сверяйте с живой докой)
- WB
Authorization: сервер шлёт raw-токен безBearer(подтверждено боем). Если auth падает — первым делом проверьте это. - Импортированные из спеков методы: пути надёжны, HTTP-глаголы — нет. Live-проба нашла GET-помеченные методы, которые на деле POST (405). Считайте импортированные записи картой разведки: подтверждайте глагол/тело по докам или зовите через
call_raw. Курированное ядро (WB 7 категорий, Ozon 4 секции) и live-выверенный набор — надёжны. - Ozon дрейфует по версиям (list v3, attributes v4, prices v5). При 404 — проверьте версию;
ingest_ozon.pyпере-выравнивает пути. - Ozon Performance — пока каталог-артефакт + OAuth-обвязка по докам (контракт токен-эндпоинта не выверен боем, нужны рекламные креды).
- Кабинет затеняет env: активный кабинет в
cabinets.jsonимеет приоритет над переменными окружения. Необъяснимый 401 / «Client-Id should be positive integer» — первым делом проверьте стор.
Чем это не является
Инструмент для агента, а не онлайн-сервис «в один клик» и не замена аналитика. Курированное ядро выверено боем, но импортированные из спеков методы подтверждайте по докам. Решение, которое трогает цены, остатки или деньги, всегда за вами — safety-гейт лишь не даёт сделать это случайно. Это alpha и открытый код: ставьте, проверяйте на своих данных, экспериментируйте. Нашли косяк — заводите issue.
Собственный код, лучшие паттерны: архитектура берёт сильнейшие идеи зрелых marketplace-MCP (schema-driven каталог, safety-гейт, единые ошибки, авто-пагинация) без зависимости от чужих библиотек.
marketplaces-mcp-ru — открытый MCP-сервер для кабинетов Wildberries и Ozon: продажи, остатки, цены, финансы, отзывы, поставки и реклама через Seller API напрямую, без браузера и капчи. Подключает ИИ-агента (Claude Code, Cursor, Codex, Cowork, Claude Desktop, ChatGPT через MCP) к API WB и Ozon. Schema-driven каталог из официальных OpenAPI-спеков (793 метода), safety-гейт на запись, авто-пагинация, мультикабинет, поиск по-русски. Бесплатный open-source под MIT. Числа — из реального ответа API, а не из головы модели.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.