Skip to content

Connect AI agents

Resorcerer exposes your workspace over a Model Context Protocol (MCP) server, so an AI assistant can read your organizational structure — and, if you let it, change it — as a first-class participant rather than by being pasted screenshots.

Questions like “which teams have no senior engineer?”, “what would this restructure cost?”, or “draft a model with these four squads” become things an agent can actually answer, because it can traverse the real data.

The MCP button in the app header gives you the connection details for your instance, ready to paste into whichever client you use. For the hosted app the endpoint is:

https://app.resorcerer.ai/api/mcp

Authorizing is a browser round-trip: your client sends you to Resorcerer, you confirm the request while signed in, and the client receives its credential. Some clients show a short code to confirm instead — same flow, same confirmation screen.

Once connected, the client stays signed in while you keep using it. Its access renews itself quietly in the background, so you only confirm again after a long break, or if you remove the connection.

Alternatively, create an access token under My Settings → Access Tokens and give it to the client directly. That’s the route for anything headless, such as a scheduled job or a CI step, where nobody’s there to click a confirmation. Tokens are scoped when you create them, so a token that only needs to read should only be able to read.

Access is scoped by the credential — an agent is never more privileged than whoever authorized it, and per-model permissions apply exactly as they do in the UI.

Area Tools
Models List, read, create, update, and delete models; generate one from the people directory (units, positions, and reporting lines, in one call); read and set their timeline position. GetModelSnapshotTable reads a whole model as one flat table, a row per position and unit with its attributes, holder, status, comments and problems, in a single call (with or without names).
Units Read the hierarchy; create, update, move, and delete units, including their planned start and end dates (a start date can be a day, a month or a quarter) and their rollout state.
Positions List and read slots, create them by id or by attribute name, update them (including the placeholder label, hiring stage and requisition of a vacant position), set which units they belong to, assign and unassign people.
People List, search, read, create, and update people; place them in positions.
Groups List (as a tree), read, create, update, and delete groups; set their members.
Attributes Read and manage roles, levels, locations, and companies. GetMatchExpressionSyntax returns the match expression language and the fields it can reference, and PreviewMatchExpression tries a rule against your people — match count, a sample, or the parse error — before the agent saves it.
Analysis Analyse a model for problems, apply the standard fixes, compare two models, and compare a starting model with two to five scenarios side by side (CompareScenarios).
Composition rules ListCompositionRules, CreateCompositionRule, UpdateCompositionRule and DeleteCompositionRule manage the composition rules that say what a kind of unit should contain (managing them needs an organization admin); GetCompositionRuleViolations counts the units breaking each rule in every model, and FixCompositionShortfall adds the positions a unit is missing.
Readiness checklists GetUnitChecklist reads a unit’s readiness checklists with each item’s state and the readiness per gate, SetChecklistItemState marks a hand-set item not started, in progress or done (with a note), and GetModelReadiness reports a model’s readiness per checklist, gate and unit.
Comments Read the comment threads on a model, its units and its positions; post a comment or reply; resolve, reopen, and delete threads.
Live models ListLiveModels lists the live models the agent can see; GetLiveSyncProposal reads one live model’s pending changes from your people directory (including unit renames and re-parents when its unit source is Groups) and ApplyLiveSyncProposal accepts operations from it; GetLiveSyncSettings and UpdateLiveSyncSettings read and change that model’s scope, unit source, and auto-accept settings (changing them needs an organization admin). Each tool other than ListLiveModels takes the model’s id, so every live model is handled on its own. For a model that is not live, RequestModelSync builds a one-time update from your people directory with the scope and change kinds you choose; GetModelSyncRequest reads it, DiscardModelSyncRequest drops it, and the same GetLiveSyncProposal and ApplyLiveSyncProposal review and apply it.
Snapshots ListModelSnapshots lists a model’s snapshots, newest first; CreateModelSnapshot takes one now; SetModelSnapshotTimelinePlacement puts one on the model’s timeline or takes it off. GetModelAutoSnapshot, UpdateModelAutoSnapshot and RunModelAutoSnapshot read, set up and trigger a model’s automatic snapshot schedule.
Views in the conversation ShowRolloutPlan shows a model’s rollout (units by go-live month, and the ones with vacancies or composition problems), ShowUnitComposition shows one unit’s positions (filled, placeholder or vacant, with any hiring stage) and how it stands against its composition rules, and ShowScenarioComparison shows the scenario comparison table. AI apps that can display interactive views, such as Claude and ChatGPT, draw them right in the conversation; others get the same information as text. A view shows only what the connection is allowed to read: without access to people, it leaves names out.
Batched changes ApplyModelChanges writes a reviewed set of changes back to a model in one go: moving people between units, creating units and positions, renaming, moving and re-dating units, assigning and unassigning people. It previews first by default (what would change, the resulting headcount and any new problems) and writes nothing until asked; then every change is made, or none is. A protected or live model is refused: copy it, apply the changes to the copy, and compare and merge. Each change is recorded in the audit log together with the agent connection that made it.
Organization Read the current organization’s details.
Search Search across the workspace and get back one ranked list — the same search you get from the top bar.

Read-only tools are marked as such, so a client that distinguishes them can be configured to ask before anything is written.

Search is usually how an agent should start: it’s faster than listing everything, and it returns the same results you’d see yourself — so an agent never turns up a model that the person who authorized it can’t open.

A few things that make the difference between an agent that helps and one that makes a mess:

  • Give it a draft, not your live model. Copy your structure and point the agent at the copy. You review the difference and merge what you want.
  • Protect what matters. A protected model refuses direct edits, from an agent as much as from a person.
  • Set up your attributes first. Roles, levels, locations, and companies give an agent the vocabulary to describe positions precisely. Without them it can only build anonymous headcount.
  • Ask it to check its work. The analysis tools are the same ones behind the Problems view, so an agent can review what it just built.
  • To compare against your live organization, have the agent find it with ListLiveModels and then compare the two models directly.
  • Building your own planning view? Build custom planning views with Claude walks through scoping the connection, reading a model in one call, writing changes back to a copy, and sharing the result without people’s details.