Monthly briefing

May 2026 briefing: MCP goes stateless, OpenTelemetry graduates, and the EU agrees to move the AI Act deadlines

The month the agent stack started to look like ordinary infrastructure: a stateless protocol behind a plain load balancer, standard telemetry for LLM calls, and a regulatory timetable you can actually plan against.

AnalysisCovers May 2026Sumanta Mukhopadhyay8 min read10 sources
#mcp#agents#observability#opentelemetry#regulation#kubernetes
ANALYSIS · MONTHLY BRIEFINGCOVERS MAY 2026

If April was about hardening the platform, May was about the agent stack starting to behave like normal infrastructure. The most important document of the month, for my work, was a protocol release candidate. It is not glamorous, but it changes how you deploy agents.

As with every briefing in this series, the platform and protocol items come from the projects' own posts, and I cite the coverage I used for regulation.

The month in one paragraph

MCP published the release candidate for its 2026-07-28 specification, the largest revision since launch, with a stateless core, first-class extensions and tighter authorisation1. OpenTelemetry became a CNCF graduated project2 and published a practical guide to GenAI observability3. In Brussels, the Parliament and Council reached a provisional agreement on the Digital Omnibus on AI5. Kubernetes spent the month publishing v1.36 deep dives on accelerators and AI scheduling78.

ItemWhat changedWhy it matters
MCP 2026-07-28 RCStateless core, extensions, auth hardeningAgents run behind ordinary load balancers
OpenTelemetryCNCF graduationSafe to standardise on, including for LLM telemetry
GenAI semantic conventionsPractical guide to LLM traces and metricsToken cost and latency per call become visible
Digital Omnibus on AIProvisional deal to delay high-risk deadlinesA planning date, not yet law
K8s DRA and schedulingMore drivers, gang scheduling evolvesBetter GPU sharing for AI workloads

MCP: the session is gone

The release candidate removes the initialize handshake and the Mcp-Session-Id header1. Protocol version, client information and capabilities now travel with every request, and a new server/discover method returns server capabilities on demand. The post spells out the practical effect: a remote server that used to need sticky sessions, a shared session store and deep packet inspection at the gateway can now sit behind a plain round-robin load balancer, route on an Mcp-Method header, and let clients cache tools/list.

Before: a client routed with a sticky route to one MCP server instance, all instances sharing a session store. After: the client routed to any of three instances with no session store
Before and after: sticky routing and a shared session store give way to any-instance routing. Source: MCP blog, The 2026-07-28 MCP Specification Release Candidate · CC BY 4.0

Applications can still be stateful. The recommended pattern is an explicit handle: a tool returns an identifier such as a basket_id, and the model passes it back as an ordinary argument on later calls.

Sequence diagram: the model calls create_basket, the MCP server returns a basket_id, and the model passes the same basket_id to add_item
The explicit-handle pattern keeps state visible to the model instead of hidden in transport metadata. Source: MCP blog, The 2026-07-28 MCP Specification Release Candidate · CC BY 4.0

Two other changes matter for enterprise use. Extensions became first-class, with MCP Apps (server-rendered interfaces in a sandboxed iframe) and Tasks moving out of the core into an extension, which means anyone who built on the experimental Tasks API has a migration ahead. And six proposals hardened authorisation, including mandatory validation of the iss parameter per RFC 9207 to counter mix-up attacks1. The final specification was scheduled for 28 July, with a ten-week window for SDKs to validate. I covered the security side in my MCP security checklist.

Observability: OpenTelemetry graduates, and LLM calls get standard telemetry

The CNCF announced OpenTelemetry's graduation on 21 May2. For architecture decisions, graduation is mostly about risk: it is now very hard to argue against OpenTelemetry as the default instrumentation standard.

A GenAI observability dashboard listing LLM call spans with model, duration and token information
LLM and tool-call spans captured with the OpenTelemetry GenAI semantic conventions. Source: OpenTelemetry blog, Inside the LLM Call: GenAI Observability with OpenTelemetry · CC BY 4.0

The GenAI observability post is the one I would hand to any team running agents3. The semantic conventions standardise how a model call is recorded: the model, input and output token counts and, only when you opt in, the content of prompts, completions and tool calls. The default of not capturing content is the right one, because prompts often contain personal data. The post also notes that common coding assistants already emit OpenTelemetry data.

The project also launched Blueprints and Reference Implementations, an opinionated guide to deploying OpenTelemetry for common situations, prompted by users asking why adoption feels so complex4. I welcome it. Most of the complexity teams hit is accidental, not essential. A blueprint that says "do it this way" saves weeks of debate in a platform team.

Regulation: a provisional deal on the AI Act timetable

On 7 May the Parliament and Council reached a provisional agreement on the Digital Omnibus on AI. As reported, it sets 2 December 2027 for stand-alone high-risk systems and 2 August 2028 for systems used as safety components of regulated products, adds a new prohibition on AI that generates child sexual abuse material or non-consensual intimate imagery, and still required formal adoption before the original 2 August 2026 date56. In May this was a deal, not law. I explain what happened once it was adopted in the EU AI Act after the Digital Omnibus.

Kubernetes: getting serious about AI workloads

The v1.36 deep dives were dominated by AI infrastructure. Dynamic Resource Allocation gained more drivers and features, extending to native resources such as CPU and memory and supporting ResourceClaims in PodGroups7. Workload-aware scheduling, which handles gang scheduling for AI and batch jobs, took an architectural step by separating its API concerns8. Declarative validation reached GA, replacing a large body of handwritten validation code with markers in the type definitions9.

One operational note: the Kubernetes Security Response Committee announced it would correct CVE records for a few older, unfixed issues on 1 June, warning that vulnerability scanners might start flagging them where they previously did not10. If your scanner reports suddenly changed in June, this is a likely reason.

What I'd do with this

  1. Design new MCP servers stateless from day one. Use explicit handles for application state and keep sessions out of the transport.
  2. Put an AI gateway in front of agent traffic and route on the new MCP headers, so authentication, rate limits and logging live in one place.
  3. Instrument every LLM call with the GenAI conventions, metadata only by default, so you can report cost and latency per feature.
  4. Treat the AI Act dates as provisional until adoption, but keep building logging and evaluation regardless.
  5. If you schedule GPU work on Kubernetes, review DRA and gang scheduling before buying more accelerators. Better sharing is often cheaper than more hardware.

How I can help

I design agent platforms that are observable, secure and cheap to run, from MCP server design to GPU scheduling. See my AI architecture work, or, for investors, how I assess agent companies in technical due diligence. You can also analyse your challenge and bring the result to a call.

References
  1. 1
    The 2026-07-28 MCP Specification Release CandidateModel Context Protocol blog · 2026-05-21
  2. 2
    OpenTelemetry is a CNCF Graduated ProjectOpenTelemetry blog · 2026-05-21
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
FAQ

Common questions

What changed in the MCP 2026-07-28 release candidate?

The protocol became stateless: the initialize handshake and Mcp-Session-Id were removed, so any request can be served by any server instance. It also made extensions first-class (MCP Apps and Tasks), hardened authorisation, and introduced a formal deprecation policy.

Why does OpenTelemetry's CNCF graduation matter?

Graduation signals maturity and long-term stewardship. For teams choosing an observability standard, including for LLM and agent telemetry, it lowers the risk of standardising on OpenTelemetry.

What did the EU agree on the AI Act in May 2026?

On 7 May 2026 the Parliament and Council reached a provisional agreement on the Digital Omnibus on AI, setting 2 December 2027 for stand-alone high-risk systems and 2 August 2028 for those in regulated products, subject to formal adoption.

Keep reading

Related

Open to advisory, fractional CTO & select builds

Let's talk about what you're building.

The fastest route is a free 30-minute call. Prefer to write? Send a message and I'll reply personally within two business days.

Start a conversation

How would you like to reach me?

Book a 30-min callFastest. Pick any open slot on my calendar.→ Write in GmailOpens a pre-filled draft in your browser.→ Use my email appOutlook, Apple Mail or your default client.→

I reply personally within two business days. US & UAE time zones.