Skip to content

Envoy AI Gateway becomes Agent Router and joins the Agentic AI Foundation

Learn more

AI Gateway for Kubernetes and EKS: How the Gateway Fits Your Cluster and Your Coding Tools

Last updated: September 2026

An AI gateway for Kubernetes installs into your existing cluster as a standard Helm chart or GitOps manifest. The gateway uses your cloud IAM and sends metrics and traces to your monitoring tools. Coding tools such as Claude Code, Cursor, and GitHub Copilot connect to the gateway by changing a base URL and an API key. Azure AI Foundry agents and the Copilot CLI can send their model calls through the gateway today.

An AI gateway for Kubernetes installs as a Helm chart in two namespaces

The self-hosted data plane of Tetrate Agent Router Enterprise is a set of ordinary Kubernetes resources. The architecture overview describes an Envoy-based gateway plus a Controller that polls a Tetrate-hosted management plane over one outbound HTTPS connection. No inbound connection is required.

ResourceValuePurpose
Namespace tars-systemControllerPolls configuration, applies policy
Namespace tars-dataplaneGatewayCarries AI traffic
Service egress, port 10080Gateway entry pointServes /v1/* and /mcp/*
GatewayClass tars-egressEnvoy Gateway v1.7.xStandard Kubernetes Gateway API
Kubernetes version1.32 to 1.35 for current releasesSee the compatibility page

Images are available for linux/amd64 and linux/arm64. The installation overview lists three install paths. The tare CLI bundles the chart and runs checks before install on EKS, AKS, and GKE. Plain Helm pulls the chart as an OCI artifact from your private registry. For GitOps, tare install renders the manifests so you commit them to the Argo CD or Flux repository instead of applying them by hand.

On EKS, the install uses your load balancer and your IAM roles

The AWS installation guide asks for a cluster of at least three nodes with OIDC enabled and the EBS CSI driver. The smallest setup is three m5.large nodes, and the largest documented setup is three m5.2xlarge nodes. Images are copied to ECR, and one tare install command deploys the data plane.

Making the gateway reachable from outside uses the tare gateway install command, which creates a Network Load Balancer through the EKS in-tree cloud provider. No AWS Load Balancer Controller or IAM policy work is needed for the default path. Then you add a CNAME to the load balancer hostname.

For Bedrock, the data plane can sign requests with the pod’s IAM identity through IRSA or EKS Pod Identity. No static AWS keys are stored in the cluster. One command binds the role: tare dataplane identity bind --type irsa --create-iam --cluster <name> --region <region>.

EKS may default to a Kubernetes version newer than the supported range, so fix the version at cluster creation. An existing cluster-wide Envoy Gateway install clashes with the gateway’s GatewayClass, so use a dedicated cluster.

Metrics and traces go to the monitoring tools you already run

The gateway exports traces over OTLP on gRPC port 4317 or HTTP port 4318 to Grafana, Datadog, New Relic, Honeycomb, or Jaeger. Each component also exposes a Prometheus scrape endpoint. Spans carry the model name, prompt and completion token counts, and the request ID, using OpenInference attribute names. A contentMode: metadata-only setting drops prompt content from traces. The setting is under Settings → OpenTelemetry Export in the Admin Console, or in Helm values.

Configuration can also be stored in Git. The configuration-as-code guide explains that policies, routing, budgets, the model catalog, and API keys are the same objects in the console, the API, and Helm values. Changes apply in under a minute without a restart. Set each value in one place only, because a GitOps tool undoes changes made by hand.

How Claude Code, Cursor, and other coding tools connect to the AI gateway

Every tool that accepts an OpenAI-compatible or Anthropic-compatible base URL can point at the gateway. The coding agents overview documents the current list:

ToolHow the tool connectsNotes
Claude Codetare integrate claude-code writes ANTHROPIC_BASE_URL and ANTHROPIC_API_KEY to ~/.claude/settings.jsonManaged mode reaches every provider family through one profile. Passthrough mode keeps a Claude Max subscription as the billing path and still logs every request
Claude Desktop (Cowork and Code tabs)tare integrate claude-cowork, or Developer Mode → Configure Third-Party InferenceGateway mode only, no subscription passthrough. See the Claude Desktop post
Visual Studio CodeThe Tetrate Agent Router Model Provider extension registers the gateway as a language model providerOne key serves the chat view, agent mode, and any extension that uses the Language Model API. Requires VS Code 1.106 or later
CursorBase URL override in the settings UI, plus a .cursorrules file so generated code targets the gatewayThe docs cover generated code in detail and the settings override only in general terms
GitHub Copilot in VS Code, Copilot CLISee the Microsoft Copilot table below
Codex CLI, Aider, Cline, Continue, Codertare integrate <tool> writes the tool’s config fileSee the tare CLI guide

The tare integrate command finds installed tools and creates or reuses a gateway key. The command writes the config file with 0600 permissions, backs up the previous file, and makes one test call. A --dry-run flag shows the change without applying it.

Claude Code reaches every provider family through one gateway profile

Claude Code sends requests in the Anthropic Messages format. The gateway accepts that format on /v1/messages and translates the request for other providers. Since Agent Router release 0.3.0, one Claude Code profile reaches Anthropic, Claude on Vertex AI, OpenAI, Gemini, and self-hosted OpenAI-compatible models. No flag changes per model are needed. Your own tools and MCP servers work on every family, because the gateway converts the tool definitions for each backend.

DetailWhat happensWhat to do
Large MCP setups on OpenAI or self-hosted modelsClaude Code sends more tool definitions than OpenAI acceptsSet ENABLE_TOOL_SEARCH=true so Claude Code searches its tools instead of sending all of them
A model is enabled but missing from the /model pickerClaude Code filters the list by its own naming rulesStart Claude Code with --model <name>. The model is reachable
Anthropic server-side toolsThese tools run inside Anthropic onlyKeep that work on Anthropic models
Switching provider family mid-sessionNot tested with customersStart a new session when you change family

Passthrough mode covers Anthropic models only, because the subscription pays only for Anthropic. Passthrough fallback stays inside Anthropic, and the console shows this limit.

Which Microsoft Copilot products can route through an AI gateway

Copilot is the name of several Microsoft products, and each one treats an outside gateway differently. The Tetrate VS Code extension covers the developer tools. Azure AI Foundry covers the agent platforms.

Microsoft productRoutes through the gateway?HowStatus
Azure AI Foundry Agent Service (prompt agents)YesFoundry’s bring your own model connection sends agent traffic to your gateway endpoint firstGenerally available since April 2026
GitHub Copilot in VS Code (chat and agent mode)YesThe Tetrate VS Code extension registers the gateway as a language model provider. Microsoft’s custom endpoint setting covers the chat window onlyAvailable today
GitHub Copilot CLIYesThree environment variables, per the Copilot CLI custom models guideAvailable today
Copilot Studio agents (MCP tools)YesAdd the Agent Router MCP profile URL as an MCP server in Copilot StudioAvailable. Copilot Studio calls the URL from Microsoft’s cloud, so the gateway endpoint must be reachable from there. Test the auth setup in a short pilot
Copilot Studio agents (prompts and tools)Through Azure AI FoundryCopilot Studio calls a Foundry model, and the Foundry connection calls the gatewayProve the Foundry step in a short pilot
Copilot Studio main modelNoCopilot Studio has no field for a gateway URL as the main modelNot possible today
Custom engine agents for Microsoft 365YesYou bring your own orchestration and models, and the gateway routes the models behind the agentAvailable. Requires developer work
Visual Studio 2026 (Copilot Agent)PreviewAdd an OpenAI provider with a custom URL in Agent (Preview), version 18.10 and laterPreview. Use VS Code for production
Microsoft 365 Copilot assistant in Word, Excel, Teams, and OutlookNoMicrosoft picks that modelUse a custom engine agent or a published Foundry agent instead

Three settings decide whether the Foundry connection works. Pick the connection type Other source (called ModelGateway in the CLI and Bicep). Choose API Management only if you already handle model requests with API Management. Enter the base path only in the Base URL field, because Foundry adds chat/completions. Name the model as <connection-name>/<model-name> in the agent. Foundry supports the Other source connection for prompt agents in the Agent SDK only, and Microsoft does not support the Responses API on that connection.

For GitHub Copilot in VS Code, the extension stores the key in VS Code secret storage backed by the operating system keychain. The key never lands in settings.json. The approved model list is stored in the repository in .vscode/settings.json, so a team commits one list and every developer sees the same models. For Copilot Business and Enterprise, the organization admin turns bring-your-own-key on or off in Copilot policy settings, so confirm the policy before a rollout date.

Applications connect the same way as tools

An application built on the OpenAI SDK, the Anthropic SDK, LangChain, Vercel AI SDK, Pydantic AI, or CrewAI swaps the base URL and key. The integrations reference lists the full set. The one exception is a tool that hardcodes a provider SDK with no base URL override, because such a tool cannot use any gateway.

What the AI gateway does not support today

  1. GitHub Copilot inline code completions. GitHub runs inline completions.
  2. The Microsoft 365 Copilot assistant in Word, Excel, Teams, and Outlook on your own models.
  3. The gateway as the Copilot Studio main model.
  4. Visual Studio 2026 in production. The custom provider is in preview, and admin controls for the custom provider are not shipped.
  5. A cluster that already runs a cluster-wide Envoy Gateway.

Now Available

MCP Catalog with verified first-party servers, profile-based configuration, and OpenInference observability are now generally available in Tetrate Agent Router Service. Start building production AI agents today with $5 free credit.

Sign up now

Frequently asked questions

Can I install an AI gateway into my existing EKS cluster? Yes, if the cluster has at least three nodes, OIDC enabled, and a supported Kubernetes version. The install is a Helm chart or a set of rendered manifests. A cluster that already runs a cluster-wide Envoy Gateway needs a separate cluster.

Does the gateway need inbound access from the vendor? No. The data plane makes one outbound HTTPS connection to the management plane. No inbound firewall rules are required.

How do I connect Claude Code to the gateway? Run tare integrate claude-code. The command writes the base URL and API key to the Claude Code settings file and makes a test call. A passthrough flag keeps a Claude Max subscription as the billing path.

Can Claude Code use OpenAI or Gemini models through the gateway? Yes. Claude Code sends Anthropic Messages requests, and the gateway translates them for OpenAI, Gemini, Claude on Vertex AI, and self-hosted OpenAI-compatible models. One profile covers every family. Anthropic server-side tools stay on Anthropic models.

Can GitHub Copilot use the gateway? GitHub Copilot can use the gateway for chat and agent mode in VS Code, through the Tetrate extension or Microsoft’s custom endpoint setting. The Copilot CLI can use the gateway through three environment variables. Inline code completions stay on GitHub’s servers.

Can Azure AI Foundry agents route through an AI gateway? Yes. Foundry’s bring-your-own-model connection, generally available since April 2026, sends prompt agent traffic to the gateway endpoint first. Pick the Other source connection type, enter the base path only, and name the model as connection-name/model-name.

Can Microsoft 365 Copilot run on my own models? No. The assistant in Word, Excel, Teams, and Outlook runs on models Microsoft picks. To use your own models inside Microsoft 365, build a custom engine agent and route the models behind that agent through the gateway.

Does the gateway work with Datadog or Grafana? Yes. Traces export over OTLP and metrics expose Prometheus scrape endpoints. A metadata-only setting keeps prompt content out of traces.

Can I manage gateway configuration in Git? Yes. Policies, routing, budgets, the model catalog, and keys can be set through Helm values and reconciled by Argo CD or Flux. Changes apply in under a minute.

Which Kubernetes versions does the AI gateway support? Current Agent Router data plane releases support Kubernetes 1.32 to 1.35. The release compatibility page lists the range for each release.

How does the gateway call Amazon Bedrock without static AWS keys? The data plane signs Bedrock requests with the pod’s IAM role through IRSA or EKS Pod Identity. One tare dataplane identity bind command creates and binds the role, and no AWS keys are stored in the cluster.


MCP Catalog with verified first-party servers, profile-based configuration, and OpenInference observability are now generally available in Tetrate Agent Router Service . Start building production AI agents today.

Decorative CTA background pattern background background
Tetrate logo in the CTA section Tetrate logo in the CTA section for mobile

Ready to enhance your
network

with more
intelligence?