llauncher
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_modelsA | List all configured models with their current status (running/stopped). Returns |
| get_model_configA | Get the full configuration for a specific model by name |
| start_serverA | Start a model on an empty port. Fails with action='rejected_occupied' if a different model is already running on that port — use swap_server for that case. Both 'model_name' and 'port' are required; the port is always specified by the caller (ADR-010). The model_name must exactly match a model from list_models. |
| stop_serverA | Stop whatever is running on this port. Idempotent: returns success with action='already_empty' if nothing was there. Returns action='stopped' on a successful termination. |
| swap_serverA | Replace the model on this port with a different one. Primary use: an agent replacing its own brain on the harness's expected port. Performs the 5-phase swap (pre-flight, marker, stop, start, readiness) with rollback to the previous model on failure. Calling with the model already running on the port is a successful no-op (action='already_running'). Fails with action='rejected_empty' if the port is empty — use start_server for that case. |
| cancel_serverA | Cancel an in-flight start or swap on this port (ADR-014). Sets a cancel flag on the in-flight marker; the running op picks it up at the next phase boundary (typically within ~1 s during readiness poll). Returns success with marker_existed=False if there is no in-flight op — 'nothing to cancel' is a successful no-op, not an error. A cancel that arrives after the new process has been spawned and the lockfile written is ignored; the op completes and reports cancel_ignored_post_commit=True. |
| server_statusA | Get the status of all running llama-servers |
| list_orphansA | List unmanaged llama-server processes on this node (ADR-015). An orphan is a live llama-server that llauncher did not launch — its (port, pid) does not match any live lockfile. Returns each orphan's pid, port (when discoverable from argv), and a cmdline_unreadable flag for processes whose argv could not be read. Adopt is intentionally not exposed in this revision — see ADR-015 §Deferred Work. |
| get_server_logsA | Fetch recent logs for a running server by port |
| server_metricsA | Live in-server inference telemetry for a running server (ADR-LLNCH-019): phase (idle/prompt/generating), gen_tok_s, prompt_tok_s, slot counts, started_at. Safe tier — no prompt text. Local-node only. Returns a degraded envelope ({'available': false, 'reason': 'loading'|'no-metrics-flag'|'unreachable'}) rather than erroring when the target server can't be read. |
| server_slotsA | Per-slot detail for a running server, including prompt text (ADR-LLNCH-019). Sensitive tier — grant separately from server_metrics. Local-node only. Returns {'available': false, 'reason': 'slots_disabled'} when the server was not started with --slots. |
| update_model_configB | Update an existing model's configuration |
| validate_configC | Validate a model configuration without applying it |
| add_modelC | Add a new model configuration |
| delete_modelA | Delete a model configuration. Refuses with action='rejected_in_use' (and the holding port) if the model is currently running anywhere; stop or swap first. Idempotent on a missing name (action='not_found'). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Each tool has a clearly distinct purpose: model CRUD, server lifecycle (start/stop/swap/cancel), monitoring (status/logs/metrics/slots), and orphan detection. Even closely related tools like server_metrics and server_slots are well-differentiated by their descriptions and sensitivity levels.
All tools follow a consistent verb_noun pattern using lowercase snake_case (e.g., add_model, start_server, list_orphans). The naming is predictable and intuitive, with no mixed conventions.
With 15 tools, the server covers model configuration, server lifecycle, monitoring, and utility functions like validation. The count is well-scoped for the domain—not too sparse to leave gaps, nor too bloated with redundant tools.
The tool surface provides complete CRUD for models, full server lifecycle (start, stop, swap, cancel), comprehensive monitoring (status, logs, metrics, slots, orphans), and validation. No obvious gaps prevent an agent from managing llama-server processes effectively.