Core Concepts

Roles & permissions

Exactly what each role may do, how workspace and connector allowlists narrow what a person can reach, and why a change applies on the next request.

Everyone belongs to an organization through a membership, which carries one role and two optional allowlists. The role decides what a person may do. The allowlists decide what they may reach.

RoleIn one line
OWNERRuns the organization. Everything, including billing, and bypasses both allowlists.
ADMINRuns the day to day. Manages people and connectors, but never billing, and is scoped by the allowlists.
MEMBERUses what they have been granted. Manages nothing, and needs approval to connect a connector.

There is no custom-role builder. These three are the whole model, which is what makes the rules below short enough to hold in your head.

Workspace and connector allowlists and per-member connector access modes are Scale and Enterprise features. On other plans they cannot be set, and every member other than an OWNER gets read-only access on the curated toolset.

In the tables that follow, ● means the role has that capability, ▲ means it needs someone else's approval first, and — means it does not have it at all.

Team and people

ActionOWNERADMINMEMBER
View the team list●●● read-only
Invite someone●●—
Revoke a pending invitation●●—
Remove a member●●—
Change someone's role●●—
Assign or revoke OWNER●——
Set a member's workspace allowlist●——
Set a member's connector allowlist●●—
Set a member's per-connector access mode●——

Promoting to owner is deliberately owner-only. An admin can build out the team but cannot mint a peer who outranks them, and cannot strip an existing owner's role.

Workspaces

ActionOWNERADMINMEMBER
Create a workspace●——
Delete a workspace●——
Rename a workspace●●—
Manage a workspace's members●●—
Open a workspace● all● allowed only● allowed only

Connectors

ActionOWNERADMINMEMBER
Connect a connector● direct● direct▲ needs approval
Re-connect / rotate a credential●●▲ needs approval
Delete a connector● + OTP● + OTP—
Approve another member's request●●—
Use a granted connector●●●

A member never connects a connector themselves. They file a request that names one owner or admin, who approves it by email. See Approvals & 2FA.

Deleting a connector additionally requires a one-time code emailed to the actor, on top of the role check.

Workspace content

ActionOWNERADMINMEMBER
View Skills●●●
Author, edit or delete Skills●●—
Edit the Brand Brief●●—
Create an Overview board●●●
Manage every board●●—
Manage boards they created●●●

Skills are served to every client connected to that workspace's MCP, so authoring one is a management action rather than a personal preference. Boards are the exception to the pattern: anyone can create one and owns what they create.

Organization settings

SectionOWNERADMINMEMBER
Team●●● read-only
Workspaces●●—
Referrals●●●
Plan●——
Billing●——
Security (IP allowlist, Scale and Enterprise, up to 50 entries)●——

Anything that changes what the organization pays or who can reach it — plan, billing, IP allowlisting, account deletion and data export — is owner-only, with no admin equivalent.

The two allowlists

A membership carries two independent allowlists. Both are stored on the membership and both are re-evaluated on every request.

AllowlistRestrictsSet by
WorkspacesWhich workspaces this person can reachOWNER
ConnectorsWhich connectors this person can reachOWNER ADMIN

Two rules govern both:

  • Empty means all, not none. A membership with no restrictions set is unrestricted. This keeps existing members working when a new allowlist is introduced.
  • OWNER bypasses both. Admins and members are equally bound by them — being an admin does not widen your reach, it only widens what you can do within it.

The connector allowlist is applied after the workspace allowlist, so a connector in a workspace you cannot reach is unreachable regardless of what the connector list says.

These are enforced on the server, in the same query that loads the resource. Hiding a workspace in the UI is cosmetic; the allowlist is the actual boundary.

Per-member connector access modes

On Scale and Enterprise, an owner sets a member's access mode and catalog scope on each connector, in the workspace Members panel. Admins cannot. This is a third layer, below the two allowlists.

StateWhat that member gets
No decision recordedREAD_ONLY on the curated toolset
Decision recordedThe access mode and catalog scope the owner chose
Member is an OWNERAlways the connector's default: full access on the curated toolset (read-only on Free)

A connector added after the owner last saved the panel reaches members as READ_ONLY until the owner decides. See Access modes & tool catalogs.

Guardrails that apply to everyone

Some rules are not about role at all. They hold no matter who is calling.

  • You cannot change your own role.
  • You cannot remove yourself from the organization.
  • The last OWNER cannot be removed or demoted. An organization always has one.
  • A workspace from a different organization is not reachable at any role. That boundary is checked before the role is even consulted.

Invitations

Owners and admins issue invite links from /settings/team. A link can target a specific email address and carries the role the invitee will receive. Links expire after 14 days and are single-use.

Someone who signs in on your corporate domain without an invitation lands on /join and waits — they do not silently join the team.

How this reaches the AI client

When a client runs the OAuth flow, the consent screen shows a three-level tree of team, workspace and connector, listing every verified connector that user may access. The user ticks which ones to grant.

Nothing about that grant is frozen. Permissions are not baked into the access token — on every request the gateway re-reads the role and both allowlists as they stand at that moment, and re-checks that the connection is still active and its credential still verified.

That has one consequence worth planning around:

  • Removing a member drops their connections within one request.
  • Narrowing an allowlist takes effect on the next call, not at the next login.
  • Demoting someone takes away what their old role allowed, immediately.

There is no window in which a stale token still works, and no "revoke and wait for expiry" step.

On this page