118 wires and counting
$ status: archived — this briefing has stopped; the archive stays readable. browse live briefings →

$ status

wire 2026-09-13
stories 8

© 2026 RepoJournal Home Showcase Explore How it works Privacy

$ the-wire · showcase

Laravel MCP serves legacy clients, middleware priority list fixes land

By RepoJournal · Filed · About Laravel · Composed from the cited sources · methodology

Laravel's MCP server now answers both protocol eras on one endpoint, so claude.ai, Claude Desktop, and ChatGPT connectors that still open with initialize stop failing, and two middleware priority fixes correct insertion when the referenced middleware is the first item.

laravel/mcp since 1.0 spoke only MCP `2026-07-28`, so clients using initialization-based handshakes got `-32601` and stopped. The server now supports both eras on the same endpoint, following "[the specification allows a dual-era server]" [1]. If you run the MCP server today, clients that never migrated to the modern handshake will reconnect without a config change on your side.

Two framework fixes correct middleware priority insertion. `appendToPriorityList()` previously placed new middleware at the end when the referenced middleware was the first item of the priority list, so it ran after session, auth, and throttling with no warning [2]. `addToMiddlewarePriorityAfter()` had the same symptom for a different reason: the insertion index started at 0, so a match at position 0 never moved, and a match whose index equalled the current insertion point was skipped, inserting `['B', 'C']` between the two instead of after C [3]. Both are 13.x changes; if you order middleware programmatically, verify the resulting list rather than assuming the append landed where you asked.

On the test side, `MailSesTransportTest` mocked `SesClient` directly "so it never actually ran" [4]. It now builds a real `SesClient` wired to AWS's `Aws\MockHandler`, so the SDK's real command building and validation execute and assertions read the real outgoing request [4].

The only other change in the window is a dependabot bump of `@babel/core` from 7.13.1 to 7.29.7 in laravel/vapor-js, a routine version jump on a build-time dependency [5].

Action items

References

  1. [1] Serve legacy initialize clients alongside the modern protocol ↗ laravel/mcp
  2. [2] [13.x] Fix appendToPriorityList() when the referenced middleware is the first item ↗ laravel/framework
  3. [3] Fix addToMiddlewarePriorityAfter() placing middleware at the end when the referenced middleware is first (#61567) ↗ laravel/framework
  4. [4] Strengthen mocked tests with the real thing ↗ laravel/framework
  5. [5] Bump @babel/core from 7.13.1 to 7.29.7 ↗ laravel/vapor-js

Quick answers

What shipped in Laravel on September 13, 2026?
Laravel's MCP server now answers both protocol eras on one endpoint, so claude.ai, Claude Desktop, and ChatGPT connectors that still open with initialize stop failing, and two middleware priority fixes correct insertion when the referenced middleware is the first item. In total, 3 commits and 5 pull requests landed.
Who contributed to Laravel on September 13, 2026?
4 developers shipped this update, including jasonmccreary, GabeSilvaDev, pushpak1300, and dependabot.
What were the notable Laravel updates?
Serve legacy initialize clients alongside the modern protocol, [13.x] Fix appendToPriorityList() when the referenced middleware is the first item, and Fix addToMiddlewarePriorityAfter() placing middleware at the end when the referenced middleware is first (#61567).