Skip to navigation

Google ADK

Дайте агенту Google ADK собственный почтовый ящик

Начало работы

Google Agent Development Kit (ADK) — открытый фреймворк для создания AI-агентов. Подключив Agent Inbox к агенту ADK через MCP-сервер Agent Inbox, агент сможет на естественном языке создавать ящики, отправлять и получать письма, вести треды и работать с вложениями.

Сценарии использования

  • Собственные ящики для агентов: выделенные адреса, чтобы агенты независимо отправляли и получали почту, как коллега-человек.
  • Автоматизация почтовых процессов: агент ведёт переписку от первого письма до ответов и напоминаний в треде.
  • Несколько ящиков и переписок: список и поиск по тредам и сообщениям, пересылка, вложения — агент остаётся в контексте.

Требования

  1. Аккаунт Agent Inbox и API-ключ из консоли Agent Inbox
  2. Установленный Google ADK (pip install google-adk или npm install @google/adk)

Настройка

ADK подключает Agent Inbox через интерфейс MCP-инструментов. Подключите MCP-сервер Agent Inbox как локальный stdio-транспорт:

from google.adk.agents import Agent
from google.adk.tools.mcp_tool import McpToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams
from mcp import StdioServerParameters
AGENTINBOX_API_KEY = "YOUR_AGENTINBOX_API_KEY"
root_agent = Agent(
model="gemini-2.5-pro",
name="agentinbox_agent",
instruction="Help users manage email inboxes and send messages",
tools=[
McpToolset(
connection_params=StdioConnectionParams(
server_params=StdioServerParameters(
command="npx",
args=[
"-y",
"agentinbox-mcp",
],
env={
"AGENTINBOX_API_KEY": AGENTINBOX_API_KEY,
}
),
timeout=30,
),
)
],
)

Доступные инструменты

После подключения агент ADK получает следующие инструменты Agent Inbox:

Управление ящиками

ИнструментОписание
list_inboxesСписок всех ящиков
get_inboxДетали конкретного ящика
create_inboxНовый ящик с именем пользователя и доменом
delete_inboxУдаление ящика

Управление тредами

ИнструментОписание
list_threadsСписок тредов в ящике
get_threadКонкретный тред с сообщениями
get_attachmentСкачать вложение из сообщения

Операции с сообщениями

ИнструментОписание
send_messageОтправить новое письмо из ящика
reply_to_messageОтветить на существующее сообщение
forward_messageПереслать сообщение другому получателю
update_messageОбновить свойства сообщения, например статус прочтения