用途:在 Agent Swarm 中通过 Composio 访问已授权的第三方应用。三种调用方式(需部署启用):CLI 命令 agent-swarm x composio <METHOD> <path>;MCP 工具 swarm_x 且 target 为 composio;脚本内 ctx.api.composio.<operationId>(args)。COMPOSIO_API_KEY 由部署注入,无需也不应自行传递;路径均为相对 Composio REST 路径。
核心概念:user_id 指使用已连接账户的应用用户,常用其邮箱;用户首次被引用时隐式创建,没有单独的建用户接口。auth config(ac_)为项目级 OAuth 应用配置;connected account(ca_)为某用户对某工具包的授权连接;Connect Link 为短期授权链接;Tool Router session 为自动解析账户的会话上下文。
解析身份与账户:从任务取 requestedByUserId,用 resolve-user 得到 kind 为 composio 的 externalId;再列出该 user_id 的已连接账户,选择目标工具包状态为 ACTIVE 的记录并取其 id。账户不明确时应询问,不应猜测;选定后建议做一次无害的真实读取验证令牌可用。
调用方式选择:多轮任务可用 Tool Router session(支持会话内 /search);一次性读取或会话报无连接时用直接执行 POST /tools/execute/<TOOL_SLUG> 并显式固定 connected_account_id。创建 Connect Link 使用 POST /connected_accounts/link,而非 POST /connected_accounts;每个工具包单独一个链接,约 10 分钟过期,需在发送前重新生成。关联身份用 manage-user 的 update,identities 为声明式全量列表,必须保留已有项。
工具发现:用 GET /tools?toolkit_slug=<slug>&limit=100 列出工具及其参数,不要臆造 slug 或参数结构。
限制与注意:ACTIVE 状态不代表令牌有效;写入成功后应回读核对;已连接账户不可安全迁移 user_id;日历查询需传 timeMin。不要暴露密钥,不在未要求时读取邮件正文或执行破坏性工具,删除连接前须询问用户。具体收费、价格与更多能力资料暂未提供。