Files
crank/docs/openapi-import.md
T
github-ops 42dd796927
CI / Rust Checks (push) Failing after 25s
CI / UI Checks (push) Has been skipped
CI / Frontend E2E (push) Has been skipped
CI / Deployment Manifests (push) Has been skipped
Deploy / deploy (push) Failing after 2m39s
Document OpenAPI import workflow
2026-06-23 21:03:35 +00:00

4.2 KiB
Raw Blame History

Импорт OpenAPI

Crank умеет импортировать REST API из OpenAPI 3.x и Swagger 2.0 документов. Импорт создает черновики MCP-инструментов, которые можно проверить и доработать в мастере операции перед публикацией.

Как импортировать

  1. Откройте раздел Операции.
  2. Нажмите Импорт OpenAPI рядом с кнопкой Новая операция.
  3. Загрузите .yaml, .yml, .json файл или вставьте текст спецификации.
  4. Нажмите Разобрать документ.
  5. Проверьте preview: для каждого метода показываются поля Path, Query, Header, Body и поля ответа.
  6. Выберите нужные группы и методы.
  7. Проверьте Base URL. Если в документе нет servers, укажите URL вручную.
  8. Выберите поведение при конфликте имени:
    • Создать копию с новым именем — Crank добавит суффикс _2, _3 и так далее.
    • Пропустить — существующие операции не будут изменены.
  9. Нажмите Создать черновики.

Что создается

Для каждого выбранного метода Crank создает отдельную операцию в статусе черновика:

  • имя инструмента берется из operationId, а если его нет — строится из HTTP-метода и пути;
  • отображаемое имя берется из summary;
  • описание инструмента берется из description;
  • группа берется из первого tag;
  • query/path/header параметры становятся входными параметрами MCP-инструмента;
  • JSON requestBody с объектной схемой раскладывается в отдельные входные поля;
  • схема успешного ответа берется из 200, 201, 202 или default.

После импорта откройте созданный черновик в мастере операции. На шаге Связи полей Crank покажет уже созданный маппинг в визуальном виде:

  • Path — параметры из пути, например /users/{id};
  • Query — query-параметры URL;
  • Header — заголовки запроса;
  • Body — поля JSON-тела.

YAML-маппинг остается доступен в блоке Дополнительно, но для обычной настройки его редактировать не нужно.

Рекомендации

После разбора Crank показывает предупреждения, если в спецификации не хватает данных для качественного MCP-инструмента:

  • нет operationId;
  • нет summary или description;
  • нет схемы успешного ответа;
  • нет servers;
  • слишком много входных параметров;
  • используется тело запроса без JSON-схемы.

Эти предупреждения не блокируют импорт, но перед публикацией лучше открыть созданную операцию и проверить:

  • описание инструмента;
  • входные поля и их обязательность;
  • связи Path / Query / Header / Body;
  • пример входных данных для теста;
  • поля ответа, которые увидит MCP клиент.

Ограничения Community

В Community импортируются только REST/HTTP методы: GET, POST, PUT, PATCH, DELETE.

GraphQL, gRPC, WSDL, SOAP, WebSocket и streaming-протоколы не импортируются в Community.