Repository navigation
[Automated] Draft docs (agentgateway): mcpGuardrails: CEL processor (+4 related) - #1265
Open
github-actions[bot] wants to merge 7 commits into
Open
github-actions[bot] wants to merge 7 commits into
github-actions[bot] wants to merge 7 commits into
Conversation
…+4 related) Signed-off-by: GitHub Action <action@github.com>
Deploying agentproxy with
|
| Latest commit: |
3a6864c
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://c6bc911a.agentproxy.pages.dev |
| Branch Preview URL: | https://pr-tracker-draft-agentgatewa-5ucw.agentproxy.pages.dev |
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Kristin Brown <kristin.brown@solo.io>
kristin-kronstain-brown
added a commit
that referenced
this pull request
Oct 14, 2026
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Kristin Brown <kristin.brown@solo.io>
kristin-kronstain-brown
added a commit
that referenced
this pull request
Oct 14, 2026
Building it with go install @latest pulled hundreds of modules through proxy.golang.org, and dropped proxy streams failed doc-test shards before any test ran (#920, #1250, #1265). Pinned to v0.12.0 and checksum-verified. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Kristin Brown <kristin.brown@solo.io>
…eway-3711-plus4 Signed-off-by: Kristin Brown <kristin.brown@solo.io>
Signed-off-by: Kristin Brown <kristin.brown@solo.io>
kristin-kronstain-brown
approved these changes
Oct 14, 2026
Resolve release-notes conflicts with the v1.7 sections on main. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Kristin Brown <kristin.brown@solo.io>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
agentgateway/agentgateway#3711 — mcpGuardrails: CEL processor
Docs versions:
standalone/main,kubernetes/mainWhat changes for users: MCP guardrails can now run in-process CEL processors with
kind: expressionto reject or transformmcp.paramsandmcp.result. Agent sessions are available asrequest.agent.session, Client Setup uses the browser origin when the UI and LLM gateway share a gateway, and playground requests no longer forward browser cookies or basic auth.What the docs now say: The standalone MCP guardrails guide now shows
kind: expression,condition,reject,transform,mcp.params, andmcp.result. The standalone and Kubernetes CEL variable pages now cover MCP CEL processor contexts andrequest.agent.session, and the UI launch and LLM playground pages cover the changed UI behavior.Not verified: No configured cluster or runnable agentgateway binary in this CI sandbox; the configuration and UI behavior are unrun.
How
agentgateway-3711was drafted, and what was not verifiedPlan, and what changed it
assets/agw-docs/standalone/setup/ui/launch.md, so main-only UI changes needed version gates.Why a documentation change is necessary
The generated references list the new
mcpGuardrails.processors[].kind: expression,condition,reject,transform,mcp.params,mcp.result,request.agent.session, andconfig.standardAttributes.sessionfields, but readers need prose that explains how to use the fields safely. The existing MCP guardrails guide described only remote ExtMCP processors, so it did not tell users that in-process CEL processors can now reject or transform MCP bodies. The UI docs did not say that Client Setup resolves same-gateway URLs through the browser origin or that playground requests omit browser credentials.What changed on disk
content/docs/standalone/main/documentation/mcp/guardrails/setup.md: Added CEL MCP guardrail processor prose, YAML, and field descriptions.content/docs/standalone/main/reference/cel/variables.md: Addedrequest.agent.sessionand MCP CEL guardrail variable contexts.content/docs/kubernetes/main/reference/cel/variables.md: Addedrequest.agent.sessionand MCP CEL guardrail variable contexts.content/docs/standalone/main/documentation/observability/access-logs/view.md: Added an access-log example forrequest.agent.session.content/docs/standalone/main/documentation/llm/playground.md: Documented that playground requests omit browser credentials and use the API key field for bearer auth.assets/agw-docs/standalone/setup/ui/launch.md: Added gated main-tree content for Settings tabs and Client Setup browser-origin URL behavior.How to verify this change
mcpGuardrails.processorsentry withkind: expression,methods: {"tools/call": request}, andreject: "blocked".tools/callrequest through the MCP endpoint. The JSON-RPC response returns the configured rejection message and the MCP backend is not called.Authorizationheader.What was not verified
assets/agw-docs/pages/traffic-management/load-balancing.mdstill usesrequest.headers["x-session-id"]where the dossier saysrequest.agent.sessionis the new value.Validation of the added standalone configuration
No added standalone config file was validated.
Not checked: 2 fragment(s) that are not a whole config file.
Validation checks field names and types only. Commands, runtime behavior, and field paths written in prose are unverified.
How the pages were chosen (triage report)
Feature clusters
These pull requests document one feature between them:
content/docs/standalone/main/documentation/llm/playground.md, the only page a code-path rule names for one of them, so separate pull requests would conflictKept apart on purpose. Merging wrongly produces a guide that documents two things and explains neither, so these are reported for a person to merge rather than grouped automatically:
content/docs/standalone/main/documentation/llm/playground.mdas a candidate, but for one of them it is one page among more than 3, so they are kept apart; merge them if both drafts do land therecontent/docs/standalone/main/documentation/llm/playground.mdas a candidate, but for one of them it is one page among more than 3, so they are kept apart; merge them if both drafts do land therecontent/docs/standalone/main/documentation/llm/playground.mdas a candidate, but for one of them it is one page among more than 3, so they are kept apart; merge them if both drafts do land therecontent/docs/standalone/main/documentation/llm/playground.mdas a candidate, but for one of them it is one page among more than 3, so they are kept apart; merge them if both drafts do land therecontent/docs/standalone/main/documentation/llm/playground.mdas a candidate, but for one of them it is one page among more than 3, so they are kept apart; merge them if both drafts do land therecontent/docs/standalone/main/documentation/llm/playground.mdas a candidate, but for one of them it is one page among more than 3, so they are kept apart; merge them if both drafts do land therecontent/docs/standalone/main/documentation/llm/playground.mdas a candidate, but for one of them it is one page among more than 3, so they are kept apart; merge them if both drafts do land therecontent/docs/standalone/main/documentation/llm/playground.mdas a candidate, but for one of them it is one page among more than 3, so they are kept apart; merge them if both drafts do land thereWorked in another repository as well. This does not hold the cluster: a different repository documents itself in a different product's tree, on a schedule this run does not control. Listed so the other work is not a surprise later:
Draft a documentation change
agentgateway/agentgateway#3803 — ui: add top level settings page with sub-pages
agentgateway/website--validate-onlyafter drafting, and commands are unruncrates/agentgateway/src/config_store.rsagentgateway/agentgateway#3807 — ui: expose proper gateway url for client setup
agentgateway/website--validate-onlyafter drafting, and commands are unrunagentgateway/agentgateway#3892 — ui: avoid implicit passing creds to MCP and LLM playground
agentgateway/website--validate-onlyafter drafting, and commands are unrunNew configuration: no page mentions it yet
agentgateway/agentgateway#3711 — mcpGuardrails: CEL processor
agentgateway/websiteschema/cel-functions.mdschema/cel.mdagentgateway/agentgateway#3850 — Automatically detect and report 'session'
agentgateway/websitex-switchyard-session-id: request.headers["x-session-id"]is nowrequest.agent.session. Still written at:assets/agw-docs/pages/traffic-management/load-balancing.md:70assets/agw-docs/pages/traffic-management/load-balancing.md:88assets/agw-docs/pages/traffic-management/load-balancing.md:99content/docs/standalone/1.5.x/documentation/configuration/backends.md:346content/docs/standalone/1.5.x/documentation/configuration/backends.md:368content/docs/standalone/1.5.x/documentation/configuration/backends.md:381content/docs/standalone/latest/documentation/configuration/backends.md:379content/docs/standalone/latest/documentation/configuration/backends.md:401content/docs/standalone/latest/documentation/configuration/backends.md:414content/docs/standalone/main/documentation/configuration/backends.md:379content/docs/standalone/main/documentation/configuration/backends.md:401content/docs/standalone/main/documentation/configuration/backends.md:414crates/agentgateway/src/http/mod.rscrates/agentgateway/src/http/session.rscrates/agentgateway/src/lib.rscrates/agentgateway/src/proxy/httpproxy.rscrates/agentgateway/src/state_manager.rsschema/cel.mdRelease notes
This pull request also adds its release-note entries:
content/docs/kubernetes/main/release-notes/release-notes.md: CEL MCP guardrails (feature)content/docs/standalone/main/release-notes/release-notes.md: CEL MCP guardrails (feature)Draft branch:
pr-tracker-draft-agentgateway-3711-plus4