manage-mcp-access

Installation
SKILL.md

Manage MCP access

If this connection lists call_platform_tool instead of the tools this workflow names, find each named tool with search_platform_tools, describe it with describe_platform_tool, then run it with call_platform_tool and the same arguments. Whether a tool exists for you is decided by describe_platform_tool with its exact name, not by tools/list or one page of search results: a name returned in not_found is unavailable to you, so say so rather than guess. The call itself still checks your access. When execute is also listed, a multi-step read may run in execute with tools.search, tools.describe and tools.call on platform--<tool name> paths. End each execute run at a confirmation point and ask the user before any write.

Use this workflow only through the authenticated Speakeasy AI Control Plane (AICP) Platform MCP. It mirrors the guarded dashboard workflow for giving one explicitly selected organization member access to one explicitly selected configured MCP through a custom role. Installing the package grants no organization or project access.

Safety rules

  • Never infer the project, MCP, custom role, member, or access rules from prior context. Present the eligible choices and require the user to select each target explicitly.
  • Show members only by the masked identities returned by list_access_members. Never reconstruct, request, or reveal an unmasked identity.
  • Do not expose raw identifiers or opaque references merely to distinguish choices. Present product names and masked identities; retain tool-returned selectors internally and use them only with the exact choice they represent.
  • Assign only a role whose returned type is custom and whose fresh get_mcp_access coverage reports assignment_eligible: true. Eligibility means the entire role contains only exact mcp:connect selectors for the selected project and MCP; non-MCP, broad, other-project, other-MCP, or unknown grants are not eligible.
  • Assigning a role includes all of its grants, not just the user's intended subset. Require explicit confirmation of ALL selected MCP grants by presenting EVERY assignment_rules entry from fresh get_mcp_access coverage. Each entry has all_tools and may have tool or disposition: all_tools: true means unrestricted tool access, including future tools, not merely the current catalogue. Explain each named tool and disposition rule, including future tools matching that disposition. Do not rely on allowed_known_tools to establish the full scope. Missing or incomplete assignment_rules is a stop condition, even when eligibility is true. Do not mutate or narrow a shared existing role to make it assignable; offer to create a dedicated narrow role instead.
  • Stop when member results are suppressed, ambiguous, expired, or do not contain the selected masked identity. Ask the user for a different identity query rather than guessing.
  • Stop if incomplete tool catalogue or unevaluated evidence prevents confirmation of exact scope. Never treat missing tools, tools_truncated: true, or unevaluated_grants: true as proof of narrow access.
  • Local role and membership reads describe local desired state only. Never claim provider synchronization has converged or that the member has effective provider access based on local reads, mutation success, or receipt replay.
  • If any read reports that the capability is unavailable, stop without claiming a change.

Workflow

Installs
1
First Seen
7 days ago