Skip to content

chore(deps): update gsoci.azurecr.io/giantswarm/agentgateway docker tag to v1.4.1 - #216

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/gsoci.azurecr.io-giantswarm-agentgateway-1.x
Open

chore(deps): update gsoci.azurecr.io/giantswarm/agentgateway docker tag to v1.4.1#216
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/gsoci.azurecr.io-giantswarm-agentgateway-1.x

Conversation

@renovate

@renovate renovate Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Update Change
gsoci.azurecr.io/giantswarm/agentgateway minor v1.3.1v1.4.1

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

agentgateway/agentgateway (gsoci.azurecr.io/giantswarm/agentgateway)

v1.4.1

Compare Source

🎉 Welcome to the 1.4.1 release of the agentgateway project!

Artifacts

Docker images are available:

  • cr.agentgateway.dev/agentgateway:v1.4.1
  • cr.agentgateway.dev/controller:v1.4.1

Helm charts are available:

  • cr.agentgateway.dev/charts/agentgateway:v1.4.1
  • cr.agentgateway.dev/charts/agentgateway-crds:v1.4.1
  • cr.agentgateway.dev/charts/agentgateway-standalone:v1.4.1

Binaries for agentgateway and the agctl CLI are available below.

Quick Start

Follow the Kubernetes or Standalone quick start guide to get started!

Agentgateway v1.4.1

This release fixes a few bugs around LLM and MCP, increasing compatibility with the new 07-28-2026 specification.

Upgrade notes

  • Top-level standalone llm and mcp listeners may no longer share a port. To expose both on one port, attach them to the same configured gateway.
  • When a model references a named custom provider, that provider’s configured name is now used for custom model-catalog lookup. Catalog entries keyed under the generic custom provider name may need to be updated.
  • OAuth token-exchange configurations that relied on an implicit fallback to validated JWT claims must explicitly select jwt.rawToken.unredacted() as the subject-token source.

MCP improvements

  • Added MCP Tasks support, including task retrieval, updates, cancellation, multiplexed task IDs, capability advertisement, RBAC enforcement, and task context in CEL and telemetry.
  • MCP upstream responses are now validated against the expected response type.
  • Asynchronous MCP errors are included in access logs.
  • Fail-open fan-out requests now return an error when every upstream fails instead of producing an empty success.
  • OpenAPI-derived MCP tools use the operation summary as their human-readable title.
  • Synthetic internal session identifiers are no longer logged as MCP session IDs.

LLM and model handling

  • Model catalogs now hot reload consistently when changed through either configuration files or the UI/configuration store.
  • Fixed Amazon Bedrock requests containing tool-call history but no current tool definitions. Agentgateway now supplies the tool configuration Bedrock requires to continue these conversations.
  • Fixed GitHub Copilot embedding responses that omit required OpenAI-compatible object and model fields.
  • Prompt-cache writes are no longer charged as both cache writes and ordinary input. Catalogs without a cache-write price fall back to the standard input rate.

Prompt guards

  • Prompt guards now preserve structured Anthropic tool-use and tool-result content when masking text, preventing malformed requests and upstream 400 responses.
  • Consecutive text blocks are evaluated together, allowing patterns spanning block boundaries to be detected.
  • Non-text blocks and metadata such as Anthropic cache controls are preserved during masking.
  • Zero-width regular-expression matches no longer insert masking placeholders throughout the input.
  • Webhook prompt guards can access the full llmRequest CEL variable and add CEL-computed headers through standalone configuration, Kubernetes CRDs, and xDS.

Authentication and security

  • OAuth token exchange now fails closed when its configured subject-token source is missing or empty. Validated JWT claims are no longer used as an implicit fallback; configurations that intentionally use the validated token can select it explicitly with CEL.
  • Cross-namespace JWKS backend references now honor the configured Gateway API ReferenceGrant policy.

Configuration and operations

  • Configuration storage and request logging can use separate databases when their settings differ, while identical configurations continue to share resources.
  • Environment expansion now happens before configuration parsing, allowing variables in fields needed during startup.
  • External authorization and processing services can return large response bodies without an artificial size limit.

Networking

  • Added a full connection-handshake timeout so requests do not accumulate behind hung HTTP/2 connections.

What's Changed

New Contributors

Full Changelog: agentgateway/agentgateway@v1.4.0...v1.4.1

v1.4.0

Compare Source

🎉 Welcome to the 1.4.0 release of the agentgateway project!

This release brings a number of highlight features.

First, we have full support for the new MCP 2026-07-28 protocol, which we have been working with the MCP community to develop over the past year.
Additionally, Enterprise-Managed Authorization (also known as Cross App Access) for MCP has been added, enabling centralized access control for MCP servers.
Along the same authentication line, a flexible and feature-rich OAuth token exchange backend authentication mode has been added, enabling a number of security authentication strategies.

The standalone mode has a number of enhancements: configuration created in the UI can now be stored in the database (sqlite for local usage, postgres for remote or HA setups), avoiding the need for a persistent disk. A new gateways configuration replaces the low-level binds API and enables serving LLM, MCP, generic routes, and the UI on the same port; additionally, this enables authentication (such as OIDC) for the UI. A new agentgateway-standalone Helm chart is available for deploying standalone agentgateway in Kubernetes.

The Kubernetes deployment has a new (off by default) experimental AgentgatewayModel API, bringing the standalone LLM experience to Kubernetes. AgentgatewayModel allows serving a number of LLM models under the same gateway, routed based on the model name in the request. This offers a higher level API than AgentgatewayBackend, simplifying the common configuration cases; the existing API remains available.

The release also includes Gateway API v1.6 support, fault injection, richer guardrails, and many other enhancements and bug fixes.

Artifacts

Docker images are available:

  • cr.agentgateway.dev/agentgateway:v1.4.0
  • cr.agentgateway.dev/controller:v1.4.0

Helm charts are available:

  • cr.agentgateway.dev/charts/agentgateway:v1.4.0
  • cr.agentgateway.dev/charts/agentgateway-crds:v1.4.0
  • cr.agentgateway.dev/charts/agentgateway-standalone:v1.4.0

Binaries are available below.

Quick Start

Follow the Kubernetes or Standalone quick start guide to get started.

🔥 Breaking changes

Gateway API v1.6 and TCPRoute v1

Agentgateway now builds against Gateway API v1.6, and the Kubernetes controller uses the v1 version of TCPRoute instead of v1alpha2. Re-apply the Gateway API CRDs that match this release before you upgrade.

MCP request-phase guardrail rejections return HTTP 200

When an MCP guardrail rejects a request during the request phase, agentgateway now returns the rejection as an HTTP 200 with a JSON-RPC error body, matching the existing response-phase behavior. Update any clients or tests that expected a non-200 status for request-phase rejections.

For more information, see Kubernetes MCP guardrails and Standalone MCP guardrails.

(Standalone) auth.location no longer nests expression

The auth.location configuration no longer uses a double-nested expression field. Update any policies that set a custom token location to use the flattened form.

musl container images removed

The musl-based container image variants are no longer published. Switch to the standard (glibc) images.

The binary releases are still built with musl.

🔒 Security

Stateful MCP sessions can cross routes and overwrite the authorization policy

This release addresses the security advisory GHSA-mvgg-jvj2-4frq of a High (8.1) severity impacting MCP authorization.

Please see the advisory for details and mitigation steps.

Thank you to Aonan Guan for this report.

Request/Response Body CEL policies

A report was made to us that authorization policies written against the request.body or response.body CEL variables may result in unexpected behavior due to the truncation behavior of these attributes.

This is a security recommendation on the usage of these fields in authorization policies, and not a bug in agentgateway.

This behavior has also changed in this release; see below:

Attribute Version Behavior
request.body 1.3.x and earlier Truncated to http.maxBufferSize (default 2MB)
request.body 1.4 Not available if truncated
request.truncatedBody 1.3.x and earlier Not available
request.truncatedBody 1.4 Truncated to http.maxBufferSize (default 2MB)

The split between body and truncatedBody allows more control over the body when it exceeds the maximum buffer size.

In all cases, usage of these fields in authorization requests is prone to mistakes. For example, consider this request:

string(request.truncatedBody).contains("attacker-payload")

If the request is over 2MB, the attacker-payload may be present but missed.
Additionally, request encoding schemes (compression, etc) can result in additional bypasses.
When using these fields in authorization policies, ensure the policy correctly degrades in these cases.

Thank you to Aonan Guan for this report.

🌟 New features

MCP protocol 2026-07-28 support

Agentgateway adds support for the upcoming MCP 2026-07-28 protocol version.

  • Stateful and stateless servers: Agentgateway supports both stateful and stateless MCP servers, including closing the SEP-2575 server-stateless conformance gap and skipping the synthetic initialize handshake for modern requests.
  • Trace context propagation: Distributed trace context propagates through the MCP _meta field.
  • MCP Apps: Basic support for MCP Apps, including multiplexing fixes for app-originated tool calls.
  • Capability and multiplexing improvements: Preserved multi-resource tool result capabilities for modern clients, multi-target subscriptions and listen, and opaque resource URI multiplexing.

Because MCP 2026-07-28 support is new in this release, most of it is not yet covered by a dedicated guide. For the fields available today, see the Kubernetes API reference and Standalone configuration reference.

Cross App Access for MCP

Agentgateway supports MCP Enterprise-Managed Authorization through the OAuth Identity Assertion Authorization Grant, also known as Cross App Access or ID-JAG. An enterprise identity provider can broker access between a client application and the MCP server without the end user completing a separate OAuth flow for each downstream app.

For more information, see Kubernetes Cross App Access and Standalone Cross App Access.

OAuth token exchange backend authentication

Agentgateway can exchange an incoming token for a backend credential by using RFC 8693 OAuth 2.0 token exchange and the RFC 7523 JWT bearer grant. This release adds Kubernetes controller support, custom token types and OAuth 2.1 exchange defaults, the ability to inject multiple secret-sourced headers, and an override for the resolved secret key.

For more information, see Kubernetes OAuth token exchange and Standalone OAuth token exchange.

New MCP authentication providers

Agentgateway adds native MCP authentication provider support for Microsoft Entra ID. Standalone also adds native providers for Descope and authentik.

The entra provider bridges OAuth behaviors that Microsoft Entra ID implements differently from the MCP authorization specification, including serving RFC 8414 metadata from Entra's OIDC discovery document, stripping the RFC 8707 resource parameter, and short-circuiting Dynamic Client Registration with your pre-registered application ID.

For more information, see Kubernetes MCP authentication, Standalone MCP authentication, and the Standalone Descope integration guide.

New standalone gateways configuration model

Standalone configuration gains a new top-level gateways concept that unifies the UI, LLM, MCP, and routes so that they can share a single listener and port. gateways supersedes binds; existing binds configuration continues to work, and the UI offers a one-click migration from binds to gateways.

This release also adds simpler host and TLS configuration, the ability to serve LLM and MCP traffic on the same port, and an internal bind mode with wildcard fallback. For the full configuration surface, see the Standalone configuration reference.

Virtual keys from ConfigMaps and hashed keys

Virtual keys can now be sourced from a ConfigMap in addition to a Secret, and API keys can be stored as SHA-256 hashes so that raw key material never needs to live in the cluster or in plaintext configuration.

For more information, see Kubernetes virtual keys and Standalone virtual keys.

CEL enhancements

This release expands the CEL surface across policy, telemetry, and transformations:

  • Custom CEL functions: Register custom CEL functions for use in policies.
  • CEL filters for telemetry: An opt-in CEL filter selects which requests emit OpenTelemetry spans, and CEL filters decouple OTLP log fields and filtering from stdout logging.
  • New CEL context and functions: Access inbound CONNECT request headers through source.connectHeaders, and use a CEL replace mode for header transformations.

For the full CEL surface, see the Kubernetes CEL reference and Standalone CEL reference.

Fault injection: request delay

A new delay traffic policy injects latency before a request is forwarded to the backend, for fault-injection and chaos testing. The delay duration accepts a duration string or a CEL expression that returns a duration, or a number interpreted as milliseconds. Injected delay counts against the request timeout.

For more information, see Kubernetes fault injection and Standalone fault injection.

AWS assume-role session tags and session name

AWS assumeRole backend authentication supports STS session tags and a configurable RoleSessionName. Both the session name (sessionNameExpression) and per-tag values (tags[].expression) can be set from CEL expressions evaluated per request, so you can propagate identity attributes such as jwt.sub into the assumed AWS session.

For more information, see Standalone backend authentication. For Kubernetes fields, see the Kubernetes API reference.

Guardrail enhancements

Guardrails include several new operational and policy controls:

  • Backend connection policy for callouts: A BackendConnectionPolicy controls the TCP, TLS, HTTP, and tunnel settings agentgateway uses when it calls out to a guardrail service, and is available on the OpenAI moderation, Bedrock guardrails, and Google Model Armor policies.
  • Default callout timeouts: Guardrail callouts now apply a default timeout.
  • Improved logs and UI: Guardrail decisions surface more clearly in logs and the UI.
  • failureMode for external processing: External processing supports fail-open or fail-closed behavior.

For more information, see Kubernetes LLM guardrails, Standalone prompt guards, Kubernetes MCP guardrails, and Standalone MCP guardrails.

External processing enhancements

The Kubernetes controller supports metadataContext, requestAttributes, and responseAttributes for external processing, and extProc exposes a failureMode for fail-open or fail-closed behavior.

For more information, see Kubernetes external processing and Standalone external processing.

LLM gateway enhancements
  • Frontend TLS with multiple CAs: Client certificate validation can trust multiple CAs.
  • Bedrock: Added Responses-to-Bedrock image translation, sanitized tool names that exceed the 64-character Converse limit, and propagated cache-write tokens to the access log.
  • Gemini: Fixed embeddings handling and generateContent model and usage extraction in detect mode.
  • A2A v1.0: Support for the A2A v1.0 agent card format in URL rewriting.
  • Azure AI Foundry: Support for Anthropic endpoints on Foundry.

For the list of supported providers, see Kubernetes LLM providers and Standalone LLM providers.

Deployment, operations, and packaging
  • Standalone Helm chart: A new agentgateway-standalone Helm chart deploys standalone agentgateway, with support for a metrics service and ServiceMonitor. For more information, see Standalone Helm deployment.
  • DaemonSet workloads: Kubernetes can deploy the data plane as a DaemonSet.
  • Sidecars in control plane pods: A Helm extraContainers value runs sidecar containers in control plane pods.
  • Metrics scraping: Kubernetes can scrape proxy metrics with a PodMonitor, and a new agentgateway_controller_build_info metric reports controller build details.
  • Database logging: Standalone logging writes both successes and errors to the SQL database, with optimized write performance.

For more information, see Kubernetes Helm installation, Kubernetes control plane metrics, and Standalone metrics.

Contributors

Thank you to everyone who contributed code, reviews, documentation, bug reports, and CI improvements for this release!

See the full contributor list below.

What's Changed

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot requested a review from a team as a code owner July 28, 2026 02:29
@renovate renovate Bot added dependencies renovate This is an automated PR by RenovateBot labels Jul 28, 2026
@renovate
renovate Bot requested a review from teemow July 28, 2026 02:29
@renovate
renovate Bot force-pushed the renovate/gsoci.azurecr.io-giantswarm-agentgateway-1.x branch from 1c96bf2 to b6f1dad Compare July 29, 2026 08:31
@renovate renovate Bot changed the title chore(deps): update gsoci.azurecr.io/giantswarm/agentgateway docker tag to v1.4.0 chore(deps): update gsoci.azurecr.io/giantswarm/agentgateway docker tag to v1.4.1 Jul 30, 2026
@renovate
renovate Bot force-pushed the renovate/gsoci.azurecr.io-giantswarm-agentgateway-1.x branch from b6f1dad to a56e902 Compare July 30, 2026 08:53
@renovate
renovate Bot force-pushed the renovate/gsoci.azurecr.io-giantswarm-agentgateway-1.x branch from a56e902 to 24fdfb0 Compare July 30, 2026 10:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies renovate This is an automated PR by RenovateBot

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants