
MoySklad MCP (RU)
io.github.ilyautovPublished by GitHub account ilyautovv0.2.0Updated Oct 25, 2026
MoySklad JSON API 1.2 in your AI assistant — schema-driven, safety-gated document writes.
Overview
Local MCP server giving an AI assistant direct access to a MoySklad (Russian accounting) account via JSON API 1.2: stock, products, orders, reports and gated-dc
- What you can do
- Read stock, products, orders, counterparties, stores and documents, plus profit, money and turnover reports, with kopecks converted to rubles automatically and auto-pagination across lists. Search, describe and call any of the roughly 892 catalogued API methods, or fetch raw endpoints not yet in the catalog. Build a preview of any document type without writing, and create drafts of purchase orders, supplies, demands, invoices and returns. Post or delete documents as separate destructive steps behind explicit confirmation flags. Manage several cabinets and switch the active account from chat.
- When to use it
- Useful when accounting lives in MoySklad and you want an assistant to answer questions about real balances, orders and profit from the live API instead of guessing, or to prepare draft documents. Best tried first on a test cabinet before pointing it at production books.
- Requirements
- Runs locally as a Python package via uvx (or an installer script / .mcpb bundle); dependencies are installed automatically on first run. Needs a MoySklad personal access token, supplied as MOYSKLAD_TOKEN or stored in ~/.moysklad-mcp/cabinets.json. Network access to the MoySklad HTTPS API. Writing additionally requires MOYSKLAD_ALLOW_WRITE=1.
Installation
In SourceWeft
- Open MoySklad MCP (RU) in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
moysklad-mcp-ru: AI-доступ к МойСклад для Claude Code, Cursor, Codex и Cowork
Ведёте учёт в МойСклад — дайте ИИ прямой доступ к вашему аккаунту. Один MCP-сервер над JSON API 1.2 МойСклад: остатки, товары, заказы, контрагенты, отчёты (прибыль, обороты, деньги) и запись документов (приёмки, отгрузки, заказы, счета, возвраты) — напрямую по API, без браузера. Числа приходят из реального API, а не выдумываются моделью. Два гейта на запись не дают случайно создать или провести документ в боевом учёте. Авто-пагинация, мультикабинет, поиск по-русски. Для Claude Code, Cursor, Codex, Cowork и Claude Desktop.
[PyPI] [MCP Registry] [License: MIT] [Тулов] [Тестов] [Сайт] [Звёзды]
Быстрый старт, без установки в систему:
Клиенты, токен и способ «попроси своего ИИ поставить»: в разделе «Установка».
⚠️ alpha. Помогает с операционкой учёта, но это инструмент, а не замена бухгалтера. Курированное ядро и срез записи выверены боем на тестовом кабинете; импортированные из доки методы — карта для разведки (пути надёжны, тела write-запросов сверяйте по доке или зовите через raw-инструменты). Подробности — в разделе «Оговорки».
Зачем это нужно
Учёт живёт в МойСклад, а ИИ-ассистент обычно бесполезен: либо ходит через браузер
и спотыкается, либо выдумывает цифры, которые звучат уверенно. moysklad-mcp-ru
даёт агенту прямой доступ к JSON API 1.2 вашего аккаунта:
- Числа из реального API, а не из головы модели. Остатки, заказы, прибыль, обороты — это ответ МойСклад, с источником и полями.
- Запись за двумя гейтами. Создание документа делает ЧЕРНОВИК; проведение (двигает учёт) — отдельный destructive-шаг с подтверждением. Запись вообще выключена, пока её явно не включить и не направить на тестовый кабинет.
- Без браузера. Прямые HTTPS-вызовы по токену кабинета.
Скажите агенту обычными словами: «покажи остатки», «что пора дозаказать», «создай приёмку на 10 Рога от поставщика» — он подберёт метод или сценарий.
Что внутри
Не «один тул на эндпоинт», а 10 generic мета-тулов над каталогом — полное покрытие API при маленькой поверхности.
Мета-тулы (ms_search_methods, ms_describe_method, ms_call_method,
ms_write_method, ms_delete_method, ms_get_raw, ms_write_raw,
ms_delete_raw, ms_fetch_all, ms_map, + тулы кабинетов).
Типизированные read-тулы: ms_get_stock, ms_get_products, ms_get_orders,
ms_get_profit, ms_get_money, ms_get_turnover, ms_get_counterparties,
ms_get_stores, ms_get_documents (7 типов), ms_ping. Копейки автоматически
переводятся в рубли.
Тулы записи (за двумя гейтами):
7 ролевых типов: purchaseorder, supply, demand, invoicein, invoiceout,
salesreturn, purchasereturn.
Каталог — schema-driven из официальной доки МойСклад: 892 метода (курированное
ядро выверено живьём; остальное импортировано из доки). ms_get_raw достаёт всё,
чего ещё нет в каталоге.
Что можно спросить
Не уверены, с чего начать — скажите «что ты умеешь по моему кабинету» или
вызовите ms_map.
Safety model
Токен кабинета двигает остатки и деньги. Каждый метод классифицирован:
- read → выполняется сразу;
- write (создать черновик) → требует
confirm_write=trueИ включённой записиMOYSKLAD_ALLOW_WRITE=1; - destructive (провести / удалить) → ещё и
i_understand_this_modifies_data=true.
Два независимых слоя: (1) процессный guard (MOYSKLAD_ALLOW_WRITE, по умолчанию
ВЫКЛ, опц. пин к кабинету MOYSKLAD_WRITE_CABINETS) — защита от направления на
боевой кабинет; (2) per-call гейт. Guard покрывает и сырые ms_call_method/
raw-инструменты, не только типизированные тулы. 0 мутаций, помеченных как read —
проверяется тестом (test_safety_catalog) в CI. Создание всегда делает ЧЕРНОВИК;
проведение — отдельный шаг.
Установка
Подробный гайд — в QUICKSTART.md. Три пути, один результат:
- Проще всего — попроси своего ИИ (без терминала). Открой Claude / Cowork и
скажи: «установи МойСклад MCP» — агент проведёт по встроенному
moysklad-mcp-install/. - Скачать и кликнуть. Возьми release-zip, распакуй, двойной клик
install.command(macOS) /install.bat(Windows), вставь токен. - Технический.
python3 install.py --client <твой-клиент>(claude-desktop / claude-code / codex / opencode). - Для разработчиков. Пакет на PyPI — запуск без установки:
uvx moysklad-mcp-ru. Для Claude Desktop — готовый.mcpb-бандл из релиза (двойной клик, токен вводится в окне настроек). Полный список каналов и как режется релиз — в docs/DISTRIBUTION.md.
Для путей 1–3 не нужно ни pip install, ни правки JSON: зависимости ставятся сами
при первом запуске (локальный venv), от тебя — только токен.
Где взять токен: МойСклад → Настройки → Пользователи → Токены доступа. Токен
хранится в ~/.moysklad-mcp/cabinets.json (локально, chmod 600, никогда в репо
и не в чат). Поддержка мультикабинета — несколько аккаунтов с переключением из
чата (ms_add_cabinet / ms_use_cabinet).
Проверка после установки. Поставили пакетом (uvx, pip): moysklad-mcp-ru doctor — печатает версию, число инструментов, размер каталога и состояние гейта записи, в сеть не ходит. Работаете из клона: python3 serve.py ms --selfcheck → «OK: ms ready, N tools».
Деньги
Все суммы в API — в копейках. Read-тулы отдают рубли. На записи
convert_money_to_kopecks переводит цены/суммы рубли→копейки (price позиции,
sum, price-объекты). Сырые мета-тулы работают в копейках как есть.
Выверено боем
- Хост
api.moysklad.ru/api/remap/1.2, списки вrows, offset+limit (макс 1000). - Лимит: бакет 45/3с, окно 3000 мс, тяжёлый отчёт остатков весит 5 единиц.
- Жёстко:
Accept: application/json;charset=utf-8ровно (иначе 400 код 1062),Accept-Encoding: gzip(иначе 415). - Запись (демо-кабинет): веер create→read-back→проведение→движение остатков→ удаление→откат на всех 6 ролевых типах + purchaseorder. Деньги ×100 верны, supply/salesreturn +, demand/purchasereturn −, счета не двигают, удаление откатывает, возвраты создаются standalone.
Оговорки (сверяйте с живой докой)
- Импортированные из доки методы: пути надёжны, тела write — нет. Считайте их картой разведки: подтверждайте по доке или зовите через raw-инструменты. Курированное ядро и срез записи — надёжны.
- Кабинет затеняет env: активный кабинет в
cabinets.jsonприоритетнее переменных окружения. Необъяснимый 401 — первым делом проверьте стор. - Запись только на тестовый кабинет. Не направляйте
MOYSKLAD_ALLOW_WRITE=1на боевой учёт, пока сами не проверите на тесте.
Структура
Лицензия
MIT. Вендорный core/ — под MIT Ильи Утова, см. NOTICE. Архитектура
(schema-driven каталог, safety-гейт, единые ошибки, авто-пагинация) переиспользует
сильнейшие идеи marketplaces-mcp-ru.
Нашли косяк — заводите issue. Это alpha и открытый код: ставьте, проверяйте на своих данных, экспериментируйте.
mcp-name: io.github.ilyautov/moysklad-mcp-ru
Кто это сделал
Илья Утов, лаборатория AI Frontier. Как эти инструменты устроены внутри, пишу в Telegram и LinkedIn.
Рядом стоят:
- humanizer-ru: убирает следы нейросети из русского текста
- marketplaces-mcp-ru: Wildberries, Ozon, Яндекс Маркет и Авито прямо из агента
- small-business-ru: 34 скилла для малого бизнеса, считают налоги и проверяют контрагента по ИНН
- consilium-principis: совет мыслителей, где каждая цитата сверяется дословно
- hefest: химическая безопасность завода, целиком офлайн
Все проекты одним списком, разобранные по назначению: ilyautov.github.io. Исходники: github.com/ilyautov. Пригодилось, поставьте звезду: по ней это находят другие.
Source: README.md at commit 8f34e18
Tools
0Version history
1- v0.2.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts