{
  "server": {
    "name": "ru.dokidepo/public-tools",
    "version": "2.2.0",
    "protocolVersion": "2025-11-25"
  },
  "tools": [
    {
      "name": "list_public_tools",
      "title": "Найти открытые инструменты склада",
      "description": "Используйте первым, когда нужно подобрать открытый складской инструмент по задаче. Необязательный category фильтрует каталог; без него возвращается all. Результат содержит только проверенные карточки и измеряемые ссылки ДокиДепо. Не выполняет складские операции и не принимает файлы, товары, пароли или коды. Лишнее поле или неизвестная категория дают JSON-RPC -32602 Invalid params.",
      "inputSchema": {
        "type": "object",
        "description": "Передайте только необязательный category. Пустой объект означает весь каталог.",
        "properties": {
          "category": {
            "type": "string",
            "enum": [
              "all",
              "inventory",
              "labeling",
              "pricing",
              "setup",
              "publishing",
              "training"
            ],
            "default": "all",
            "description": "Фиксированный фильтр: all — весь каталог; inventory — остатки, закупка и приёмка; labeling — этикетки, штрихкоды и адреса; pricing — цены и маржа; setup — запуск склада; publishing — встраиваемые виджеты; training — учебные материалы."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "required": [
          "tools",
          "safety"
        ],
        "additionalProperties": false,
        "properties": {
          "tools": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "safety": {
            "type": "string"
          }
        }
      },
      "annotations": {
        "title": "Публичные материалы ДокиДепо",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "get_public_tool",
      "title": "Получить точную карточку инструмента",
      "description": "Используйте после list_public_tools, когда уже известен точный id нужного инструмента. Возвращает его назначение, входы, результат, ограничения и измеряемую ссылку. id обязателен и должен быть одним из перечисленных значений; неизвестный id или лишнее поле дают JSON-RPC -32602 Invalid params. Не принимает свободный текст, URL, файлы или рабочие данные.",
      "inputSchema": {
        "type": "object",
        "description": "Передайте только точный id из результата list_public_tools.",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "enum": [
              "stock-table",
              "stock-balance-widget",
              "batch-stock",
              "purchase-list",
              "purchase-list-widget",
              "receiving-discrepancy-act",
              "slow-moving-stock",
              "expiry-control",
              "inventory-turnover",
              "packing-list",
              "warehouse-bottleneck",
              "warehouse-bottleneck-widget",
              "price-tags",
              "labels",
              "barcode-scanner",
              "compare-price-lists",
              "table-diff",
              "addresses",
              "reconciliation",
              "qr-code",
              "markup-margin",
              "markup-margin-widget",
              "sku-generator",
              "sku-generator-widget",
              "price-update-kit",
              "returns-quarantine-writeoff",
              "abc-xyz",
              "safety-stock"
            ],
            "description": "Точный неизменяемый идентификатор открытого инструмента ДокиДепо."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "required": [
          "tool",
          "safety"
        ],
        "additionalProperties": false,
        "properties": {
          "tool": {
            "type": "object"
          },
          "safety": {
            "type": "string"
          }
        }
      },
      "annotations": {
        "title": "Публичные материалы ДокиДепо",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "get_first_warehouse_day",
      "title": "Получить безопасный план первого дня",
      "description": "Используйте, когда владелец малого склада хочет безопасно проверить ДокиДепо на одном учебном товаре до импорта каталога и приглашения команды. Без аргументов возвращает фиксированную последовательность: места → приёмка → размещение → отбор → упаковка → сверка. Не создаёт организацию, не меняет остатки и не принимает рабочие данные. Любое входное поле даёт JSON-RPC -32602 Invalid params.",
      "inputSchema": {
        "type": "object",
        "description": "Аргументы не принимаются; передайте пустой объект.",
        "properties": {},
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "required": [
          "steps",
          "startUrl",
          "safety"
        ],
        "additionalProperties": false,
        "properties": {
          "steps": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "startUrl": {
            "type": "string"
          },
          "safety": {
            "type": "string"
          }
        }
      },
      "annotations": {
        "title": "Публичные материалы ДокиДепо",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "get_embed_widget",
      "title": "Получить код бесплатного складского виджета",
      "description": "Используйте, когда редакции или сайту нужен готовый безопасный виджет: текущий остаток, расчёт наценки и маржи, количество к заказу, диагностика узкого места склада или генератор артикулов. Передайте один фиксированный id; сервер вернёт проверенный sandboxed iframe, страницу установки и ограничения. Не принимает HTML, URL или свободный текст. Неизвестный id или лишнее поле дают JSON-RPC -32602 Invalid params.",
      "inputSchema": {
        "type": "object",
        "description": "Передайте только id одного из пяти заранее опубликованных виджетов.",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "enum": [
              "stock-balance",
              "sku-generator",
              "markup-margin",
              "purchase-list",
              "warehouse-bottleneck"
            ],
            "description": "stock-balance — приход, расход и остаток; markup-margin — наценка и маржа; purchase-list — количество к заказу; warehouse-bottleneck — диагностика узкого места; sku-generator — артикулы из названий или по порядку."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "required": [
          "widget",
          "safety"
        ],
        "additionalProperties": false,
        "properties": {
          "widget": {
            "type": "object",
            "required": [
              "id",
              "title",
              "purpose",
              "installUrl",
              "embedType",
              "version",
              "html",
              "integrity",
              "privacy",
              "limitations",
              "legacy"
            ],
            "additionalProperties": false,
            "properties": {
              "id": {
                "type": "string",
                "enum": [
                  "stock-balance",
                  "sku-generator",
                  "markup-margin",
                  "purchase-list",
                  "warehouse-bottleneck"
                ]
              },
              "title": {
                "type": "string"
              },
              "purpose": {
                "type": "string"
              },
              "installUrl": {
                "type": "string"
              },
              "embedType": {
                "type": "string",
                "enum": [
                  "sandboxed_iframe"
                ]
              },
              "version": {
                "type": "string"
              },
              "html": {
                "type": "string"
              },
              "integrity": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "privacy": {
                "type": "string"
              },
              "limitations": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "legacy": {
                "type": "object"
              }
            }
          },
          "safety": {
            "type": "string"
          }
        }
      },
      "annotations": {
        "title": "Публичные материалы ДокиДепо",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "get_publisher_kit",
      "title": "Получить набор для редакции или сообщества",
      "description": "Используйте, когда редакции, сообществу или ИИ-агенту нужно подготовить публикацию о ДокиДепо без сочинения фактов и ссылок. Без аргументов возвращает фиксированные текст, ссылки, обложку, контакт и границы приватности. Не публикует материал и не принимает свободный текст, URL, файлы или данные аудитории. Любое входное поле даёт JSON-RPC -32602 Invalid params.",
      "inputSchema": {
        "type": "object",
        "description": "Аргументы не принимаются; передайте пустой объект.",
        "properties": {},
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "required": [
          "kit",
          "safety"
        ],
        "additionalProperties": false,
        "properties": {
          "kit": {
            "type": "object"
          },
          "safety": {
            "type": "string"
          }
        }
      },
      "annotations": {
        "title": "Публичные материалы ДокиДепо",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    }
  ]
}
