Overview
A Gateway carries two related controls:- Resource membership makes a tool, pool, or model addressable through the Gateway’s runtime endpoint.
- Agent access admits the agent at the edge and generates rules that permit all current and future resource members.
- Create a Gateway or reuse the Default gateway.
- Add the resource as a member.
- Grant the agent access to the Gateway.
- Point the client at the Gateway’s endpoint.
- Verify reachability with that agent’s API key.
Resource membership
Membership determines which resources a Gateway exposes:
A resource with no Gateway membership stays valid. The resource shows as Unreachable because no runtime endpoint addresses it. Removing a membership leaves the underlying resource intact. Gateway membership is available in Rules through
resource.gateways.contains("<id>"). Refer to the Rules reference.
You can change what a Gateway exposes when you add or remove members.
Agent access
A per-agent grant adds the Gateway to that agent’s allowed resources (agent.register and rules.deploy). A workspace-wide grant covers every current and future agent in the workspace (rules.deploy and gateway.manage). gateway.manage alone cannot grant runtime access. Revoking a workspace-wide grant leaves per-agent grants in place.
Without either grant, invocation fails at edge admission (access.denied / permission_denied with DENY_DETAIL_CODE_GATEWAY_ADMISSION). Discovery such as tools/list and GET /v1/models is exempt from admission and stays membership- and Cedar-filtered. With a grant, other rules can still deny individual resource members. Generated permit rules are shown read-only in the dashboard.
You can change who reaches a Gateway when you grant or revoke access.
Default gateway
Every new workspace starts with an active Default Gateway that has no resource memberships or agent grants. Migrated workspaces may already have resources attached, but callers still need an explicit per-agent or all-agents grant. The default marker only pre-selects a Gateway in dashboard dialogs that create tools, pools, and models. The marker adds no resources, grants no access, and overrides no rules. Free and Pro workspaces support one Gateway, and the auto-created Default counts toward that limit. Team, Enterprise, and self-managed workspaces support additional Gateways. Exceeding the plan cap returns HTTP429 / RESOURCE_EXHAUSTED.
You can move the marker when you set the Default gateway.
Runtime endpoints
Each Gateway has its own path under the workspace gateway host. Callers select a Gateway in the request URL. The base URL depends on the client protocol. A disabled Gateway rejects requests but keeps its memberships and grants. Refer to Build the runtime endpoint for client-specific URL paths.Cost quotas
A Gateway cost quota caps aggregate LLM spend for member pools and direct model connections. Exceeding the cap blocks further LLM calls through that Gateway until the active window resets. Filter audit byproducer_gateway_id. Metrics dashboards do not break down by Gateway.
You can cap spend when you set a cost quota. Window and scope semantics are on the Quotas reference.
Requirements
Before you begin:- Authenticate to Dome and select a workspace
- Collect the resource and agent identifiers the operation needs
- Have an active agent key with access to the selected Gateway when you verify runtime reachability
Permissions
Gateway membership, grants, and related operations require platform permissions. Each operation states its required permission inline.Create Gateway
Create a separate Gateway when callers need a resource set or endpoint boundary that the Default gateway should not share. A new Gateway starts active with empty membership and no grants.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway createFree and Pro workspaces support only one Gateway. Reuse, rename, or delete the Default gateway before creating another one.
Update Gateway
Update a Gateway to change its name or description.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Get Gateway
Retrieve one Gateway to inspect its state, default marker, workspace-wide grant, and resource memberships.Requires
gateway.view.- CLI
- MCP
- API
- Agent
Reference:
dome gateway getList Gateways
List Gateways to retrieve their names, IDs, states, default markers, and canonical endpoint paths.Requires
gateway.view.- CLI
- MCP
- API
- Agent
Reference:
dome gateway listSet Default gateway
Set a Gateway as the workspace default to pre-select it in dashboard dialogs that create tools, pools, and models. Setting a new default clears the previous marker. A disabled default is not pre-selected.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway set-defaultManage lifecycle
Manage a Gateway’s availability without changing resource memberships or agent grants. Delete a Gateway only when callers no longer need that endpoint.Enable Gateway
Enable a disabled Gateway to restore its endpoint. Disabling a Gateway preserves existing memberships and grants.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway enableDisable Gateway
Disable a Gateway to block its endpoint without removing memberships or grants. Requests stay rejected until you enable the Gateway again.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway disableDelete Gateway
Delete a Gateway only after moving callers to another endpoint. Deletion removes the Gateway and its resource memberships. The/gateways/{{GATEWAY_ID}}/... endpoint starts rejecting requests. Deletion does not remove the underlying tools, connections, pools, or models.
Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway deleteManage resource memberships
Add or remove members so resources are addressable through a Gateway. Membership kinds are in Overview. Membership changes do not modify or delete the underlying resources.Individual tools
Add or remove one tool without exposing the rest of its connection.Add individual tool
Add one tool without exposing the other tools from its connection.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway tools addRemove individual tool
Remove an individual membership to stop exposing the tool on its own. The tool stays addressable when a tool-source membership also covers that tool.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway tools removeTool source
Add or remove an entire MCP connection. Newly discovered tools on that connection join the Gateway automatically.Add tool source
Add a tool source to include every tool currently on that connection.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway tool-sources addRemove tool source
Remove a tool-source membership to stop automatically including tools from that connection. Individually added tools remain in the Gateway.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway tool-sources removePool
Add or remove a pool so agents can call it by its stable name through the Gateway. Changes to the pool’s members do not require a membership update.Add pool
Add a pool to expose its routed models through the Gateway.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway model-pools addRemove pool
Remove a pool to stop exposing that pool through the Gateway. The pool and its members remain configured.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway model-pools removeDirect model
Add or remove one model connection without routing through a pool.Add direct model
Add a direct model connection to make that model name addressable through the Gateway.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway models addRemove direct model
Remove a direct model connection to stop exposing it through the Gateway without deleting the connection.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway models removeManage agent access
Grant or revoke who is admitted at the Gateway edge. Per-agent and workspace-wide grants are in Overview. Other Rules can still deny individual members after admission.List agent access
List agents and show whether each agent has a per-agent grant to the Gateway. Revoked agents are excluded. Suspended agents remain listed so you can inspect their grants before reactivation.Requires
agent.view.- CLI
- MCP
- API
- Agent
Reference:
dome gateway access listGrant one agent
Grant one agent access while preserving its existing Gateway grants. Dome generates and manages the permit rules. You cannot edit those rules directly.Requires
agent.register and rules.deploy.- CLI
- MCP
- API
- Agent
Reference:
dome gateway access grantRevoke one agent
Revoke one agent’s access to the Gateway while preserving its other Gateway grants. Requests from that agent to the Gateway endpoint fail at edge admission unless a workspace-wide grant also applies.Requires
agent.register and rules.deploy.- CLI
- MCP
- API
- Agent
Reference:
dome gateway access revokeGrant every workspace agent
Grant every current and future workspace agent access when all agents need the same endpoint. Other rules can still deny individual resources after admission.Requires
gateway.manage and rules.deploy.- CLI
- MCP
- API
- Agent
Reference:
dome gateway access grant-allRevoke every workspace agent
Revoke the workspace-wide grant to stop automatically admitting every agent. Existing per-agent grants remain in place.Requires
gateway.manage and rules.deploy.- CLI
- MCP
- API
- Agent
Reference:
dome gateway access revoke-allManage cost quotas
Cap aggregate LLM spend for member pools and direct model connections on this Gateway. Refer to Overview. Window and scope semantics are on the Quotas reference.List cost quotas
List Gateway cost quotas in the workspace or filter the result to one Gateway.Requires
gateway.view.- CLI
- MCP
- API
- Agent
Reference:
dome gateway quota listSet a cost quota
Set a daily or monthly USD spend cap for LLM calls through a Gateway. Once spend exceeds the cap, LLM calls addressed to that Gateway return HTTP429.
Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Reference:
dome gateway quota setRemove a cost quota
Remove a Gateway cost quota to stop enforcing that cap.Requires
gateway.manage.- CLI
- MCP
- API
- Agent
Build the runtime endpoint
Build the runtime endpoint from the workspace gateway host and the Gateway ID. Retrieve the ID with List Gateways.Requires
gateway.view to retrieve the ID. Runtime calls require an active agent key and a grant to the Gateway.
Do not add
/v1 to the Anthropic base URL because the Anthropic SDK appends /v1/messages. Bare /mcp and /v1 requests return HTTP 400. Every caller must select a Gateway in the URL.
Run dome gateway get <name-or-id> --json to retrieve the complete gateway_url, mcp_url, openai_base_url, and anthropic_base_url. SDK agent-key creation and token exchange return the same authoritative endpoint set. Refer to Python SDK Gateways.
Verify reachability
Verify discovery before invoking a tool or model. Discovery returns only members of the selected Gateway that the agent’s grant and applicable rules permit.Requires an active agent key, access to the Gateway, and rules that allow discovery.
Troubleshoot reachability
Use the observed response to locate the failed layer.
After changing memberships or grants, wait for gateway synchronization before testing again. If discovery succeeds but invocation fails, inspect the resource rules and the agent’s lifecycle state.
Next steps
- Gateways concept for how membership and grants work
- Register agents to create agent identities and keys
- Tools to configure tool connections and catalog state
- Pools to configure pools and routing