Pools
Route and fail over LLM traffic across model connections
A pool groups multiple model connections behind one name. Agents request the pool by name. Dome routes, load-balances, and fails over across members.
Refer to Pools for routing strategies and membership. Add model connections first, then group them here. All tools require workspace context.
Pools
dome_models_pool_list
List LLM pools in the active workspace.
gateways.view.dome_models_pool_get
Get a pool with its members.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Pool name |
gateways.view.dome_models_pool_create
Create an LLM pool.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Pool name (unique within workspace) |
description | string | No | Free-form description |
match_when | object | No | Predicate selecting this pool by request shape (e.g. {"prompt_tokens":{"gt":100000}}). Refer to match_when predicates reference for the full grammar — operators (gt/lt/eq, in, prefix, suffix, regex) and composition (any, all, not). |
is_default | bool | No | Mark as the workspace default pool |
cache_ttl_secs | int32 | No | Exact-match cache TTL (0 disables cache) |
cache_scope | string | No | workspace or caller (default: workspace) |
routing_strategy | string | No | priority_weighted, round_robin, least_loaded, most_quota_remaining (default: priority_weighted). Refer to Routing strategies reference. |
strategy_scope | string | No | Scope of stateful routing counters: workspace (default) or caller. Ignored by priority_weighted. Scopes only the tiebreak for most_quota_remaining. |
failover_max | string | No | Failover ceiling. "all" walks every member; integer N gives primary + N retries (0 disables failover). Defaults to "all". |
gateways | array | No | Gateway names to attach the pool to at create time. Without it the pool is unreachable until attached (dome_gateways_model_pool_add). |
gateways.manage.dome_models_pool_update
Update a pool. Only provided fields change.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Pool name |
new_name | string | No | Rename |
description | string | No | Update description |
match_when | object | No | Replace match predicate (pass {} to clear). Refer to match_when predicates reference for the grammar. |
cache_ttl_secs | int32 | No | Update cache TTL (0 disables) |
cache_scope | string | No | Update cache scope |
routing_strategy | string | No | priority_weighted, round_robin, least_loaded, or most_quota_remaining |
strategy_scope | string | No | workspace or caller |
failover_max | string | No | "all" (walk every member) or non-negative integer N. Omit to leave unchanged. |
gateways.manage.dome_models_pool_set_default
Set the workspace's default pool. Replaces any prior default.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Pool name |
gateways.manage.dome_models_pool_move
Reposition a pool in its workspace's match_when evaluation order. Pools with non-empty predicates evaluate in ascending sort_key; the first match wins. Exactly one of before or after is required.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Pool to move |
before | string | No | Anchor pool name; the moved pool lands immediately before it |
after | string | No | Anchor pool name; the moved pool lands immediately after it |
gateways.manage.dome_models_pool_remove
Remove an LLM pool. Marked destructive.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Pool name |
gateways.manage.Pool members
Members are model connections inside a pool, each with a priority and weight. Failover walks ascending priority; within a priority bucket, requests distribute by weight.
dome_models_pool_member_list
List members of a pool.
| Parameter | Type | Required | Description |
|---|---|---|---|
pool | string | Yes | Pool name |
gateways.view.dome_models_pool_member_add
Add a model to a pool.
| Parameter | Type | Required | Description |
|---|---|---|---|
pool | string | Yes | Pool name |
model | string | Yes | Model connection name |
priority | int32 | No | Priority bucket (0 = primary, ascending fails over) |
weight | int32 | No | Weight within the priority bucket (default: 1) |
enabled | bool | No | Whether the member is included in routing (default: true) |
gateways.manage.{
"name": "dome_models_pool_member_add",
"arguments": {
"pool": "default",
"model": "claude-sonnet",
"priority": 0,
"weight": 1
}
}dome_models_pool_member_update
Update a pool member's priority, weight, or enabled flag.
| Parameter | Type | Required | Description |
|---|---|---|---|
pool | string | Yes | Pool name |
model | string | Yes | Model connection name |
priority | int32 | No | New priority |
weight | int32 | No | New weight |
enabled | bool | No | New enabled flag |
gateways.manage.dome_models_pool_member_remove
Remove a model from a pool. Marked destructive.
| Parameter | Type | Required | Description |
|---|---|---|---|
pool | string | Yes | Pool name |
model | string | Yes | Model connection name |
gateways.manage.