LegalStack
MCP

МойСклад

Коннектор МойСклад

Подключение: https://mcp.legalstack.ru/mcp/moysklad или в составе агрегированного сервера https://mcp.legalstack.ru/mcp.

Имя сервера: legalstack-moysklad. Инструментов: 14.

moysklad_create_assortment

⚠ Outward-facing: создаёт товар или услугу в номенклатуре внешней системы МойСклад. Перед созданием проверь дубль через moysklad_find_assortment. Цена продажи не задаётся при создании — укажи её в позиции счёта (priceRub). Возвращает: { id, type, name, code? }.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "product",
        "service"
      ],
      "description": "product — товар, service — услуга"
    },
    "name": {
      "type": "string",
      "description": "Название (например: Юридическая консультация)"
    },
    "description": {
      "description": "Описание",
      "type": "string"
    },
    "code": {
      "description": "Код номенклатуры",
      "type": "string"
    },
    "article": {
      "description": "Артикул (только для товара)",
      "type": "string"
    }
  },
  "required": [
    "type",
    "name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_create_invoice

⚠ Outward-facing: создаёт счёт покупателю (invoiceout) во внешней системе МойСклад. organizationId — из moysklad_search_organization; counterpartyId — из moysklad_search_counterparty; позиции — из moysklad_find_assortment. Цены указываются в рублях (переводятся в копейки автоматически). Возвращает: { id, name, sumRub, agent, organization }.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Номер счёта (например: 2026-071)"
    },
    "organizationId": {
      "type": "string",
      "description": "ID вашего юрлица в МойСклад"
    },
    "counterpartyId": {
      "type": "string",
      "description": "ID контрагента-покупателя в МойСклад"
    },
    "positions": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "assortmentId": {
            "type": "string",
            "description": "ID товара/услуги из moysklad_find_assortment"
          },
          "assortmentType": {
            "type": "string",
            "enum": [
              "product",
              "service",
              "bundle",
              "variant"
            ],
            "description": "Тип номенклатуры (поле type из moysklad_find_assortment)"
          },
          "quantity": {
            "type": "number",
            "exclusiveMinimum": 0,
            "description": "Количество"
          },
          "priceRub": {
            "type": "number",
            "minimum": 0,
            "description": "Цена за единицу в рублях"
          },
          "vat": {
            "description": "Ставка НДС в процентах (не указывай, если без НДС)",
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "discount": {
            "description": "Скидка в процентах",
            "type": "number"
          }
        },
        "required": [
          "assortmentId",
          "assortmentType",
          "quantity",
          "priceRub"
        ]
      },
      "description": "Позиции счёта"
    },
    "moment": {
      "description": "Дата счёта: YYYY-MM-DD HH:MM:SS (по умолчанию сейчас)",
      "type": "string"
    },
    "paymentPlannedMoment": {
      "description": "Планируемая дата оплаты: YYYY-MM-DD HH:MM:SS",
      "type": "string"
    },
    "description": {
      "description": "Комментарий к счёту",
      "type": "string"
    },
    "contractId": {
      "description": "ID договора МойСклад (из moysklad_list_entities type=contract)",
      "type": "string"
    },
    "projectId": {
      "description": "ID проекта МойСклад",
      "type": "string"
    }
  },
  "required": [
    "name",
    "organizationId",
    "counterpartyId",
    "positions"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_create_kontragent

⚠ Outward-facing: создаёт контрагента во внешней системе МойСклад. Перед созданием проверь дубль через moysklad_search_counterparty (по ИНН). Возвращает: { id, name, inn, kpp }.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Наименование (например: ООО «Ромашка»)"
    },
    "companyType": {
      "description": "Тип: legal (юрлицо, по умолчанию), entrepreneur (ИП), individual (физлицо)",
      "type": "string",
      "enum": [
        "legal",
        "entrepreneur",
        "individual"
      ]
    },
    "legalTitle": {
      "description": "Полное юридическое наименование",
      "type": "string"
    },
    "inn": {
      "description": "ИНН",
      "type": "string"
    },
    "kpp": {
      "description": "КПП (для юрлиц)",
      "type": "string"
    },
    "ogrn": {
      "description": "ОГРН",
      "type": "string"
    },
    "legalAddress": {
      "description": "Юридический адрес",
      "type": "string"
    },
    "email": {
      "description": "Email",
      "type": "string"
    },
    "phone": {
      "description": "Телефон",
      "type": "string"
    },
    "description": {
      "description": "Комментарий",
      "type": "string"
    }
  },
  "required": [
    "name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_find_assortment

Поиск товара/услуги/комплекта в номенклатуре МойСклад по названию, коду или артикулу. Только чтение. Используй перед moysklad_create_invoice, чтобы получить id и type позиций. Возвращает: { rows: [{ id, type, name, code?, article?, salePriceRub? }], total }.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Строка поиска (название, код, артикул)"
    },
    "limit": {
      "description": "Количество результатов (по умолчанию 25)",
      "type": "number"
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_get_document

Документ МойСклад по ID с позициями (развёрнуты контрагент, организация и номенклатура позиций). Только чтение. Возвращает: полный объект документа МойСклад; суммы и цены в копейках.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "customerorder",
        "invoiceout",
        "invoicein",
        "demand",
        "supply",
        "paymentin",
        "paymentout",
        "factureout"
      ],
      "description": "Тип документа"
    },
    "id": {
      "type": "string",
      "description": "ID документа (UUID)"
    }
  },
  "required": [
    "type",
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_get_entity

Одна сущность МойСклад по ID (сырые данные с банковскими счетами). Только чтение. Для канонизированного вида — moysklad_resolve_entity. Возвращает: объект сущности.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "counterparty",
        "organization"
      ],
      "description": "Тип сущности"
    },
    "id": {
      "type": "string",
      "description": "ID сущности (UUID)"
    }
  },
  "required": [
    "type",
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_list_dictionaries

Список сущностей из справочника МойСклад (сырые данные без маппинга). Только чтение. Возвращает: объект { rows, meta } или текст «Записи не найдены».

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "counterparty",
        "organization"
      ],
      "description": "Тип сущности"
    },
    "limit": {
      "description": "Количество записей (по умолчанию 100)",
      "type": "number"
    },
    "offset": {
      "description": "Смещение для пагинации",
      "type": "number"
    },
    "search": {
      "description": "Строка поиска",
      "type": "string"
    }
  },
  "required": [
    "type"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_list_documents

Документы МойСклад: счета покупателям (invoiceout), заказы (customerorder), отгрузки (demand), приёмки (supply), счета поставщиков (invoicein), входящие платежи (paymentin), исходящие платежи (paymentout), счета-фактуры (factureout). Только чтение. filter — синтаксис МойСклад, например: moment>2026-01-01 00:00:00. Возвращает: { rows: [{ id, name, moment, sumRub, agent, organization, state?, paymentPlannedMoment? }], total }.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "customerorder",
        "invoiceout",
        "invoicein",
        "demand",
        "supply",
        "paymentin",
        "paymentout",
        "factureout"
      ],
      "description": "Тип документа"
    },
    "search": {
      "description": "Текстовый поиск (по номеру и комментарию)",
      "type": "string"
    },
    "filter": {
      "description": "Фильтр МойСклад",
      "type": "string"
    },
    "limit": {
      "description": "Количество записей (по умолчанию 50)",
      "type": "number"
    },
    "offset": {
      "description": "Смещение для пагинации",
      "type": "number"
    }
  },
  "required": [
    "type"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_list_entities

Справочники МойСклад: товары, услуги, комплекты, модификации, договоры, проекты, склады, валюты, единицы измерения, сотрудники. Только чтение. Контрагенты и организации — moysklad_search_counterparty / moysklad_search_organization. filter — синтаксис МойСклад, например: name~Иванов или sum>10000. Возвращает: { rows: [{ id, type, name, ... , salePriceRub?, sumRub? }], total }.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "product",
        "service",
        "bundle",
        "variant",
        "contract",
        "project",
        "store",
        "currency",
        "uom",
        "employee"
      ],
      "description": "Тип справочника"
    },
    "search": {
      "description": "Текстовый поиск",
      "type": "string"
    },
    "filter": {
      "description": "Фильтр МойСклад (поле=значение; ~ содержит; >,< сравнение)",
      "type": "string"
    },
    "limit": {
      "description": "Количество записей (по умолчанию 100)",
      "type": "number"
    },
    "offset": {
      "description": "Смещение для пагинации",
      "type": "number"
    }
  },
  "required": [
    "type"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_print_document

Сформировать печатную форму документа МойСклад (PDF/XLS) по шаблону. Только чтение из МойСклад. Файл возвращается в base64. templateName — подстрока названия шаблона (например: «Счет покупателю с печатью»); без него берётся первый доступный шаблон. Возвращает: объект с именем файла, размером и расположением.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "customerorder",
        "invoiceout",
        "invoicein",
        "demand",
        "supply",
        "paymentin",
        "paymentout",
        "factureout"
      ],
      "description": "Тип документа"
    },
    "id": {
      "type": "string",
      "description": "ID документа (UUID)"
    },
    "extension": {
      "description": "Формат файла (по умолчанию pdf)",
      "type": "string",
      "enum": [
        "pdf",
        "xls",
        "ods",
        "html"
      ]
    },
    "templateName": {
      "description": "Название шаблона печати (подстрока)",
      "type": "string"
    }
  },
  "required": [
    "type",
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_resolve_entity

Полные канонизированные данные сущности МойСклад по типу и ID (с банковскими реквизитами). Только чтение. ID берётся из moysklad_search_*. Сырые данные — moysklad_get_entity. Возвращает: объект сущности.

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "counterparty",
        "organization"
      ],
      "description": "Тип сущности"
    },
    "id": {
      "type": "string",
      "description": "ID сущности в МойСклад (UUID)"
    }
  },
  "required": [
    "type",
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_search_counterparty

Поиск контрагента в МойСклад по тексту (наименование, ИНН и т.п.). Только чтение. Полные данные по ID — moysklad_resolve_entity. Возвращает: массив контрагентов с канонизированными полями или текст «Контрагенты не найдены».

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Строка поиска (наименование, ИНН и т.д.)"
    },
    "limit": {
      "description": "Количество результатов (по умолчанию 25)",
      "type": "number"
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_search_organization

Поиск собственной организации (юрлица) в МойСклад по тексту. Только чтение. Возвращает: массив организаций с канонизированными полями или текст «Организации не найдены».

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Строка поиска"
    },
    "limit": {
      "description": "Количество результатов (по умолчанию 25)",
      "type": "number"
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

moysklad_status

Статус подключения интеграции МойСклад. Только чтение. Возвращает: текст «подключён» / «не подключён».

Параметры (JSON Schema)
{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

На этой странице