SuperAPI AI 工具集

manage-mcp-access

智能体与模型

查看项目

更新于 11-02 22:48

技能介绍

用途

该工作流用于在 Speakeasy AI Control Plane(AICP)中,为一名明确指定的组织成员分配一个范围较窄的自定义角色,使其获得对某个明确指定的已配置 MCP 的访问权限。它对应仪表盘中受保护的同类操作,但通过已认证的 AICP Platform MCP 以代理方式执行。

需注意:仅安装该包不会获得任何组织或项目访问权限。

主要能力与安全规则

  • 严禁从先前上下文推断项目、MCP、自定义角色、成员或访问规则,必须呈现候选并由用户逐项明确选择。
  • 成员仅按 list_access_members 返回的脱敏身份展示,不得重建、请求或泄露未脱敏身份。
  • 只可分配返回类型为 custom、且最新 get_mcp_access 覆盖报告显示 assignment_eligible: true 的角色。
  • 分配角色即包含其全部授权,须向用户展示每条 assignment_rules 并取得明确确认;all_tools: true 表示不受限的工具访问(含未来工具)。
  • 不得为使其可分配而修改或收窄既有共享角色,应改为提议创建专用窄范围角色。
  • 成员结果被抑制、模糊、过期或不含所选脱敏身份时停止;工具目录不完整、tools_truncated: true 或 unevaluated_grants: true 不能作为窄范围的证据。
  • 本地角色与成员读取仅代表本地期望状态,不得据此声称提供方同步已完成或成员已获得有效提供方访问。

使用方式(工作流概要)

  1. 调用 list_projects(limit: 100,该工具仅支持 limit),若截断则停止并交由仪表盘处理;否则展示项目名并请用户选择一个。
  2. 对所选项目调用 find_mcp(limit: 100),未过滤结果可按 next_cursor 翻页,且不可与 query 混用;展示 MCP 名称并请用户选择一个。
  3. 调用 get_mcp_access 说明授权模式、已知工具目录与当前角色覆盖;若不是基于角色管理则停止;确认证据完整后再考虑变更。
  4. 调用 list_access_roles 展示角色名称、类型、隐私安全的成员数及 MCP 访问摘要,请用户选择符合条件的既有 custom 角色或选择新建。
  5. 新建角色时收集名称、可选描述与精确规则,展示全部拟授予权限并确认后调用 create_mcp_access_role;既有角色若范围更宽或不符合条件,不得分配或收窄使用,应提议新建。
  6. 创建后再次调用 list_access_roles 与 get_mcp_access,确认角色存在、assignment_eligible: true 且授权与确认内容完全一致,否则停止。
  7. 请用户提供至少三个字符的身份检索,调用 list_access_members(不加角色过滤),仅展示脱敏身份,由用户选择。
  8. 分配前刷新角色、访问状态与成员数据,确认选择未变;若选择器过期或结果变化,重新呈现并请用户重选。
  9. 以项目名、MCP 名、角色名、脱敏成员及全部授权做最终摘要确认,说明既有成员角色保留、提供方同步未验证。
  10. 确认后调用 assign_mcp_access_role,传入刷新后的角色与成员选择、项目、mcp_id、confirmed: true、相应版本号与幂等键。版本冲突需重新读取、重选并再次确认。
  11. 变更后重新读取角色、访问覆盖与成员列表验证本地状态;若枚举被抑制或证据过期、不完整,报告本地验证不完整。

适用场景

适用于需要以最小权限原则把某个 MCP 的访问权授予特定成员、且要求全程显式选择与完整授权披露的组织管理操作。

限制

本地读取、变更成功或回执重放均不能证明提供方已收敛或成员已获得有效提供方访问;这些工具不验证提供方收敛,也不得据此声称。项目、MCP、角色、成员、授权范围与最终分配均为对话中的显式检查点,选择器与变更控制字段仅供代理内部使用。