Google Cloud API Gateway сам робить MCP-сервер з REST API
У Public Preview достатньо додати в OpenAPI-специфікацію `x-google-api-management.mcp: true` — і REST-операції стають MCP tools на `/mcp`, без окремого сервера. Виклик `tools/call` транскодується у звичайний REST-запит, тож ваша JWT/API-key автентифікація, квоти й логи продовжують працювати без змін.
Раніше під кожен API, доступний агенту, піднімали окремий MCP-сервер і дублювали в ньому авторизацію й маршрутизацію гейтвея. Тепер це не потрібно.
Проблема, яку закриває фіча
Більшість корпоративних можливостей ховається за REST API, яких агент просто не бачить. Щоб зробити такий API викликаним агентом, команди зазвичай піднімають окремий MCP-сервер, який заново реалізує маршрутизацію, автентифікацію й квоти — те, що вже робить гейтвей. MCP став стандартним способом, яким агенти виявляють і викликають інструменти, і фреймворки на кшталт Agent Development Kit (ADK) та Gemini Enterprise говорять цим протоколом нативно.
Що робить транскодування насправді
API Gateway приймає стандартні MCP JSON-RPC запити на єдиному ендпоінті, транскодує кожен tools/call у відповідний REST-запит, застосовує ваші наявні політики і транслює відповідь назад. Оскільки транскодований запит нічим не відрізняється від звичайного REST-виклику, налаштована для цієї операції JWT- або API-key-автентифікація, квота й логування продовжують працювати без змін — MCP- і REST-трафік ділять один і той самий шлях політик, а конкретна операція витрачає одну й ту саму квоту незалежно від способу виклику.
Покроковий розбір
- Анотуйте OpenAPI-специфікацію:
x-google-api-management.mcp: trueвмикає експорт операцій як MCP tools,x-google-mcp-toolдозволяє налаштувати чи пропустити окрему операцію. Кожна експортована операція має мати бекенд і непорожнійdescription— саме опис LLM використовує, щоб вирішити, коли викликати інструмент, тож пишіть у ньому не що повертає ендпоінт, а коли й навіщо його викликати. - Задеплойте гейтвей як зазвичай — API Gateway сам генерує MCP-сумісну конфігурацію і починає віддавати MCP на базовому шляху
/mcp, без додаткової інфраструктури. - Вирішіть, хто бачить список інструментів. За замовчуванням
tools/listне автентифікований — зручно для розробки, але публікує назви інструментів і схеми вхідних параметрів будь-кому, хто спитає. Для продакшену потрібен JWT черезx-google-api-management.mcp.tools-list.security; API-key цей метод захистити не може. При цьомуtools/callзавжди вимагає ту автентифікацію, яку вимагає базова REST-операція, незалежно від того, захистили ви discovery чи ні. - Підключіть агента до
/mcp-ендпоінту гейтвея. В ADK цеMcpToolsetзStreamableHTTPConnectionParamsі тим самим ключем чи токеном, який гейтвей вже очікує. Перевірити наживо можна черезcurlз методомtools/callі заголовкомMCP-Protocol-Version— у відповіді прийде звичайний JSON-RPC result із текстом REST-відповіді всередині.
Де в лінійці гейтвеїв Google це місце
API Gateway — легкий вхідний шлюз у лінійці Google Cloud. Якщо у вас сервіс на Cloud Run і треба захистити, керувати ним і виставити агентам за лічені хвилини — це швидкий шлях. Для повноцінної enterprise-платформи API й MCP з керуванням життєвим циклом, розширеними traffic-політиками й монетизацією призначений Apigee. Щоб контролювати, що ваші агенти викликають назовні, включно з такими MCP-серверами, — Agent Gateway. Model routing — суміжна можливість для протилежного напрямку трафіку: єдина стабільна точка для вихідних викликів LLM.
Обмеження Public Preview
Наразі підтримуються REST і OpenAPI 3.x бекенди з вашою поточною автентифікацією. У планах — MCP resources і prompts, стрімінг відповідей і перевірка payload через Model Armor. З лімітів, які варто знати заздалегідь: операції, що повертають порожнє тіло (наприклад HTTP 204), як MCP tools не експортуються; глибоко вкладені object-схеми можуть відображатись у tools/list не повністю; один гейтвей віддає до 1000 інструментів; MCP і model routing не можна ввімкнути в одній конфігурації API.