Files
crank/docs/intro.md
T

3.7 KiB

Что такое Crank

Crank - это свободная платформа для создания MCP-инструментов из REST API endpoint-ов.

Обычный REST API удобен для программ, но не всегда удобен для AI-агента. Агенту нужен понятный каталог инструментов: название, описание, входные параметры, ожидаемый результат и стабильный способ вызова. Crank берет существующий REST endpoint и описывает его как MCP-инструмент.

Что можно сделать

  • Описать REST endpoint через веб-интерфейс.
  • Проверить запрос перед публикацией.
  • Опубликовать инструмент в каталоге конкретного агента.
  • Выдать API-ключ для MCP-клиента.
  • Смотреть журнал вызовов и статистику использования.
  • Хранить секреты для внешних API без отображения значения после сохранения.

Как это работает

MCP-клиент
  -> Crank MCP server
  -> опубликованный агент
  -> выбранный MCP-инструмент
  -> REST API

В Crank агент - это отдельный MCP endpoint со своим набором инструментов и своими API-ключами. MCP-клиент, подключенный к одному агенту, видит только инструменты этого агента.

Что входит в Community

  • один workspace;
  • один пользователь администратора;
  • любое количество агентов;
  • REST-инструменты;
  • MCP Streamable HTTP;
  • статические API-ключи агентов;
  • PostgreSQL как основное хранилище;
  • опциональный Valkey или Redis для служебного кэша.

Исполняемая граница Community описана в docs/capability-inventory.json. Только implemented означает доступную возможность; planned, gap и blocked не считаются готовностью. Resources, Prompts, фоновые Tasks и Load Runs пока являются planned target, а не возможностями текущей версии.

Фактический brownfield baseline закреплён в docs/capability-baseline/manifest.json. Manifest проверяет SHA-256 inventory, required surfaces, taxonomy, bounded manual checklist и sanitized results. Flaky, skipped, not-run и manual-only evidence не считаются полным pass; дефекты остаются связаны с flow и owner.

PostgreSQL schema изменяет только controlled one-shot команда. Admin API и MCP при startup выполняют read-only compatibility check; операторский порядок и failure contract описаны в docs/migrations.md.

Демо при первом запуске

В примерах окружения включен CRANK_DEMO_SEED=true. После первого запуска Crank создает:

  • upstream Frankfurter;
  • операцию frankfurter_latest_rate;
  • агента currency-rates;
  • API-ключ агента;
  • пример записи в журнале вызовов.

Демо можно отключить, указав CRANK_DEMO_SEED=false.