Departments
A Department composes 2 to 8 marketplace agents into a team with an agent-to-agent topology, and runs the whole thing locally as a single MCP server. FindAgent builds and distributes the department; your machine runs it.
What a Department is
Each member of a department is an existing marketplace agent, bound to a role and given an alias that teammates address it by. Because every agent exposes typed, invocable tools, one member can call another as a tool — that typed tool input/output is the message contract between agents.
Agent-to-agent topology
You wire members together with one of three patterns:
- Pipeline — members run in order, each output feeding the next.
- Hub-orchestrator — a designated hub member delegates to the others and synthesizes their results.
- Peer-to-peer — any member may message any member (full mesh).
Aliases must be unique within a department, a hub-orchestrator must name a hub member, and any explicit comms edge must connect two declared members.
Build a Department
The no-code builder lets you pick members, assign roles and aliases, choose a topology, and save the team:
Open the department builderRun a Department locally
Download a department by slug, then run it as one MCP server:
npx @findagent/cli download growth-crew-a1b2c3
That writes the department bundle locally. The @findagent/mcp runtime then exposes the whole team as a single MCP server your client connects to:
npx @findagent/mcp run-department ./growth-crew-a1b2c3
From your client's perspective the department is one server — the runtime handles the agent-to-agent routing internally according to the topology you built.
findagent CLI and @findagent/mcp runtime power the npx invocations above. Departments run entirely on your machine — FindAgent builds and distributes the department, but never executes one.