teambrrr
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OPENROUTER_API_KEY | No | OpenRouter API key. Read lazily per call from this environment variable or ~/.claude/.openrouter_key. Optional; without it, the provider falls back to a deterministic mock. | |
| PERSONA_RECRUITER_BUDGET_USD | No | Hard call budget ceiling in USD, read fresh from the persisted ledger so it survives a restart. Defaults to 1.00. | 1.00 |
| PERSONA_RECRUITER_BUDGET_CALLS | No | Maximum number of provider calls per process. Defaults to 200. | 200 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| recruitB | Create a named recruit backed by an OpenRouter model. Validates the model id against the OpenRouter catalog. |
| askB | Send a message to one recruit (name) or several in parallel (names). Recruits receive the shared channel digest plus their own history. |
| discussA | Round-robin discussion between two or more recruits. Round 1 is each recruit's opening position; every later round hands each of them the previous round's replies, attributed by name, and asks them to push back or refine. Returns the full transcript grouped by round. |
| auditionA | Send one cheap probe to each candidate model in parallel and score the replies mechanically: honesty about missing context (the probe names a file that does not exist), length discipline, latency and cost. Returns a ranked table plus the raw replies. Recruits nobody — you pick, then call recruit. Pass |
| local_modelsA | Report the local model hosts (Ollama at :11434, llama-server at :8080, plus anything configured in /config.json) with the models each one serves. A host that is not running is reported as such, with the command that would start it. Costs nothing and probes nothing. |
| evaluate_roleA | Run repeated, role-specific cases against 1-4 candidate models. Uses deterministic evaluators, fatal safety criteria, consistency, latency and cost evidence; returns 2-3 offers but hires nobody. Pass |
| spendA | Per-recruit breakdown of the session: calls made, dollars spent, and what each call was for (ask, discuss, audition, judging, role-pack evaluation), plus the totals against both ceilings — the dollar cap (PERSONA_RECRUITER_BUDGET_USD) and the call ceiling (PERSONA_RECRUITER_BUDGET_CALLS). Reads the attribution log; costs nothing and calls nobody. |
| brief_compactA | A brief is written once at hire time and goes stale as the room moves on — and it rides on every call, so a stale brief actively misinforms, at a price. This returns the CURRENT brief plus the channel since the last compaction, and the instruction for rewriting it in <=800 words with superseded facts dropped. It calls no model: YOU are the author. Read what it returns, write the replacement, then call brief_update({name, briefing}) with it. show_persona reports how many events have passed since the last compaction. |
| assign_taskB | Create a durable task for a hired recruit. This records and assigns work; a Hermes/OpenClaw worker must claim and execute it under its own tool and approval policy. |
| tasksA | Get one task by id, or list tasks filtered by recruit and/or status. |
| task_decideA | Resolve a pending runtime approval. Approval returns the task to assigned so a worker can reclaim it; rejection terminates it. Runtime policy remains authoritative. |
| task_cancelA | Cancel a non-terminal task idempotently. This records intent; the runtime observes the event and stops work. |
| rosterA | List current recruits with model, tags, call count and spend. |
| dismissB | Archive a recruit; their persona and history move to /.dismissed/. |
| show_personaA | Print a recruit's full system prompt (never truncated) with their model, fallback, tags, params, current revision and the list of past revisions. Pass |
| update_personaA | Change a recruit's system prompt, tags, params, model or fallback_model. The superseded version is snapshotted as a numbered revision first, so nothing is lost. Their memory (history.jsonl) is untouched — they keep every exchange. Refuses if the recruit does not exist; it never creates one. |
| brief_updateA | Replace a recruit's onboarding brief wholesale. The superseded copy is snapshotted to briefings/.md, exactly like a persona revision, so nothing is lost. Use this when the user says "re-onboard " or when the project has moved on far enough that the brief they were hired with is now misleading. The persona and their memory are untouched. |
| pinA | Add one line of standing room context. Every recruit sees the pin board on every ask and discuss, after their onboarding brief and before the channel transcript. Pin decisions as they are taken ("we ship Postgres, not Dynamo"), not narration. Budget is ~2000 chars across all pins — over it, the call is refused and you must unpin or shorten. |
| unpinA | Remove one pin by id. Run pins() first to see the ids. |
| pinsA | List every pin (global and project) with its id, scope and author, plus the budget used. |
| rollback_personaA | Restore a past revision as a NEW revision. The chain is append-only: the revision you are leaving is kept, not overwritten, so you can roll forward again. |
| export_hermesA | Write a hired recruit out as a hermes-agent profile (SOUL.md, profile.yaml, config.yaml, .env) so it can EXECUTE — schedules, tools, approvals — under hermes' own guardrails. The room keeps the persona and the correspondence; the exported teammate is pointed at that history read-only. Your OpenRouter key is never copied into the profile. Refuses to overwrite an existing profile. Run with dry_run first. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/arizqi/teambrrr'
If you have feedback or need assistance with the MCP directory API, please join our Discord server