Аналитика МойСклад с MCP-эндпоинтом
MoySklad Analytics
Self-hosted дашборд аналитики МойСклад (продажи, остатки, клиенты) с MCP-эндпоинтом, который отдает агенту те же проверенные цифры, что видны на экране
Средний риск
Средний уровень ставим, когда инструмент запускает код, ходит в сеть или читает файлы проекта. Перед установкой посмотрите, что именно он делает.
Почему такой уровень
- MCP-инструменты структурно только читают данные, но открывают полный обзор денег и клиентов при слабой авторизации
- Дашборд показывает себестоимость и прибыль по каждому товару и клиенту, требует обязательного Basic auth в продакшене
Установка
В терминале, через SkillFoxx CLI
npx skillfoxx add mcp/moysklad-analyticsОпределит агенты на машине, проверит риск и зафиксирует версию.
Другие способы установки
Выполните в терминале
claude mcp add --transport http moysklad https://your-deployment.example.com/api/mcp --header 'Authorization: Bearer <ваш AUTHORIZATION>'Или добавьте в файл .mcp.json, в проекте
{
"mcpServers": {
"moysklad": {
"type": "http",
"url": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Кнопка откроет агент и предложит добавить сервер. Если ничего не произошло, скопируйте конфиг ниже.
Добавьте в файл ~/.cursor/mcp.json, для всех проектов
{
"mcpServers": {
"moysklad": {
"url": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. Для одного проекта тот же блок кладут в .cursor/mcp.json.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Кнопка откроет агент и предложит добавить сервер. Если ничего не произошло, скопируйте конфиг ниже.
Выполните в терминале
code --add-mcp '{"name":"moysklad","type":"http","url":"https://your-deployment.example.com/api/mcp","headers":{"Authorization":"Bearer <ваш AUTHORIZATION>"}}'Или добавьте в файл .vscode/mcp.json, в проекте
{
"servers": {
"moysklad": {
"type": "http",
"url": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа servers.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл ~/.codex/config.toml, для всех проектов
[mcp_servers.moysklad]
url = "https://your-deployment.example.com/api/mcp"
http_headers = { Authorization = "Bearer <ваш AUTHORIZATION>" }Если файл уже есть, допишите блок в конец.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл ~/.gemini/settings.json, для всех проектов
{
"mcpServers": {
"moysklad": {
"httpUrl": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл ~/.config/devin/mcp_config.json, для всех проектов
{
"mcpServers": {
"moysklad": {
"serverUrl": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. В легаси Cascade конфиг MCP лежит в ~/.codeium/windsurf/mcp_config.json.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Бывший Windsurf.
Добавьте в файл cline_mcp_settings.json, для всех проектов
{
"mcpServers": {
"moysklad": {
"type": "streamableHttp",
"url": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. Файл настроек открывается в Cline: вкладка MCP Servers, кнопка Configure MCP Servers.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл .roo/mcp.json, в проекте
{
"mcpServers": {
"moysklad": {
"type": "streamable-http",
"url": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Форк Roo Code, папки .roo те же.
Добавьте в файл opencode.json, в проекте
{
"mcp": {
"moysklad": {
"type": "remote",
"url": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcp.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл ~/.config/zed/settings.json, для всех проектов
{
"context_servers": {
"moysklad": {
"url": "https://your-deployment.example.com/api/mcp",
"headers": {
"Authorization": "Bearer <ваш AUTHORIZATION>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа context_servers.
Ключи и настройки
AUTHORIZATIONсекрет, обязательная
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Установи зависимости pnpm setup, задай MOYSKLAD_TOKEN в .env, проверь аккаунт командой pnpm probe, разверни сервер (pnpm dev для разработки или docker build для продакшена), задай MCP_TOKEN и подключи агента командой claude mcp add moysklad --transport http https://ваш-домен/api/mcp --header "Authorization: Bearer <MCP_TOKEN>".
Другие способы из описания автора
pnpm setup && cp .env.example .envУстановка зависимостей сервера и веб-части, затем задать MOYSKLAD_TOKEN в .env.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Проект это полноценный дашборд на NestJS и React поверх JSON API 1.2 МойСклад: продажи и прибыль по товарам, остатки и потребность в закупке, клиенты и каналы, тренды по периодам. Отдельная команда pnpm probe проверяет токен и права доступа перед тем, как доверять любой цифре: показывает, какие отчеты реально доступны аккаунту и не скрыты ли себестоимость и прибыль правами пользователя. Встроенный ИИ-ассистент на DeepSeek отвечает на вопросы по тем же данным через семь инструментов только для чтения. Для внешних агентов есть эндпоинт POST /api/mcp по Streamable HTTP с теми же семью аналитическими инструментами, плюс семь бизнес-инструментов (документы, деньги, закупки, взаиморасчеты, контрагенты, обороты) и один инструмент moysklad_api для чтения произвольного пути API. Вся денежная логика (минорные единицы, разница между наценкой и маржой) обработана один раз в сервисе статистики, поэтому дашборд, встроенный ассистент и внешний MCP не могут разойтись в определении «выручки».
Для кого. Для владельцев магазинов на МойСклад, которым мало чата с агентом и нужен полноценный self-hosted дашборд с проверенными цифрами и MCP в довесок.
Подходит, если
- Нужен визуальный дашборд продаж, остатков и клиентов, а не только чат с агентом
- Важно перепроверить права токена перед тем, как доверять цифрам прибыли и маржи
- Нужен MCP-доступ к тем же проверенным данным для Claude, Cursor или коннекторов ChatGPT
Не подходит, если
- Нужен только MCP-сервер без деплоя целого дашборда: это self-hosted приложение с NestJS-бэкендом и React-фронтендом, легковесного варианта нет
- Не готовы разворачивать через Docker и настраивать Basic auth: в продакшене сервер откажется стартовать без заданных учетных данных
- Нужна запись в МойСклад: moysklad_api и остальные MCP-инструменты структурно только читают
Пример запроса к агенту
Какие товары нужно закупить в ближайшую неделю и кто наши крупнейшие клиенты за кварталОграничения
Это не легковесный MCP-сервер, а полноценное self-hosted приложение (NestJS + React), для деплоя нужен Docker или свой сервер. Встроенный ИИ-ассистент работает только с платным ключом DeepSeek. МойСклад ограничивает API 45 запросами за 3 секунды и 5 одновременными соединениями. Если токен принадлежит ограниченному пользователю, столбцы прибыли и маржи приходят пустыми, а не с ошибкой.
Как отключить. Остановите Docker-контейнер или процесс сервера и удалите запись MCP-подключения из клиента (claude mcp remove moysklad или аналогичная команда).
MCP
- Транспорт
- http
- Авторизация
- OAuth
| Переменные окружения | |
|---|---|
| MOYSKLAD_TOKEN обязательная, секрет | Токен JSON API МойСклад |
| MCP_TOKEN секрет | Включает MCP-эндпоинт, минимум 24 символа, используется и как статический Bearer, и как ключ подписи OAuth |
| DASHBOARD_USER обязательная | Логин Basic auth дашборда, обязателен в продакшене |
| DASHBOARD_PASSWORD обязательная, секрет | Пароль Basic auth дашборда, обязателен в продакшене |
| DEEPSEEK_API_KEY секрет | Включает встроенного ИИ-ассистента дашборда |
Проверка безопасности
- MCP-инструменты структурно только читают данные, но открывают полный обзор денег и клиентов при слабой авторизации
- Дашборд показывает себестоимость и прибыль по каждому товару и клиенту, требует обязательного Basic auth в продакшене
Коротко о README
README подробно документирует нюансы API МойСклад, подтвержденные на живом аккаунте (деньги в минорных единицах, разница margin и salesMargin, разные форматы href в разных отчетах), объясняет выбор модели DeepSeek для встроенного ассистента и почему локальные модели не подошли, и отдельно описывает MCP-эндпоинт: набор из 15 инструментов, два способа авторизации (статический Bearer и полноценный OAuth по спецификации MCP) и обязательный Basic auth в продакшене.
Частые вопросы
Может ли MCP-инструмент изменить данные в МойСклад?
Нет, и семь бизнес-инструментов, и универсальный moysklad_api структурно только читают, клиент API использует исключительно GET.
Как подключиться из мобильного приложения Claude или ChatGPT?
Через OAuth: добавьте кастомный коннектор по адресу /api/mcp, приложение само найдет эндпоинты авторизации и попросит войти с учетными данными дашборда.
Похожие
Официальный MCP-сервер Salesforce DX: работа с org, метаданными, данными, пользователями и тестами Apex из агента
Официальный набор скиллов Яндекса: каталог, цены, остатки, заказы, витрина и еженедельная ревизия магазина на Яндекс.Кит через Claude Code или Codex
YouGile MCP от Indalo
YouGile MCP
Полное покрытие API YouGile из 65 операций с настраиваемыми правами, подтверждением записи и общим лимитом на компанию
Официальный MCP конкретного портала Битрикс24: внешний агент по OAuth или токену читает и меняет задачи, сделки, встречи и письма