Тема
Агент як інструмент: MCP і A2A
Ваш помічник може відповідати не лише людям у вікні чату чи месенджері, а й іншим програмам: Claude, Cursor, чужому боту. Для них він — інструмент: «спитай мого помічника з підтримки», «постав завдання моєму досліднику».
Для цього в кожного агента є своя адреса:
https://api.youselfbot.com/v1/agents/ІДЕНТИФІКАТОР_АГЕНТА/mcpНабирати її руками не треба: конструктор і панель дають адресу вже з ідентифікатором вашого агента.
Не плутайте з MCP конструктора
На платформі два входи MCP, і вони про різне.
| Що робить чужа програма | Ключ | |
|---|---|---|
| Ця сторінка — агент як інструмент | говорить з одним вашим агентом, як відвідувач | ключ доступу ak_… |
| Конструктор для агентів | будує й міняє агентів кабінету | ключ конструктора ck_… |
Хочете, щоб ваш Claude питав помічника про замовлення, — вам сюди. Хочете, щоб він налаштовував самих помічників, — на сторінку конструктора.
Як дати доступ
Скажіть конструкторові:
дай моєму Claude доступ до цього агента
або «зроби ключ для Cursor». Він спитає, для кого ключ, якщо ви не сказали, видасть його й одразу дасть готове налаштування для вашої програми. Те саме кнопкою: панель праворуч → рядок «Доступ інших агентів» → назва → «Видати ключ».
Ключ показується один раз
Значення ключа платформа не зберігає — лише його відбиток. Збережіть ключ одразу; загубили — відкличте його й видайте новий. У розмові з конструктором ключ теж видно лише в тій відповіді, яка його видала: з історії розмови він зникає.
Ключів може бути до двадцяти, кожен зі своєю назвою — «Claude на ноутбуці», «Cursor», «бот партнера». Так видно, хто саме звертається, і відкликати можна один, не зачіпаючи решту.
Налаштування програми
У прикладах АДРЕСА — адреса вашого агента, ak_ВАШ_КЛЮЧ — виданий ключ. Конструктор і панель дають ці шматки вже заповненими.
Claude Code — одна команда в терміналі:
bash
claude mcp add --transport http youselfbot-agent АДРЕСА \
--header "Authorization: Bearer ak_ВАШ_КЛЮЧ"Cursor — файл ~/.cursor/mcp.json (для всіх проєктів) або .cursor/mcp.json у теці проєкту:
json
{
"mcpServers": {
"youselfbot-agent": {
"url": "АДРЕСА",
"headers": { "Authorization": "Bearer ak_ВАШ_КЛЮЧ" }
}
}
}Claude (сайт чи застосунок) — Customize → Connectors → «+ Add» → «Add custom connector»: назва будь-яка, адреса — АДРЕСА. На кроці автентифікації виберіть «No sign in», а під Request headers додайте заголовок Authorization зі значенням Bearer ak_ВАШ_КЛЮЧ.
Інший агент на цій платформі — скажіть конструкторові того агента: «підключи MCP-сервер за адресою АДРЕСА з токеном ak_ВАШ_КЛЮЧ». Так один ваш помічник питає іншого — зокрема помічника з чужого кабінету, якщо його власник дав вам ключ.
Будь-яка інша програма з підтримкою MCP — транспорт Streamable HTTP, адреса й заголовок Authorization: Bearer ak_ВАШ_КЛЮЧ.
Що бачить чужа програма
| Інструмент | Що робить | Аргументи |
|---|---|---|
ask | Репліка → відповідь помічника. | message; conversation_id — щоб продовжити розмову |
task_start | Доручає довге завдання: робота йде у фоні проходами. Повертає task_id. | title, brief |
task_status | Стан завдання, поступ і — коли завершено — підсумок та відповідь помічника. | task_id |
task_start і task_status є лише в агента, який уміє довгі завдання (у його ході названа здатність long_task). В інших їх немає в переліку зовсім — краще так, ніж інструмент, який відмовить на першому ж виклику.
Відповідь ask несе conversation_id. Передайте його в наступному ask — і помічник памʼятатиме, про що говорили. Без нього кожен виклик — нова розмова. Розмови різних ключів не перетинаються, навіть якщо ідентифікатори збіглися.
Ще є ресурс agent://ІДЕНТИФІКАТОР/about — опис помічника: хто він і про що його питати. Опис ви даєте самі: «опиши агента для інших: він знає все про доставку й повернення». Цей текст бачить чужа модель, тож нічого внутрішнього в нього не пишіть.
Чужа програма — відвідувач
Хоч би що програма про себе сказала, для помічника вона відвідувач — як людина у вікні чату на сайті:
- дій, позначених «лише для адміністратора», вона не дістане;
- вашої пошти, календаря й нотаток помічника про вас — теж;
- довге завдання, яке вона поставила, виконується з тими самими правами.
Режиму «від імені власника» немає, і це свідомо: ключ лежить у файлі налаштувань чужої програми, і все, що він відчиняє, отримує кожен, хто той файл прочитав.
Кожну таку розмову видно в розділі Розмови (фільтр «Вів помічник»), а кожен хід — у журналі ходів, як і розмови з вікна.
Відповісти в таку розмову самі ви не можете: по той бік програма, яка чекає відповіді лише на власний виклик, і повідомлення людини вона не прочитає. Кабінет так і скаже — «відповідь не надіслано», — а не покаже репліку як надіслану.
Хто платить і які межі
Кожен ask і кожен прохід завдання — звичайний хід помічника: він витрачає кредити вашого кабінету. Діють ті самі межі, що й скрізь:
- стеля витрат агента і запас кредитів кабінету;
- межа частоти — на ключ, а не на адресу: шістдесят викликів, що витрачають кредити (
ask,task_start), за хвилину; - довгих завдань в агента одночасно три, і місця спільні з вами. Один ключ веде одне завдання — наступне він заводить, коли попереднє закінчилось; усі, хто не ви (чужі програми й відвідувачі в розмовах), разом тримають не більше двох, третє місце завжди лишається вам. Спинити чи скасувати завдання чужої програми можете лише ви — у переліку завдань.
Коли кредити скінчились, межу частоти перевищено чи хід не вдався, виклик повертає помилку інструмента (isError: true) з текстом, який каже, чи є сенс повторювати. Модель по той бік прочитає його й перекаже людині, а не повторюватиме виклик наосліп. Про вичерпані кредити ви, як завжди, отримаєте сповіщення.
Забрати доступ
забери доступ у Cursor
або кнопка «Відкликати» біля ключа в панелі. Програма з цим ключем втрачає доступ одразу; інші ключі працюють далі. Якщо ключ утік і ви маєте лише його значення — вставте його конструкторові: «відклич ключ ak_…» — він знайде й відкличе саме його.
Видалили агента — всі його ключі перестають діяти разом із ним.
Щоб агента знаходили інші агенти: картка A2A
A2A (Agent2Agent) — другий стандарт, яким агенти знаходять один одного. Його основа — картка агента: публічна адреса з імʼям, описом і способом звернутись.
https://api.youselfbot.com/v1/agents/ІДЕНТИФІКАТОР_АГЕНТА/.well-known/agent-card.jsonТипово картки немає. Це публікація, тож вмикаєте її ви: «зроби агента видимим для інших агентів». Сховати — «сховай агента від інших». У картці лише імʼя, ваш опис і адреса входу; говорити з помічником вона не дає — ключ потрібен усе одно. Чужий агент, який уже прочитав картку, може бачити її ще до пʼяти хвилин після того, як ви її сховали.
Вхід A2A — …/v1/agents/ІДЕНТИФІКАТОР_АГЕНТА/a2a, протокол JSON-RPC, версія 1.0 (заголовок A2A-Version: 1.0), той самий ключ у Authorization: Bearer. Підтримується один метод:
bash
curl -sS АДРЕСА_A2A \
-H "Authorization: Bearer ak_ВАШ_КЛЮЧ" -H "A2A-Version: 1.0" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"SendMessage","params":{"message":{
"messageId":"m1","role":"ROLE_USER","parts":[{"text":"Які у вас години роботи?"}]}}}'
# {"jsonrpc":"2.0","id":1,"result":{"message":{"role":"ROLE_AGENT","contextId":"…",
# "parts":[{"text":"Ми працюємо з 9:00 до 18:00."}],"messageId":"…"}}}contextId з відповіді продовжує розмову — так само, як conversation_id у MCP.
Чого у вході A2A немає
Це мінімальний вхід, і картка чесно це каже:
- відповідь приходить одразу повідомленням — завдань A2A, потоку й push-сповіщень немає (
GetTaskвідповідає «завдання не знайдено», решта методів — «операція не підтримується»); - приймається лише текст — файл чи структуровані дані дають помилку, а не мовчки відкидаються;
- версія 0.3 не підтримується: запит без заголовка
A2A-Versionза стандартом вважається версією 0.3 і дістане відмову з назвою потрібної версії; - довгі завдання — лише через MCP (
task_start).
Протокол MCP: що саме підтримано
Транспорт — Streamable HTTP: один POST — одне повідомлення JSON-RPC, відповідь — application/json. Потоку сервер не відкриває; GET і DELETE відповідають 405.
Сервер розуміє дві епохи специфікації:
- чинну,
2026-07-28— рукостискання немає: кожен запит несе версію й здатності клієнта вparams._metaі дублює їх у заголовкахMCP-Protocol-Version,Mcp-Method,Mcp-Name. Заголовки звіряються з тілом; єserver/discover; - попередні,
2025-03-26–2025-11-25— зinitialize. Ними говорить більшість програм, які вже стоять у людей.
Епоху визначає сам запит, перемикати нічого не треба. Запити зі сторінки в браузері (із заголовком Origin чужого сайту) відхиляються з 403 — і на адресі MCP, і на вході A2A: ключеві в сторінці не місце. Одне повідомлення на POST: пакет (масив) дістане 400, тіло понад 1 МБ — 413.
Усі ручки й схеми — у довіднику API, розділи «Агент для інших агентів» і «Кабінет · Доступ інших агентів».
Далі
- Конструктор для агентів: MCP — щоб чужа програма будувала агентів, а не говорила з ними.
- Довгі завдання — що таке прохід і як бачити поступ.
- Скільки це коштує — кредити й стеля витрат агента.