docs: rewrite JsonRpcBundle docs, add SDK docs, move them under docs/api
uk/docs/api/mcp-bundle/change_log/README.md
новий файл +4
−0
1
+
# Історія змін
2
+
<include>(latest.md)
3
+
4
+
Повний опис кожного релізу з прикладами — у теці [releases](https://github.com/UFO-Tech/mcp-bundle/tree/main/releases) репозиторію бандла.
uk/docs/api/mcp-bundle/change_log/latest.md
новий файл +1
−0
1
+
<include>(1.0.0.md)
uk/docs/api/mcp-bundle/change_log/1.0.0.md
новий файл +25
−0
1
+
## Версія 1.0 (2026-10-19)
2
+
3
+
Перший реліз: RPC-методи групи API як MCP-інструменти через Streamable HTTP.
4
+
5
+
### Ключові зміни
6
+
7
+
* [Ендпоінт на кожен імпорт маршрутів](/docs/api/mcp-bundle/config): `api_group` — група API ядра, `/mcp/v2` — версія API 2; назви маршрутів містять групу (`mcp_ufo_mcp_endpoint`, …).
8
+
* [Інструменти](/docs/api/mcp-bundle/tools): кожен метод групи; назви й описи з перекладів ядра (зокрема `translations/rpc/<group>.<locale>.yaml`) за `Accept-Language`; самодостатні `inputSchema` / `outputSchema`; підказки `#[McpTool]`.
9
+
* `tools/call` через `RpcExecutor` ядра: `structuredContent: {"result": …}` і той самий JSON текстом; помилки — RPC-помилка ядра з `isError: true`; `rpc.post_response` після відправлення відповіді, один раз на виклик (і в batch).
10
+
* [HTTP і безпека](/docs/api/mcp-bundle/http_security): протокол із сесіями (сесії в кеш-пулі ядра) і stateless 2026-07-28 на одному URL; токени ядра (401/403); 404 для вимкненої групи чи відсутньої версії; CORS, захист від DNS rebinding, `max_body_bytes`.
11
+
* [Discovery](/docs/api/mcp-bundle/discovery): `server.json` для MCP Registry, маніфести для Claude Code, Cursor, Gemini CLI, OpenAI.
12
+
13
+
### Що врахувати
14
+
15
+
Стосується лише застосунків, що використовували бандл з `dev-main` до 1.0.0:
16
+
17
+
* Опцію `session_directory` (загальну і для групи) прибрано — сесії в кеш-пулі ядра; приберіть ключ, інакше «Unrecognized option». `groups` тепер може бути порожнім.
18
+
* Назви маршрутів містять групу (`<group>_ufo_mcp_endpoint`); ручний `name_prefix` у YAML-імпортах не потрібен.
19
+
* Назви й описи беруться лише з перекладів ядра: `ToolTextResolverInterface` і `Ufo\McpBundle\I18n\*` прибрано.
20
+
* Класи перенесено з `Ufo\McpBundle\Services\*` до `Server\*`, `Server\Transport\*`, `Tool\*`; перевірки групи, доступності й токена — з `McpController` до `EventListener\McpRequestListener`.
21
+
22
+
### Зміни оточення
23
+
24
+
* PHP >= 8.4, Symfony ^7.2 | ^8.0 (через JsonRpcBundle).
25
+
* `ufo-tech/json-rpc-bundle` ^10.4.3, `mcp/sdk` ^0.8.1, `symfony/psr-http-message-bridge` ^7.2 | ^8.0, `symfony/yaml` ^7.2 | ^8.0, `nyholm/psr7` ^1.8.