Files
crank/docs/architecture.md
T
github-ops ba29ac7b94
Deploy / deploy (push) Successful in 2m44s
CI / Rust Checks (push) Successful in 5m31s
CI / UI Checks (push) Successful in 5s
CI / Deployment Manifests (push) Successful in 2s
CI / Frontend E2E (push) Successful in 4m24s
chore: publish clean community baseline
2026-06-19 16:45:51 +00:00

54 lines
1.7 KiB
Markdown

# Архитектура
Crank Community публикует REST API как MCP tools.
## Сервисы
- `ui` — web-интерфейс.
- `admin-api` — HTTP API для авторизации, operations, agents, secrets, logs и settings.
- `mcp-server` — MCP Streamable HTTP endpoint для published agents.
## Основные сущности
- `Workspace` — граница данных.
- `Operation` — REST integration contract.
- `Agent` — опубликованный MCP surface с ограниченным набором tools.
- `Secret` и `AuthProfile` — безопасное применение upstream credentials.
- `InvocationLog` и `UsageRollup` — observability.
## Flow
1. Пользователь создает REST operation.
2. Пользователь настраивает target, schemas и mapping.
3. `admin-api` сохраняет draft и version.
4. Runtime выполняет test call через REST adapter.
5. Пользователь публикует operation.
6. Пользователь привязывает operation к agent.
7. `mcp-server` открывает published operation как MCP tool.
## Runtime path
```text
MCP client
-> mcp-server
-> crank-runtime
-> crank-adapter-rest
-> upstream REST API
```
Input mapping переводит MCP arguments в REST request. Output mapping переводит
REST response в MCP tool result.
## Хранилище
PostgreSQL хранит:
- users и sessions;
- workspaces;
- operations и versions;
- agents и bindings;
- secrets и auth profiles;
- logs и usage.
Файловое хранилище используется для samples и YAML import payloads.