Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OPENROUTER_API_KEYNoOpenRouter 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_USDNoHard 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_CALLSNoMaximum 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

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
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 role to also get 2-3 offer cards with a monthly cost projection — then ask the user to pick one. Pass include_local (or local_only) to discover and probe models running on this machine, which cost $0.

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 include_local (or local_only) to evaluate models running on this machine, which cost $0.

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 revision to read a superseded version.

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

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

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