Skip to content

MCP Tools

ToolRequired scopePurpose
resolvemcp:resolveAnswer open-ended project routing and responsibility questions.

resolve accepts query, optional project_id, and optional mode (test or live). Use it when the user asks who should handle a task, who to contact, which participant is responsible, or who can act through a delegation.

ToolRequired scopePurpose
list_projectsmcp:projects:readReturn visible non-deleted projects.
get_projectmcp:projects:readReturn one visible project.
create_projectmcp:projects:writeCreate a project and owner membership.
update_projectmcp:projects:writeUpdate project fields and access.
delete_projectmcp:projects:writeSoft-delete a project.

Project reads follow each project’s status and read_access_mode. live projects use the configured read access mode. draft, test, and archived projects are visible only to admins and project owners. Project writes still require admin access or an owner row. status: "test" projects can be used by resolve only with explicit project_id, mode: "test", and admin or project-owner access.

ToolRequired scopePurpose
list_participantsmcp:participants:readReturn visible non-deleted participants.
get_participantmcp:participants:readReturn one visible participant.
search_directory_recordsmcp:participants:readSearch cached directory users and groups.
list_participant_membersmcp:participants:readList directory users/groups on a participant.
create_participantmcp:participants:writeCreate a participant in a manageable project.
update_participantmcp:participants:writeUpdate participant fields, labels, metadata.
add_participant_membermcp:participants:writeAdd a directory user or group to a participant.
remove_participant_membermcp:participants:writeRemove a directory user or group.
delete_participantmcp:participants:writeSoft-delete a participant.
ToolRequired scopePurpose
list_resolve_requestsmcp:resolve-requests:readReturn compact visible resolve request history.
get_resolve_requestmcp:resolve-requests:readReturn one visible resolve request with detail.
ToolRequired scopePurpose
list_labelsmcp:labels:readReturn labels and usage counts.
get_labelmcp:labels:readReturn one label.
create_labelmcp:labels:writeCreate a label.
update_labelmcp:labels:writeUpdate label name or color.
delete_labelmcp:labels:writeDelete a label when allowed.

Label read tools require an active authenticated owner identity. Label mutation tools also require admin or effective project-owner authorization. Non-admin project owners can delete only labels they created, and only when every participant or resolve-request usage is in projects they own.

ToolRequired scopePurpose
list_delegationsmcp:delegations:readReturn visible delegations.
get_delegationmcp:delegations:readReturn one visible delegation.
create_delegationmcp:delegations:writeCreate a participant delegation.
update_delegationmcp:delegations:writeUpdate a delegation.
revoke_delegationmcp:delegations:writeRevoke a delegation.

List and search tools accept a limit from 1 to 100.

list_projects accepts:

{
"query": "helios vendor",
"limit": 10
}

query searches project name and description.

search_directory_records accepts:

{
"query": "ethan wright",
"type": "user",
"limit": 10
}

type accepts all, user, or group. query searches cached directory record id, name, email, and description. This tool does not search upstream connectors live.

list_participant_members accepts:

{
"participant_id": "part_...",
"query": "ethan",
"type": "user",
"limit": 10
}

type accepts all, user, or group. The tool returns direct directory users and groups associated with the participant.

list_participants accepts optional filters:

{
"query": "finance approvers",
"limit": 10,
"project_ids": ["proj_..."],
"labels": ["Finance", "Vendor"],
"metadata": [{ "key": "approval_limit_eur", "operator": "gte", "value": 75000 }]
}

Filter groups combine with AND semantics except project_ids, which uses OR semantics. Label matching is case-insensitive by name and exact by ID. Metadata keys must be snake_case. Ordered metadata operators support numeric and date-time metadata.

list_labels accepts:

{
"query": "finance",
"limit": 20
}

query searches label name.

list_delegations accepts:

{
"status": "active",
"scope": "participant",
"project_id": "proj_...",
"participant_id": "part_...",
"delegator_user_id": "drec_...",
"delegate_user_id": "drec_...",
"limit": 25
}

status accepts active, expired, revoked, or upcoming. scope accepts all_participants or participant.

list_resolve_requests accepts:

{
"project_id": "proj_...",
"actor_id": "idn_...",
"resolution_status": "success",
"created_after": "2026-05-01T00:00:00Z",
"created_before": "2026-06-01T00:00:00Z",
"query": "Helios renewal",
"limit": 25
}

resolution_status accepts success, not_found, out_of_scope, or error. actor_id is the Roster identity id of the authenticated requester who created the Resolve request, for example the user who signed in through OAuth or the identity behind a Roster API key. It is not a directory user id; directory users use drec_... ids in membership and delegation tools. Omit actor_id unless you are filtering history to a specific requester. query searches the original Resolve request text.

Participant reads follow the same project read access rules. Participant writes still require admin access or project ownership.