The answer lives across docs, catalogs, chat threads, and people's heads.
TeamAPI
Every team has an API.
Make yours callable.
$
npm install -g @jgalego/teamapi
The ownership gap
Finding out who owns what shouldn't be a scavenger hunt.
01
Ownership is scattered02
Answers don't stay currentTeams change faster than the pages meant to describe them.
03
Agents can't ask aroundAI needs structured organizational context—not another human-only diagram.
Ask your organization
One source of truth for people, platforms, and agents.
From file to API
Start with one team, then add interfaces as needed.
01
Describe the team
Capture what it owns, who's accountable, and how much it can take on.
$ teamapi scaffold cart \--type stream-aligned \--out org/cart/teamapi.yml
02
Serve it everywhere
Give people an API, a browsable dashboard, and generated documentation.
$ teamapi serve-api ./org # 📊 :3000/dashboard # 📖 :3000/docs (Swagger)
03
Let agents query it
Expose the same grounded organizational context through MCP.
$ teamapi serve-mcp ./org # 🔌 MCP over stdio # 🤖 "who owns checkout-api?"
Where ownership breaks
Find and track accountability gaps across your organization.
Example baseline
teamapi assess examples/acme-org
- Loading assessment…
No blocking findings in this scope.
Loading generated assessment…Run a bounded evaluation →
One source, many surfaces
Define your organization once. Keep the tools around it in sync.
CrewAI
Turn team roles into agents and responsibilities into tasks.
Backstage
Generate Groups for teams and Components for services.
Paperclip
Generate an agent company and detect organizational drift.
PagerDuty
Find services that have nobody on their escalation policy.
Slack
Answer /whoowns and put ownership in channel topics.
AGENTS.md
Tell coding agents who owns every repository.
CODEOWNERS
Route every pull request to the team that owns it.
Port
Bring ownership and cognitive load into your catalog.
OpenTelemetry
Attach team ownership to every service trace.
Okta
Find departed teammates still listed as owners.
GitHub
Import existing teams and reconcile their membership.
Stop asking around
Start querying your organization.