# Integrations

Integrations 是外部系统边界。当前主要包括 MCP client 连接、AuthZ 客户端、Outlook，以及 A2A/WhatsApp 的占位接入。

## 大模块流程

配置外部服务 target/token
->
连接MCP/AuthZ/Outlook client
->
适配转成内部 tool/client API
->
消费ToolRegistry 或 Services 调用

## 小模块拆分

### MCP client

Engine boot 时 MCP manager 连接配置中的 MCP servers，把远程 tool 描述包装为 Beaver ToolSpec 并注册到 ToolRegistry。

读取 MCP server 配置。
connect_all 建立连接并拉取工具列表。
MCP wrapper 转换工具 schema 和 callable。
ToolAssembler 后续按任务选择这些工具。

### AuthZ

权限授权系统的外部客户端边界。当前实际权限模块仍是骨架，AuthZ client 是后续接入策略判断的位置。

Service 或 Tool 发起授权检查。
AuthZ client 调外部服务。
返回 allow/deny/context。

### Outlook / A2A / WhatsApp

这些是面向外部渠道或平台的适配边界。成熟路径应保持“集成层只做协议适配，业务语义进入 Services”。

外部事件或 API 请求进入 client。
规范化成内部消息、工具结果或服务参数。
交给 AgentService/ToolExecutor，不在集成层直接拼业务 prompt。