А ви знали, що MCP-сервер тепер може віддавати не текст, а цілий інтерфейс?
Доповнюю свіжими оновленнями один із трендів свого Roadmap 2026⬇️
Generative UI досі був справою фреймворку: тул повертає дані, ви малюєте React-компонент у своєму застосунку. З 28 липня це частина протоколу.
Фінальна спека MCP від 28.07.2026 закріпила MCP Apps як офіційне розширення - поруч із Tasks і Enterprise Managed Authorization. Того ж дня вийшов TypeScript SDK v2, який цю спеку реалізує.
Як це влаштовано:
⏺Сервер оголошує UI-ресурс зі схемою ui:// і прив’язує його до тулу через метадані.
⏺Клієнт рендерить HTML у пісочниці.
⏺Спілкування — звичайний JSON-RPC поверх postMessage, тим самим SDK, яким ви пишете сам сервер
modelcontextprotocol/server.
Ключове: сервер описує інтерфейс, хост його виконує. Одна реалізація замість окремого клієнта під кожного - Claude, ChatGPT, VS Code, Goose.
Як це з’явилося:
21.11.2025 запропонували SEP-1865 — над ним працювали основні розробники MCP з Anthropic та OpenAI разом із авторами MCP-UI.
26.01.2026 MCP Apps став першим офіційним розширенням протоколу.
У Claude з’явилися інтеграції з Asana, Figma, Slack, Box, Canva, monday.com, Hex, Amplitude та Clay.
Обмеження, які варто знати до старту:
⏺ поки лише text/html. Зовнішні URL, remote DOM і нативні віджети відкладені на майбутні ітерації;
⏺ розширення опційне, тому сервер зобов’язаний тримати text-only fallback
⏺ HTML від сервера - недовірений контент. Звідси пісочниця, передекларовані шаблони і підтвердження користувача на дії з UI.
🔵Чому це більше, ніж просто UI.
У мого copy-paste detector MCP-сервер віддає агенту компактний текстовий звіт - і це правильний формат для моделі. Але таблицю дублікатів із переходами по файлах людина читає очима. Тепер її можна віддати інтерфейсом, не пишучи окремий клієнт під кожен хост.
🟢Спека: modelcontextprotocol.io/specification/2026-07-28 🟢Розширення:
github.com/modelcontextprotocol/ext-apps
Робитимете UI для свого MCP-сервера?
🔥 - є що показати візуально
👀 - спершу подивлюсь на чужі
#js_ai_trends
Post #974
571

- 👍 5
- 🔥 4
- ❤ 3
- 👀 3