Roles and permissions
Give every person exactly the access they need. Each person in an organization has one role: owner, admin or member. On top of the role, every resource has an owner (a person, a team or the organization), and you can share it with others to See or Use. Together these decide who can do what.
In short
- Members build and work: they create spaces, manifests, credentials and deputies of their own, and use what their teams and the organization share with them.
- Admins run the organization: they invite people, manage teams, install packages, set policies and settings, and can see and control what members build.
- Owners are admins who also change roles, rename the organization and delete it.
- Team leads manage their team and everything it owns, whatever their org role.
- Nobody can read a credential’s secret value. Marshal adds it to requests for the agent.
Who can do what, at a glance
| Task | Owner | Admin | Member |
|---|---|---|---|
| Create and use your own spaces, manifests, credentials and deputies | Yes | Yes | Yes |
| Launch a team or organization manifest | Yes | Yes | Yes, with access |
| See and control any member’s space | Yes | Yes | No |
| Edit or delete another person’s manifest | Yes | Yes | No |
| Create organization manifests, credentials and deputies | Yes | Yes | No |
| Share something with the whole organization | Yes | Yes | No |
| Invite people, remove members, reset passwords | Yes | Yes | No |
| Create teams | Yes | Yes | No |
| Install and uninstall marketplace packages | Yes | Yes | No |
| Create and change network policies | Yes | Yes | No |
| Create API keys | Yes | Yes | No |
| Read the whole organization’s audit log | Yes | Yes | No |
| Change a member’s role | Yes | No | No |
| Rename or delete the organization | Yes | No | No |
The three roles
| Role | What it is for |
|---|---|
| Owner | Full control. Changes other people’s roles, renames the organization and deletes it. An organization can have several owners. |
| Admin | Runs the organization day to day: people, teams, packages, policies and settings. Sees and controls what members build. Cannot change roles, rename or delete the organization. |
| Member | Builds and works. Owns their own spaces, manifests, credentials and deputies, and uses what is shared with them. |
Rules that hold for every role:
- The last owner stays. Removing the last owner, or the last owner leaving, is refused with
cannot remove the last owner; promote another member first. Demoting the last owner is refused withwould leave org with no owners; promote another member first. - Only an owner can remove an owner. An admin gets
only an owner can remove an owner. - Invitations grant admin or member, never owner. To make someone an owner, promote them after they join. To hand over ownership, promote the new owner, then change your own role.
- A role change takes effect on the person’s next request. They stay signed in. A removed member is signed out.
Teams: leads and members
A team has two roles of its own, lead and member. The team role is separate from the org role, so a member of the organization can lead a team.
| Team role | What it allows |
|---|---|
lead | Everything a team member can do, plus: rename, archive and restore the team, add and remove its people, change their team role, and manage everything the team owns (edit, delete, share, change owner). Create team deputies. |
member | See the team and its roster. See and use what the team owns: launch its manifests, use its credentials, run its deputies. |
Org owners and admins can manage every team. Only they can create a team. When a team is archived, its resources are frozen for everyone until it is restored.
Who owns a resource
Manifests, credentials, deputies and other resources each have one owner scope:
| Owner | Who can see and use it | Who can manage it |
|---|---|---|
| A person | That person | That person |
| A team | Every member of the team | The team’s leads, and org owners and admins |
| The organization | Everyone in the organization | Org owners and admins |
To move a resource to another owner, see Change the owner of a resource. For the full model, see Owners, teams and scope.
Sharing: See and Use
Share a resource with a person, a team or the organization from its Share dialog. Each share grants one of two levels:
- See: the person can view it.
- Use: the person can view it and use it, for example launch a space from a manifest. See never counts as Use.
Sharing never grants the right to manage. Who can share:
- The person who owns it, or a lead of the team that owns it, can share it with people and teams.
- Only org owners and admins can share with the whole organization.
Credentials share as Use only. The agent gets the credential in its requests, and nobody sees the value.
Launching a manifest
To launch a space or a run from a manifest, you need the right to use it:
- Your own manifest: you can launch it. A personal manifest launches only for its owner, even when shared. To give someone else a copy, use Send a copy.
- A team or organization manifest: you can launch it when you are in the owning team, when the organization owns it, or when it is shared with you as Use.
If you can see a manifest but not use it, launch is refused with you can see this manifest but you are not allowed to launch it.
API keys
An API key lets an outside agent connect to Marshal over MCP. Owners and admins create keys. Each key has its own role, admin or member, and acts with that role, not the role of the person who created it. A key never has the owner role. See Create an API key.
Admin-only areas
These parts of Marshal are for org owners and admins:
- Settings: Members, Authentication, Email, OAuth Apps, Auditing, Space Storage, Compute, Deputies, LLM Cost, Configuration, Telemetry, Marketplace, MCP Servers, Webhooks, Slack and Danger Zone.
- Sidebar: Stacks, Network policies and Dashboards.
Every member can open General, Teams, npm Registries and About in Settings. Admins add, change and delete npm registries.
Audit log
Every member sees the audit events for their own actions. Owners and admins can also see the events of any member and of the whole organization. Each read of the audit log is itself recorded.
Permission strings
Each role is a set of permissions. You see these strings in API errors and in the CLI. A scope after the action narrows it:
own: things you own.org: things the organization owns.any: things anyone in the organization owns.
Organization and settings
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
org:read | See the organization. | Yes | Yes | Yes |
org:update | Change the organization’s name or slug. | Yes | No | No |
org:delete | Delete the organization. | Yes | No | No |
settings:read | See organization settings. | Yes | Yes | Yes |
settings:write | Change organization settings. | Yes | Yes | No |
Members and invitations
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
member:read | See the member list. | Yes | Yes | Yes |
member:invite | Invite people. | Yes | Yes | No |
member:remove | Remove a member. Only an owner removes an owner. | Yes | Yes | No |
member:role:change | Change a member’s role. | Yes | No | No |
member:password_reset | Reset a member’s password. | Yes | Yes | No |
member:leave | Leave the organization. | Yes | Yes | Yes |
invitation:create | Create an invitation link. | Yes | Yes | No |
invitation:read | List invitations. | Yes | Yes | No |
invitation:revoke | Revoke an invitation. | Yes | Yes | No |
invitation:accept | Accept an invitation sent to you. | Yes | Yes | Yes |
Teams
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
team:read | See teams and their rosters. | Yes | Yes | Yes |
team:write | Create teams. | Yes | Yes | No |
team:member | Manage any team: rename, archive, and change its people. | Yes | Yes | No |
A team’s leads manage that team without team:member.
Spaces
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
session:read:own | See your own spaces. | Yes | Yes | Yes |
session:read:any | See any member’s space, and list the whole organization’s spaces. | Yes | Yes | No |
session:write:own | Create and control your own spaces. | Yes | Yes | Yes |
session:write:any | Control any member’s space. | Yes | Yes | No |
The Spaces page lists your own spaces. Admins see every space in the organization on the admin dashboards.
Manifests and network policies
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
manifest:read:org | See organization manifests and network policies. | Yes | Yes | Yes |
manifest:read:own | See your own manifests. | Yes | Yes | Yes |
manifest:read:any | See every manifest in the organization. | Yes | Yes | No |
manifest:write:own | Create and edit your own manifests. | Yes | Yes | Yes |
manifest:write:org | Create and change organization manifests and network policies. | Yes | Yes | No |
manifest:write:any | Edit or delete another person’s manifest. | Yes | Yes | No |
The Manifests page lists every manifest you can see: your own, your teams’, the organization’s, and those shared with you.
Credentials
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
credential:write:own | Create and change your own credentials. | Yes | Yes | Yes |
credential:write:org | Create and change organization credentials. | Yes | Yes | No |
You see the credentials you own, your teams’ and the organization’s, plus those shared with you. You see their names and details, never the secret.
Deputies
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
deputy:read:scope | See the deputies in your reach: your own, your teams’, and the organization’s. | Yes | Yes | Yes |
deputy:read:any | See every deputy in the organization. | Yes | Yes | No |
deputy:write:own | Create and manage your own deputies. | Yes | Yes | Yes |
deputy:write:org | Create and manage organization deputies. | Yes | Yes | No |
deputy:write:any | Manage any deputy. | Yes | Yes | No |
A team deputy is created and managed by a lead of that team, or by an org owner or admin. Team members can see it and run its missions.
API keys
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
apikey:read | List organization API keys. | Yes | Yes | No |
apikey:create | Create an API key. | Yes | Yes | No |
apikey:revoke | Revoke an API key. | Yes | Yes | No |
Marketplace
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
marketplace:install | Install packages. | Yes | Yes | No |
marketplace:uninstall | Uninstall packages. | Yes | Yes | No |
Webhook endpoints
Available when your administrator enables webhooks.
| Permission | What it allows | Owner | Admin | Member |
|---|---|---|---|---|
webhook:write:own | Create and manage your own webhook endpoints. | Yes | Yes | Yes |
webhook:write:org | Create and manage organization-wide endpoints. | Yes | Yes | No |
webhook:read:any | See every endpoint in the organization. | Yes | Yes | No |
Related
- Owners, teams and scope
- Change a member’s role
- Create and manage a team
- CLI reference for the commands that manage members, invitations and API keys
- Signing in and access