New Your team’s decisions, in one playbook every coding agent works from. Never answer your agent twice

listAssignablePrincipals

Server-side searchable, paginated list of the USERS and TEAMS that can be assigned as the owner of an improvement or task in a project, and the canonical source for resolving a person's user_id when @-mentioning them in a document. Users are the people who may be assigned work in the project: act...

SERVERStable Baseline SOURCEhttps://api.stablebaseline.io/functions/v1/cloud-serve/mcp
Low RISK CLASS
Category Read
Parameters 81 required
Recommended Allowedsee the rule below
Registry record Grade F, identity unverified Pull the record →

This record as markdown: /tools/io-stablebaseline-sb/listassignableprincipals.md

What listAssignablePrincipals does on Stable Baseline

AI agents call listAssignablePrincipals to retrieve information from Stable Baseline without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

ParameterTypeRequiredDescription
q string — Deprecated alias for `query`, still accepted. Prefer `query` — that is the name every other list tool uses.
kind string — Filter to one principal kind. Default 'all' returns users first then teams.
limit number — Max results per page (1-100, default 20).
query string — Optional case-insensitive search filter, matched against display_name + email (users) and team name (teams).
offset number — Pagination offset.
itemKind string — Optional: the kind of item the owner is for. With it, users are only the people who may own that kind of item (an improvement: who can open the project's improv
projectId string Yes Project to scope assignees to. Required.
workspaceId string — Optional and not needed: the project's own workspace and organisation are always used. Still accepted so older callers keep working.

Parameters from the server's own tool schema.

Why listAssignablePrincipals is rated Low

Even though listAssignablePrincipals only reads data, uncontrolled read access leaks sensitive information and racks up API costs: an agent caught in a retry loop can make thousands of calls a minute without anyone noticing.

Questions about listAssignablePrincipals

What does the listAssignablePrincipals tool do? +

Server-side searchable, paginated list of the USERS and TEAMS that can be assigned as the owner of an improvement or task in a project, and the canonical source for resolving a person's user_id when @-mentioning them in a document. Users are the people who may be assigned work in the project: active members of its organisation who can open the project (organisation owners and admins, the workspace's owner and members, and people with a direct or team share on the project or its workspace, unless a share denies them). Teams are the project's organisation's teams, listed for a caller who is an active member of it. Returns two arrays: users (with user_id, display_name, email, avatar_url, has_explicit_permission for a direct share on the project) and teams (with team_id, name, member_count, has_explicit_permission for a share on the project). Use BEFORE: (1) updateImprovement/updateTask when you need an owner_id (kind='user') or owner_team_id (kind='team'); (2) inserting a <!-- REFERENCE: {"type":"user","id":"…","label":"…"} --> mention in document content via createDocument / editDocument / findAndReplaceTextInDocument. Supports query for a case-insensitive search on names and emails (users) or team names (teams). Pass kind='user' or kind='team' to scope to a single section, or 'all' (default) for both. Pagination via limit (1-100, default 20) and offset. It is categorised as a Read tool in the Stable Baseline MCP Server, which means it retrieves data without modifying state.

What parameters does listAssignablePrincipals accept? +

listAssignablePrincipals accepts 8 parameters: q, kind, limit, query, offset, itemKind, projectId, workspaceId. Required: projectId. The full parameter table on this page comes from the server's own tool schema.

How do I enforce a policy on listAssignablePrincipals? +

Register the Stable Baseline MCP server in PolicyLayer and add a rule for listAssignablePrincipals: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Stable Baseline. Nothing to install.

What risk level is listAssignablePrincipals? +

listAssignablePrincipals is a Read tool with low risk. Read-only tools are generally safe to allow by default.

Can I rate-limit listAssignablePrincipals? +

Yes. Add a rate_limit block to the listAssignablePrincipals rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block listAssignablePrincipals completely? +

Set action: deny in the PolicyLayer policy for listAssignablePrincipals. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides listAssignablePrincipals? +

listAssignablePrincipals is provided by the Stable Baseline MCP server (https://api.stablebaseline.io/functions/v1/cloud-serve/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

More on Stable Baseline, and thousands of servers like it.

Across the catalogue

// THE MCP REGISTRY

PolicyLayer tracks 44,603 MCP servers and 515,000+ tools.

Every server has a live record: who publishes it, whether it answers without auth, its risk grade, every tool classified, the recommended policy. This page is one line of Stable Baseline's. Pull the full record:

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.