{"id":17190,"date":"2026-07-29T00:22:55","date_gmt":"2026-07-29T00:22:55","guid":{"rendered":"https:\/\/techtrendfeed.com\/?p=17190"},"modified":"2026-07-29T00:22:55","modified_gmt":"2026-07-29T00:22:55","slug":"how-agentcore-gateway-helps-the-mcp-2026-07-28-spec","status":"publish","type":"post","link":"https:\/\/techtrendfeed.com\/?p=17190","title":{"rendered":"How AgentCore Gateway helps the MCP 2026-07-28 spec"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div id=\"\">\n<p>At this time, the Mannequin Context Protocol (MCP) printed its 2026-07-28 specification, the most important and most vital revision of the protocol since its launch. With this launch MCP turns into a stateless protocol that scales on peculiar HTTP infrastructure. Alongside the transport adjustments, this new model introduces a ruled extensions system, strengthens authorization by aligning extra carefully with enterprise practices for OAuth 2.0 and OpenID Join, and establishes lifecycle ensures that restrict future breakage.<\/p>\n<p>You can begin utilizing the most recent protocol in your <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/docs.aws.amazon.com\/bedrock-agentcore\/latest\/devguide\/gateway.html\" target=\"_blank\" rel=\"noopener\">AgentCore Gateway<\/a>, a functionality of Amazon Bedrock AgentCore, right now by calling <code>UpdateGateway<\/code> with the record of variations you need your gateway to assist. Present purchasers preserve working precisely as earlier than, and there&#8217;s no per-target step. On this put up, we stroll by means of what modified within the protocol and why, what it means on your brokers and instruments, and methods to allow the brand new model in your gateways.<\/p>\n<p>Already accustomed to the spec adjustments? Leap straight to <a rel=\"nofollow\" target=\"_blank\" href=\"#updating-your-agentcore-gateway\">Updating your AgentCore Gateway<\/a>.<\/p>\n<h2 id=\"what-changes-with-the-new-spec-and-why-it-matters\">What adjustments with the brand new spec and why it issues<\/h2>\n<p>This launch comprises <strong>backward-incompatible adjustments<\/strong> to the MCP protocol. The transition to statelessness is a foundational change that protocol maintainers imagine is important to deal with scaling challenges with enterprise deployments. The introduction of breaking adjustments with new variations, nevertheless, is just not anticipated to be the norm. To assist facilitate backward-compatible updates in future revisions, maintainers have launched new governance enhancements to the protocol specification (a function lifecycle coverage, an extensions framework, and a conformance-suite requirement). These enhancements are designed to assist protocol evolution with out breaking core capabilities.<\/p>\n<p>Upgrading can also be <strong>opt-in<\/strong>, and nothing adjustments till each you and your purchasers act. AgentCore Gateway advertises the protocol variations it speaks by means of a single configuration area. Purchasers choose a model on each request. Including 2026-07-28 to a gateway that additionally advertises 2025-11-25 doesn&#8217;t change something for purchasers that request the older model. Solely a consumer that requests 2026-07-28 will get the brand new conduct. Nothing breaks on July 28.<\/p>\n<h2 id=\"mcp-is-now-stateless\">1. MCP is now stateless<\/h2>\n<p>In prior variations of the protocol, each Streamable HTTP interplay with an MCP server started with an <code>initialize<\/code>\/<code>initialized<\/code> handshake, through which the consumer and server exchanged protocol variations and capabilities. The server then issued an <code>Mcp-Session-Id<\/code> header that each subsequent request was required to hold:<\/p>\n<pre class=\"http\"><code>POST \/mcp HTTP\/1.1\nMcp-Session-Id: 1868a90c-3a3f-4f5b\nContent material-Kind: utility\/json\nSettle for: utility\/json\n\n{\"jsonrpc\":\"2.0\",\"id\":2,\"technique\":\"instruments\/name\",\n\"params\":{\"identify\":\"search\",\"arguments\":{\"q\":\"otters\"}}}<\/code><\/pre>\n<p>That session pinned the consumer to the server that issued it. Due to this fact, to scale an MCP server horizontally, operators wanted sticky classes on the load balancer, a shared session retailer behind the fleet, or each.<\/p>\n<p>By eradicating classes, distant MCP servers successfully grow to be customary HTTPS endpoints, which scale cleanly with enterprise workloads. Because the protocol turns into stateless, the handshake and the protocol-level session are each not wanted (<a rel=\"nofollow\" target=\"_blank\" class=\"Hyperlink TrackedChange TrackChangeHyperlinkInstruction SCXW147330082 BCX0\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2575-stateless-mcp\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"TextRun Underlined SCXW147330082 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW147330082 BCX0\">SEP-2575<\/span><\/span><\/a><span class=\"TextRun SCXW147330082 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW147330082 BCX0\">\u00a0<\/span><\/span><span class=\"TextRun SCXW147330082 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW147330082 BCX0\">and\u00a0<\/span><\/span><a rel=\"nofollow\" target=\"_blank\" class=\"Hyperlink TrackedChange TrackChangeHyperlinkInstruction SCXW147330082 BCX0\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2567-sessionless-mcp\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"TextRun Underlined SCXW147330082 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW147330082 BCX0\">SEP-2567<\/span><\/span><\/a><span class=\"TextRun SCXW147330082 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW147330082 BCX0\">\u00a0<\/span><\/span>take away these necessities from the brand new protocol model). With 2026-07-28, each request now carries protocol model, consumer information, and consumer capabilities inside its <code>_meta<\/code> parameter, eliminating the necessity for a one-time initialization handshake. Purchasers that have to study what a server helps can name the brand new <code>server\/uncover<\/code> technique at any level. The web impact is {that a} single software name is totally self-contained. It requires no prior session context and might be routed to any server occasion. Eradicating the protocol session doesn&#8217;t preclude assist for stateful functions. When servers want continuity throughout calls, you may comply with established patterns for HTTP requests by passing an express ID as a software parameter, which ought to come from one among your individual instruments.<\/p>\n<pre class=\"http\"><code>POST \/mcp HTTP\/1.1\nMCP-Protocol-Model: 2026-07-28\nMcp-Technique: instruments\/name\nMcp-Title: create_basket\nContent material-Kind: utility\/json\nSettle for: utility\/json,textual content\/event-stream\n\n{\"jsonrpc\":\"2.0\",\"id\":1,\"technique\":\"instruments\/name\",\n\"params\":{\"identify\":\"create_basket\",\"arguments\":{},\n\"_meta\":{\"io.modelcontextprotocol\/clientInfo\":{\"identify\":\"my-app\",\"model\":\"1.0\"}}}}<\/code><\/pre>\n<p>Response:<\/p>\n<div class=\"hide-language\">\n<pre><code class=\"language-json\">{\"jsonrpc\":\"2.0\",\"id\":1,\n\"consequence\":{\"resultType\":\"full\",\"content material\":[{\"type\":\"text\",\"text\":\"Created basket bsk_a1b2c3\"}],\"structuredContent\":{\"basket_id\":\"bsk_a1b2c3\"},\"isError\": false}}<\/code><\/pre>\n<\/p><\/div>\n<p>You possibly can then use the agent\u2019s personal capabilities to string this state deal with by means of subsequent requests:<\/p>\n<pre class=\"http\"><code>POST \/mcp HTTP\/1.1\nMCP-Protocol-Model: 2026-07-28\nMcp-Technique: instruments\/name\nMcp-Title: add_item\nContent material-Kind: utility\/json\nSettle for: utility\/json,textual content\/event-stream\n\n{\"jsonrpc\":\"2.0\",\"id\":1,\"technique\":\"instruments\/name\",\n\"params\":{\"identify\":\"add_item\",\"arguments\":{\"basket_id\": \"bsk_a1b2c3\", \"sku\": \"sneakers\"},\n\"_meta\":{\"io.modelcontextprotocol\/clientInfo\":{\"identify\":\"my-app\",\"model\":\"1.0\"}}}}<\/code><\/pre>\n<p>AgentCore Gateway has all the time shielded brokers from a lot of MCP\u2019s session mechanics. It aggregates your AWS Lambda capabilities, APIs, and MCP servers behind a single MCP endpoint and manages the protocol dialog with every goal in your behalf. With 2026-07-28, that will get less complicated on either side: an agent\u2019s first software name is one self-contained request fairly than a handshake adopted by a name. Every request carries an <code>Mcp-Protocol-Model<\/code> header. The gateway serves the request in that model when the model seems in <code>supportedVersions<\/code>, or rejects it with <code>HTTP 400<\/code> (code <code>-32022<\/code>) and a listing of supported variations when it doesn&#8217;t. Requests that omit the header default to 2025-03-26.<\/p>\n<h2 id=\"routable-cacheable-traceable-traffic\">2. Routing,\u00a0caching, and\u00a0tracing\u00a0with out\u00a0parsing the\u00a0physique<\/h2>\n<p>In prior variations of the protocol, the operation a request carried out was opaque to something sitting between consumer and server. Load balancers, API gateways, and fee limiters all needed to parse the JSON-RPC physique to find out what technique was being known as. Detecting adjustments to a server\u2019s software catalog meant holding a long-lived SSE stream open and ready for a push notification. MCP visitors, in brief, didn&#8217;t play properly with customary HTTP infrastructure.<\/p>\n<p>2026-07-28 closes that hole in 3 ways. First, each Streamable HTTP request now surfaces its intent in customary headers: <code>Mcp-Technique<\/code> and <code>Mcp-Title<\/code> (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2243-http-standardization\" target=\"_blank\" rel=\"noopener\">SEP-2243<\/a>) journey exterior the physique, giving intermediaries sufficient info to route, throttle, and meter on the HTTP layer alone. A server that receives a request the place the declared headers contradict the physique rejects it outright. Second, responses to record and resource-read operations now embrace express freshness metadata, <code>ttlMs<\/code> and <code>cacheScope<\/code>, borrowed from the semantics of HTTP <code>Cache-Management<\/code> (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2549-TTL-for-list-results\" target=\"_blank\" rel=\"noopener\">SEP-2549<\/a>). Purchasers can cache a <code>instruments\/record<\/code> response for a identified length and scope with out sustaining a persistent connection solely to look at for invalidations. Third, the spec now reserves the W3C Hint Context keys (<code>traceparent<\/code>, <code>tracestate<\/code>, <code>baggage<\/code>) inside <code>_meta<\/code> (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/414-request-meta\" target=\"_blank\" rel=\"noopener\">SEP-414<\/a>), formalizing what a number of SDKs had already adopted in observe. A distributed hint originating in your utility can now propagate by means of the complete name chain, from agent to MCP consumer to gateway to downstream service, and render as a unified span tree in any OpenTelemetry-compatible collector.<\/p>\n<p>On the 2026-07-28 path, AgentCore Gateway surfaces these primitives immediately. Each software consequence out of your gateway carries the brand new structured consequence envelope, and cacheable outcomes embrace TTL and scope hints for conformant consumer SDKs. The gateway additionally enforces the custom-header binding: when a software\u2019s enter schema marks a area as header-bound, the gateway rejects any request whose header is absent or contradicts the physique (<code>HTTP 400<\/code>, code <code>-32020<\/code>).<\/p>\n<h2 id=\"server-to-client-interactions-without-persistent-connections\">3. Server-to-client\u00a0interactions with out\u00a0persistent\u00a0connections<\/h2>\n<p>A stateless protocol nonetheless wants a means for a server to speak again to the consumer mid-call. MCP has three such interactions: elicitation, the place the server asks the tip consumer for enter (\u201cthis software is about to delete three recordsdata. Affirm?\u201d), roots, the place the server asks for obtainable directories and recordsdata within the filesystem, and sampling, the place the server asks the consumer\u2019s mannequin to generate a response. In earlier variations, delivering these requests meant the server held an SSE stream open again to the consumer.<\/p>\n<p>With the most recent protocol model, server-initiated requests are actually solely permitted whereas the server is actively processing a consumer request (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2260-Require-Server-requests-to-be-associated-with-Client-requests\" target=\"_blank\" rel=\"noopener\">SEP-2260<\/a>). Each immediate a consumer sees traces again to one thing they or their agent began. Multi Spherical-Journey Requests (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2322-MRTR\" target=\"_blank\" rel=\"noopener\">SEP-2322<\/a>) substitute the earlier long-lived stream. Right here, the server embeds questions in an <code>InputRequiredResult<\/code> and externalizes state by means of an opaque <code>requestState<\/code> token fairly than pushing a query over SSE. Solely instruments that declare elicitation or sampling inputs set off the multi-round-trip trade, and solely when the consumer advertises assist for it.<\/p>\n<div class=\"hide-language\">\n<pre><code class=\"language-json\">{\n  \"resultType\": \"input_required\",\n  \"inputRequests\": {\n    \"verify\": {\n      \"technique\": \"elicitation\/create\",\n      \"params\": {\n        \"mode\": \"type\",\n        \"message\": \"Delete 3 recordsdata?\",\n        \"requestedSchema\": {\n          \"sort\": \"object\",\n          \"properties\": {\n            \"verify\": {\n              \"sort\": \"boolean\"\n            },\n            \"required\": [\"confirm\"]\n          }\n        }\n      }\n    },\n    \"requestState\": \"eyJzdGVwIjoxLCJmaWxlcyI6WyJhIiwiYiIsImMiXX0=\"\n  }\n}<\/code><\/pre>\n<\/p><\/div>\n<p>Purchasers acquire the consumer\u2019s solutions and re-issue the unique name with the responses and the <code>requestState<\/code>. The whole lot the server wants is within the payload, so any server occasion can choose up the retry.<\/p>\n<p>Individually, progress notifications and log supply are actually request-scoped. The gateway relays progress updates solely when the consumer provides a progress token on the originating request, and delivers log messages solely when the consumer units <code>io.modelcontextprotocol\/logLevel<\/code> in per-request metadata.<\/p>\n<h2 id=\"extensions-become-first-class\">4. Decoupling extensions from the core spec<\/h2>\n<p>Till now, MCP extensions have been a casual idea with no governance behind them. <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2133-extensions\" target=\"_blank\" rel=\"noopener\">SEP-2133<\/a> introduces one. Every extension carries a reverse-DNS ID, is negotiated by means of an <code>extensions<\/code> map in consumer and server capabilities, lives in a devoted repository below delegated maintainers, and follows its personal launch cadence impartial of the core spec. A brand new Extensions Observe inside the SEP course of defines how an extension graduates from experimental to official standing, which adjustments how the protocol grows. Quite than each new thought competing for house within the core specification and forcing a breaking model bump, capabilities can now mature as opt-in extensions on their very own timelines. Purchasers and servers that don&#8217;t negotiate a given extension are unaffected.<\/p>\n<h2 id=\"authorization-hardening\">5. Authorization hardening<\/h2>\n<p>Six SEPs convey MCP\u2019s\u00a0authorization specification into nearer alignment with\u00a0manufacturing OAuth 2.0 and OpenID Join deployments. Your gateway\u2019s inbound authorization, whether or not IAM (SigV4) or OAuth\/JWT, is unchanged by the protocol model. So are your outbound credential\u00a0suppliers. Upgrading the protocol model doesn&#8217;t require altering credentials or authorizer configuration.<\/p>\n<h2 id=\"error-handling-and-deprecations\">6. Error dealing with and deprecations<\/h2>\n<p>On earlier protocol variations, almost every part got here again as HTTP 200 with an error tucked contained in the JSON-RPC physique, together with transport-level failures. On 2026-07-28, the transport and utility layers are cleanly separated. Transport failures return actual HTTP standing codes. Utility-level outcomes keep within the physique:<\/p>\n<table border=\"1px\" width=\"100%\" cellpadding=\"10px\">\n<tbody>\n<tr>\n<td><strong>State of affairs<\/strong><\/td>\n<td><strong>2025-* variations<\/strong><\/td>\n<td><strong>2026-07-28<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Unknown technique<\/td>\n<td>In-body JSON-RPC error, <code>HTTP 200<\/code><\/td>\n<td><code>HTTP 404<\/code><\/td>\n<\/tr>\n<tr>\n<td>Unsupported protocol model<\/td>\n<td>Varies<\/td>\n<td><code>HTTP 400<\/code>, code <code>-32022<\/code>. Physique lists supported variations<\/td>\n<\/tr>\n<tr>\n<td>Header-bound area absent or mismatched<\/td>\n<td>Varies<\/td>\n<td><code>HTTP 400<\/code>, code <code>-32020<\/code><\/td>\n<\/tr>\n<tr>\n<td>Lacking required consumer functionality<\/td>\n<td>Not relevant<\/td>\n<td>Code <code>-32021<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>These adjustments solely matter for code that inspects error responses. They let your HTTP-level monitoring, alarming, and retry logic distinguish routing issues from application-level points with out parsing the physique. The spec additionally reassigns the \u201c<em>useful resource not discovered<\/em>\u201d error code from the MCP-specific <code>-32002<\/code> to JSON-RPC\u2019s customary <code>-32602<\/code> Invalid Params (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2164-resource-not-found-error\" target=\"_blank\" rel=\"noopener\">SEP-2164<\/a>). In case your consumer matches on <code>-32002<\/code> wherever, audit these code paths. Moreover, on the 2026-07-28 path: <code>logging\/setLevel<\/code> is retired, and a consumer that calls it&#8217;s rejected. To decide into log supply, you may set the per-request metadata area <code>io.modelcontextprotocol\/logLevel<\/code> as a substitute.<\/p>\n<p>Three core options are deprecated below the protocol\u2019s new function lifecycle coverage (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2577-deprecate-roots-sampling-and-logging\" target=\"_blank\" rel=\"noopener\">SEP-2577<\/a>): Roots (changed by software parameters, useful resource URIs, or server configuration), Sampling (changed by direct integration with LLM supplier APIs), and Logging (changed by <code>stderr<\/code> for stdio transports and OpenTelemetry for structured observability). These deprecations are advisory. The strategies, varieties, and functionality flags stay practical on this launch and in any specification model printed inside twelve months of it. Nonetheless, we extremely suggest that new implementations not take a dependency on them.<\/p>\n<h2 id=\"schema-support\">7. Schema assist<\/h2>\n<p>Device <code>inputSchema<\/code> and <code>outputSchema<\/code> now assist the complete <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/json-schema.org\/draft\/2020-12\" target=\"_blank\" rel=\"noopener\">JSON Schema 2020-12<\/a> vocabulary (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/seps\/2106-json-schema-2020-12\" target=\"_blank\" rel=\"noopener\">SEP-2106<\/a>). Enter schemas retain the <code>sort: \"object\"<\/code> root requirement however acquire composition key phrases (<code>oneOf<\/code>, <code>anyOf<\/code>, <code>allOf<\/code>), conditionals, and inside references (<code>$ref<\/code>, <code>$defs<\/code>). Output schemas don&#8217;t have any root-type restriction, and <code>structuredContent<\/code> could also be any legitimate JSON worth. Implementations should not comply with exterior <code>$ref<\/code> URIs routinely and will implement depth and cut-off dates throughout validation.<\/p>\n<h2 id=\"deciding-if-youre-ready-to-update\">Deciding when you\u2019re able to replace<\/h2>\n<p>Work by means of three questions earlier than you allow the brand new model:<\/p>\n<ol type=\"1\">\n<li><strong>Are your purchasers prepared?<\/strong> Your brokers attain Gateway by means of MCP consumer SDKs. Verify that the SDKs your agent frameworks and host functions use have shipped\u00a02026-07-28\u00a0assist. Tier 1 SDKs have been anticipated to ship assist through the ten-week launch candidate window, so most mainstream stacks are prepared right now. See the\u00a0<a rel=\"nofollow\" target=\"_blank\" class=\"Hyperlink SCXW148261944 BCX0\" href=\"https:\/\/modelcontextprotocol.io\/docs\/sdk\" target=\"_blank\" rel=\"noreferrer noopener\">MCP SDK documentation<\/a>\u00a0for the present tier record. Take a look at purchasers that assist\u00a02026-07-28 earlier than you promote it on a manufacturing gateway.<\/li>\n<li><strong>Does something you run depend upon eliminated or modified conduct?<\/strong> Audit for: protocol classes used to hold utility state, <code>logging\/setLevel<\/code>, consumer code matching the literal <code>-32002<\/code> error code, and any dependence on Roots, Sampling, or Logging. In case your instruments use elicitation or sampling, notice that the gateway carries these by means of a brand new per-request mechanism on 2026-07-28 fairly than a persistent session. Affirm your purchasers declare the matching functionality. A consumer that omits it&#8217;s rejected with code <code>-32021<\/code>.<\/li>\n<li><strong>Do you management either side?<\/strong> You don\u2019t have to. Model choice occurs per request, so a dual-version gateway serves previous and new purchasers concurrently. You possibly can improve purchasers and the gateway on impartial schedules, in both order.<\/li>\n<\/ol>\n<p>For the complete particulars, see the\u00a0MCP 2026-07-28 specification the <a rel=\"nofollow\" target=\"_blank\" class=\"Hyperlink TrackedChange SCXW247456459 BCX0\" href=\"https:\/\/modelcontextprotocol.io\/specification\/2026-07-28\/changelog\" target=\"_blank\" rel=\"noreferrer noopener\">changelog in opposition to 2025-11-25<\/a>, and the\u00a0<a rel=\"nofollow\" target=\"_blank\" class=\"Hyperlink SCXW247456459 BCX0\" href=\"https:\/\/blog.modelcontextprotocol.io\/posts\/2026-07-28-release-candidate\/\" target=\"_blank\" rel=\"noreferrer noopener\">MCP weblog\u2019s launch candidate announcement<\/a><\/p>\n<h2 id=\"updating-your-agentcore-gateway\">Updating your AgentCore Gateway<\/h2>\n<p>For AgentCore Gateway prospects, adopting 2026-07-28 is a configuration change. Your AgentCore Gateway can assist a number of protocol variations concurrently. You possibly can add 2026-07-28 to your gateway\u2019s record of <code>supportedVersions<\/code> with a single <code>UpdateGateway<\/code> name. There\u2019s no have to re-create the gateway or make adjustments to particular person gateway goal configurations. The MCP model is a property of the gateway, not of its targets, and updates to that property are carried out in place. Device definitions, goal configuration, and inbound authentication (IAM and OAuth) are all unchanged by the model change.<\/p>\n<p><code>UpdateGateway<\/code> <strong>replaces<\/strong> <code>supportedVersions<\/code> with the set you ship. It doesn&#8217;t append. Learn the present configuration first, then ship the entire record you need the gateway to promote:<\/p>\n<div class=\"hide-language\">\n<pre><code class=\"language-bash\"># 1. Learn the present configuration.\naws bedrock-agentcore-control get-gateway \n    --gateway-identifier <gateway-id>\n\n# 2. Promote 2026-07-28 alongside the prevailing model.\naws bedrock-agentcore-control update-gateway \n    --name <gateway-name> \n    --role-arn <gateway-role-arn> \n    --protocol-type MCP \n    --authorizer-type <gateway-authorizer-type> \n    --gateway-identifier <gateway-id> \n    --protocol-configuration '{\n  \"mcp\": {\n    \"supportedVersions\": [\"2025-11-25\", \"2026-07-28\"]\n  }\n}'<\/gateway-id><\/gateway-authorizer-type><\/gateway-role-arn><\/gateway-name><\/gateway-id><\/code><\/pre>\n<\/p><\/div>\n<p>AgentCore Gateway works with any of the next protocol variations: 2025-03-26, 2025-06-18, 2025-11-25, and 2026-07-28.<\/p>\n<p>Affirm the brand new model is stay by calling your gateway with the brand new headers:<\/p>\n<div class=\"hide-language\">\n<pre><code class=\"language-bash\">curl -s https:\/\/<your-gateway-endpoint>\/mcp \n    -H \"Authorization: Bearer $TOKEN\" \n    -H \"Content material-Kind: utility\/json\" \n    -H \"Settle for: utility\/json,textual content\/event-stream\" \n    -H \"MCP-Protocol-Model: 2026-07-28\" \n    -H \"Mcp-Technique: instruments\/record\" \n    -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"technique\":\"instruments\/record\",\"params\":{}}'<\/your-gateway-endpoint><\/code><\/pre>\n<\/p><\/div>\n<p>A profitable response confirms the gateway served the request at 2026-07-28. A rejection with code <code>-32022<\/code> means the model isn\u2019t within the gateway\u2019s <code>supportedVersions<\/code> but, and the response physique lists what the gateway at present advertises.<\/p>\n<p><code>supportedVersions<\/code> is the entire set the gateway advertises, so rolling again is identical operation in reverse. That&#8217;s, ship the record with out 2026-07-28. Requests specifying the eliminated model are rejected with a response physique itemizing the variations the gateway nonetheless helps. Be certain that purchasers you\u2019ve already migrated can fall again earlier than you take away the model they\u2019re requesting.<\/p>\n<h2 id=\"how-version-selection-works\">How model choice works<\/h2>\n<p>Purchasers choose a model on every request, not by means of a one-time handshake. Every MCP request declares its model within the <code>MCP-Protocol-Model<\/code> header, and the gateway honors it when it\u2019s in <code>supportedVersions<\/code>:<\/p>\n<ul>\n<li>A request naming a model the gateway advertises is served in that model. On a dual-version gateway (for instance, 2026-07-28 and 2025-11-25), a 2026-07-28 request will get the brand new conduct and a 2025-11-25 request will get the sooner conduct.<\/li>\n<li>A request naming a model the gateway does <em>not<\/em> promote is rejected with <code>HTTP 400<\/code> and code <code>-32022<\/code>. The response physique lists the variations the gateway helps.<\/li>\n<li>A request that omits the header will get the default model, 2025-03-26. If that default isn\u2019t within the gateway\u2019s <code>supportedVersions<\/code>, the request is rejected.<\/li>\n<\/ul>\n<p>Your present purchasers proceed to work so long as they request protocol variations listed within the gateway\u2019s <code>supportedVersions<\/code>. That provides you a clear, three-stage rollout: add 2026-07-28 alongside your present variations, migrate purchasers at your individual tempo, and solely in any case purchasers request the brand new model, trim the record down.<\/p>\n<p>In case your gateway fronts an MCP server goal that upgrades to 2026-07-28 earlier than your purchasers do, it interprets between variations, so a <code>2025-*<\/code> consumer can name peculiar instruments on a 2026-07-28 goal and obtain ends in the format it expects, with out upgrading. Nonetheless, this translation doesn&#8217;t at present assist elicitations and sampling calls from servers to purchasers. If a <code>2025-*<\/code> consumer calls a software on the <code>2026-*<\/code> server that requires elicitation or sampling, it receives an error.<\/p>\n<h2 id=\"conclusion\">Conclusion<\/h2>\n<p>MCP <code>2026-07-28<\/code> is the protocol\u2019s largest revision ever, and it\u2019s designed to be the final revision that breaks compatibility. Statelessness offers MCP a basis that scales on commodity HTTP infrastructure whereas MCP Extensions give new capabilities room to evolve on their very own schedules.<\/p>\n<p>With Amazon Bedrock AgentCore Gateway, including assist for the most recent protocol model is just one <code>UpdateGateway<\/code> name. To get began, see the <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/docs.aws.amazon.com\/bedrock-agentcore\/latest\/devguide\/gateway.html\" target=\"_blank\" rel=\"noopener\">AgentCore Gateway documentation<\/a>, assessment the <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/specification\/draft\" target=\"_blank\" rel=\"noopener\">MCP 2026-07-28 specification<\/a> and its <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/modelcontextprotocol.io\/specification\/draft\/changelog\" target=\"_blank\" rel=\"noopener\">changelog<\/a>, and take a look at enabling the brand new model on a gateway right now. If in case you have suggestions on the specification itself, the maintainers welcome points within the <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/github.com\/modelcontextprotocol\/modelcontextprotocol\/issues\" target=\"_blank\" rel=\"noopener\">MCP specification repository<\/a>. For questions on AgentCore Gateway, attain out by means of <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/repost.aws\/\" target=\"_blank\" rel=\"noopener\">AWS re:Put up<\/a> or your normal AWS Assist channels.<\/p>\n<hr\/>\n<h2>Concerning the authors<\/h2>\n<footer>\n<div class=\"blog-author-box\">\n<div class=\"blog-author-image\">\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-full\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2026\/07\/28\/ML-21559-1.jpg\" alt=\"Sean Eichenberger\" width=\"100\" height=\"100\"\/><\/p>\n<\/p><\/div>\n<h3 class=\"lb-h4\">Sean Eichenberger<\/h3>\n<p>Sean is a Principal Product Supervisor at AWS Agentic AI. He leads initiatives throughout agent governance, security, and connectivity for Amazon Bedrock AgentCore.<\/p>\n<\/p><\/div>\n<div class=\"blog-author-box\">\n<div class=\"blog-author-image\">\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignleft size-full\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2026\/07\/28\/ML-21559-2.jpg\" alt=\"Luca Chang\" width=\"100\" height=\"100\"\/><\/p>\n<\/p><\/div>\n<h3 class=\"lb-h4\">Luca Chang<\/h3>\n<p>Luca is a Software program Growth Engineer at AWS engaged on Amazon Bedrock AgentCore, and is an MCP specification maintainer. Luca is an writer of the MCP Duties function proposal and is an lively bridge between AWS buyer wants and protocol improvement efforts. His background spans distributed techniques and complicated AI functions.<\/p>\n<\/p><\/div>\n<\/footer>\n<p>       \n      <\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>At this time, the Mannequin Context Protocol (MCP) printed its 2026-07-28 specification, the most important and most vital revision of the protocol since its launch. With this launch MCP turns into a stateless protocol that scales on peculiar HTTP infrastructure. Alongside the transport adjustments, this new model introduces a ruled extensions system, strengthens authorization by [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":17192,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[55],"tags":[4450,4728,936,6707,1766],"class_list":["post-17190","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-machine-learning","tag-agentcore","tag-gateway","tag-mcp","tag-spec","tag-supports"],"_links":{"self":[{"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/posts\/17190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=17190"}],"version-history":[{"count":1,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/posts\/17190\/revisions"}],"predecessor-version":[{"id":17191,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/posts\/17190\/revisions\/17191"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/media\/17192"}],"wp:attachment":[{"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=17190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=17190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=17190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}<!-- This website is optimized by Airlift. Learn more: https://airlift.net. Template:. Learn more: https://airlift.net. Template: 69d9690a190636c2e0989534. Config Timestamp: 2026-04-10 21:18:02 UTC, Cached Timestamp: 2026-07-29 02:51:41 UTC -->