Історія змін

← Історія змін

Ashterix

docs: rewrite JsonRpcBundle docs, add SDK docs, move them under docs/api

uk/docs/api/mcp-bundle/change_log/README.md новий файл +4 −0

Історія змін

<include>(latest.md)

Повний опис кожного релізу з прикладами — у теці releases репозиторію бандла.

uk/docs/api/mcp-bundle/change_log/latest.md новий файл +1 −0

<include>(1.0.0.md)

uk/docs/api/mcp-bundle/change_log/1.0.0.md новий файл +25 −0

Версія 1.0 (2026-10-19)

Перший реліз: RPC-методи групи API як MCP-інструменти через Streamable HTTP.

Ключові зміни

  • Ендпоінт на кожен імпорт маршрутів: api_group — група API ядра, /mcp/v2 — версія API 2; назви маршрутів містять групу (mcp_ufo_mcp_endpoint, …).
  • Інструменти: кожен метод групи; назви й описи з перекладів ядра (зокрема translations/rpc/<group>.<locale>.yaml) за Accept-Language; самодостатні inputSchema / outputSchema; підказки #[McpTool].
  • tools/call через RpcExecutor ядра: structuredContent: {"result": …} і той самий JSON текстом; помилки — RPC-помилка ядра з isError: true; rpc.post_response після відправлення відповіді, один раз на виклик (і в batch).
  • HTTP і безпека: протокол із сесіями (сесії в кеш-пулі ядра) і stateless 2026-07-28 на одному URL; токени ядра (401/403); 404 для вимкненої групи чи відсутньої версії; CORS, захист від DNS rebinding, max_body_bytes.
  • Discovery: server.json для MCP Registry, маніфести для Claude Code, Cursor, Gemini CLI, OpenAI.

Що врахувати

Стосується лише застосунків, що використовували бандл з dev-main до 1.0.0:

  • Опцію session_directory (загальну і для групи) прибрано — сесії в кеш-пулі ядра; приберіть ключ, інакше «Unrecognized option». groups тепер може бути порожнім.
  • Назви маршрутів містять групу (<group>_ufo_mcp_endpoint); ручний name_prefix у YAML-імпортах не потрібен.
  • Назви й описи беруться лише з перекладів ядра: ToolTextResolverInterface і Ufo\McpBundle\I18n\* прибрано.
  • Класи перенесено з Ufo\McpBundle\Services\* до Server\*, Server\Transport\*, Tool\*; перевірки групи, доступності й токена — з McpController до EventListener\McpRequestListener.

Зміни оточення

  • PHP >= 8.4, Symfony ^7.2 | ^8.0 (через JsonRpcBundle).
  • 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.