MoySklad MCP (RU)

io.github.ilyautov由 GitHub 账号 ilyautov 发布v0.2.0更新于 Oct 25, 2026

MoySklad JSON API 1.2 in your AI assistant — schema-driven, safety-gated document writes.

概览

AI 生成的概览

本地 MCP 服务器,通过 JSON API 1.2 让 AI 助手直接访问 MoySklad(俄罗斯进销存/会计)账户:库存、商品、订单、报表及受双重门控的文档写入。

可以做什么
读取库存、商品、订单、往来单位、仓库和文档,以及利润、资金和周转报表,自动把戈比换算成卢布并自动分页。搜索、描述并调用约 892 个已编目的 API 方法,或直接抓取尚未编目的原始端点。在不写入的前提下预览任意文档类型,并创建采购订单、入库、出库、发票和退货的草稿。过账或删除文档作为独立的破坏性步骤,需显式确认标志。管理多个账套并在对话中切换当前账户。
适用场景
当账务存放在 MoySklad,且希望助手基于实时 API 回答真实库存、订单和利润问题而不是凭空猜测,或需要准备文档草稿时适用。建议先在测试账套上试用,再指向正式账目。
运行要求
以 Python 包形式通过 uvx 本地运行(也可用安装脚本或 .mcpb 包),首次运行会自动安装依赖。需要 MoySklad 个人访问令牌,通过 MOYSKLAD_TOKEN 提供或存放在 ~/.moysklad-mcp/cabinets.json。需要访问 MoySklad HTTPS API 的网络。写入还需设置 MOYSKLAD_ALLOW_WRITE=1。
安装前请注意
该令牌可移动库存和资金,应视为敏感信息;它保存在本地 cabinets.json 中。写入默认关闭,须用 MOYSKLAD_ALLOW_WRITE=1 开启;README 建议写入只指向测试账套。过账和删除文档属破坏性操作,需要额外确认标志。从文档导入的编目方法路径可靠但写入请求体未经验证。项目标注为 alpha。

安装

在 SourceWeft 中

  1. 打开 控制台中的 MoySklad MCP (RU),将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

moysklad-mcp-ru: AI-доступ к МойСклад для Claude Code, Cursor, Codex и Cowork

🇬🇧 English version

Ведёте учёт в МойСклад — дайте ИИ прямой доступ к вашему аккаунту. Один MCP-сервер над JSON API 1.2 МойСклад: остатки, товары, заказы, контрагенты, отчёты (прибыль, обороты, деньги) и запись документов (приёмки, отгрузки, заказы, счета, возвраты) — напрямую по API, без браузера. Числа приходят из реального API, а не выдумываются моделью. Два гейта на запись не дают случайно создать или провести документ в боевом учёте. Авто-пагинация, мультикабинет, поиск по-русски. Для Claude Code, Cursor, Codex, Cowork и Claude Desktop.

[PyPI] [MCP Registry] [License: MIT] [Тулов] [Тестов] [Сайт] [Звёзды]

[moysklad-mcp-ru: МойСклад в ИИ-ассистенте. Остатки, заказы, отчёты и запись документов через JSON API 1.2, с гейтом безопасности]

Быстрый старт, без установки в систему:

bash
uvx moysklad-mcp-ru

Клиенты, токен и способ «попроси своего ИИ поставить»: в разделе «Установка».

⚠️ alpha. Помогает с операционкой учёта, но это инструмент, а не замена бухгалтера. Курированное ядро и срез записи выверены боем на тестовом кабинете; импортированные из доки методы — карта для разведки (пути надёжны, тела write-запросов сверяйте по доке или зовите через raw-инструменты). Подробности — в разделе «Оговорки».

Зачем это нужно

Учёт живёт в МойСклад, а ИИ-ассистент обычно бесполезен: либо ходит через браузер и спотыкается, либо выдумывает цифры, которые звучат уверенно. moysklad-mcp-ru даёт агенту прямой доступ к JSON API 1.2 вашего аккаунта:

  • Числа из реального API, а не из головы модели. Остатки, заказы, прибыль, обороты — это ответ МойСклад, с источником и полями.
  • Запись за двумя гейтами. Создание документа делает ЧЕРНОВИК; проведение (двигает учёт) — отдельный destructive-шаг с подтверждением. Запись вообще выключена, пока её явно не включить и не направить на тестовый кабинет.
  • Без браузера. Прямые HTTPS-вызовы по токену кабинета.

Скажите агенту обычными словами: «покажи остатки», «что пора дозаказать», «создай приёмку на 10 Рога от поставщика» — он подберёт метод или сценарий.

Что внутри

Не «один тул на эндпоинт», а 10 generic мета-тулов над каталогом — полное покрытие API при маленькой поверхности.

ваш ИИ-агент      │      ▼10 мета-тулов  ──►  каталог (endpoints.yaml)  ──►  общий core search / describe /                                клиент · safety · ошибки call / write / delete /                            пагинация · реестр fetch_all / map / ...                                    │ + типизированные тулы (ms_get_stock, ms_create_document, …)  ▼                                              МойСклад JSON API 1.2 (HTTPS)

Мета-тулы (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. Копейки автоматически переводятся в рубли.

Тулы записи (за двумя гейтами):

ТулУровеньНазначение
ms_build_documentreadPreview ЛЮБОГО типа: резолв ссылок + точное тело, БЕЗ записи.
ms_create_documentwriteСоздать ЛЮБОЙ ролевой тип ЧЕРНОВИКОМ (applicable:false).
ms_build_purchaseorder / ms_create_purchaseorderread / writeТипизированный заказ поставщику (для совместимости).
ms_post_documentdestructiveПровести документ (applicable:true) — двигает учёт.
ms_delete_documentdestructiveУдалить документ (уборка).

7 ролевых типов: purchaseorder, supply, demand, invoicein, invoiceout, salesreturn, purchasereturn.

Каталог — schema-driven из официальной доки МойСклад: 892 метода (курированное ядро выверено живьём; остальное импортировано из доки). ms_get_raw достаёт всё, чего ещё нет в каталоге.

Что можно спросить

покажи остатки и что пора дозаказатьвытащи прибыль по товарам за прошлый месяцкто из контрагентов должен нам денегсоздай черновик приёмки: 10 «Рога» от «ООО Поставщик» по 250 ₽   (на тестовом кабинете)проведи эту приёмку и покажи, как изменился остаток

Не уверены, с чего начать — скажите «что ты умеешь по моему кабинету» или вызовите 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. Три пути, один результат:

  1. Проще всего — попроси своего ИИ (без терминала). Открой Claude / Cowork и скажи: «установи МойСклад MCP» — агент проведёт по встроенному moysklad-mcp-install/.
  2. Скачать и кликнуть. Возьми release-zip, распакуй, двойной клик install.command (macOS) / install.bat (Windows), вставь токен.
  3. Технический. python3 install.py --client <твой-клиент> (claude-desktop / claude-code / codex / opencode).
  4. Для разработчиков. Пакет на 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 на боевой учёт, пока сами не проверите на тесте.

Структура

core/                 ← вендорный движок ilyautov/marketplaces-mcp-ru (MIT, не менялся)moysklad_mcp/         ← специфика МойСклад: server.py, build.py, money.py, refs.py,                        write_guard.py, endpoints.yaml(+curated), workflows.yaml, entities.yamltests/                ← 70 офлайн-тестовscripts/              ← ingest_moysklad.py (парсер доки), package_release.pyserve.py              ← лаунчер (авто-venv): python3 serve.py ms [--selfcheck]install.py + .command/.bat/.sh + moysklad-mcp-install/   ← установка под 4 клиента.mcp.json + .claude-plugin/ .codex-plugin/ .cursor-plugin/   ← плагин-манифестыdocs/                 ← исследование, аудит, RUNBOOK-и, точки возобновления (dev-доки)

Лицензия

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. Пригодилось, поставьте звезду: по ней это находят другие.

来源:README.md,提交 8f34e18

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.2.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分