-
Notifications
You must be signed in to change notification settings - Fork 7
feat: add 2026-03-11 weekly meeting notes #26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+185
−0
Merged
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,102 @@ | ||
| # 2026-03-04 Transports WG (Weekly) | ||
|
|
||
| ## TL;DR | ||
| The meeting, facilitated by Kurtis Van Gent and Mark Roth, focused on finalizing | ||
| imminent Specification Enhancement Proposals (SEPs) and discussing new protocol | ||
| extensions. The core maintainers reviewed SEP 2322 (MRTR) positively, agreeing | ||
| to accept SDK breaking changes in favor of the new stateless flow. SEP 2243 | ||
| (HTTP Standardization) is undergoing a final revote after consolidating header | ||
| names and softening intermediary error handling. Significant debate occurred | ||
| regarding the Data Layer Sessions proposal, resulting in a mandate to explicitly | ||
| define targeted use cases before further design review. Andreas Schlapbach | ||
| introduced a new content negotiation proposal for compact responses to support | ||
| local LLMs with small context windows. Finally, the group reviewed remaining | ||
| gaps for the June release.w | ||
|
|
||
| ## Detailed Summary | ||
|
|
||
| ### Process & Roadmap | ||
| * **June Release Gaps:** Kurtis Van Gent identified two main gaps for the | ||
| upcoming specification release: pluggable transports and caching/optimization. | ||
| * **Pluggable Transports:** Mark Roth clarified that pluggable transports mostly | ||
| require SDK work, not SEP changes. Minor cosmetic updates to loosen the | ||
| JSON-RPC requirement might be needed. Stephen Halter emphasized the need to | ||
| ensure the transport abstraction still allows for JSON-RPC to support existing | ||
| proxy implementations. | ||
| * **Caching & Standard IO:** Caching and optimization lack volunteers and will | ||
| likely be deferred until after the June release. Standard IO updates are also | ||
| firmly out of scope for the current revision. | ||
|
|
||
| ### Technical Decisions: MRTR & Tasks (SEP 2322) | ||
| * **Core Maintainer Feedback:** Mark Roth reported that the core maintainers | ||
| gave positive feedback on the Ephemeral Multi-Round Trip Request (MRTR) SEP. | ||
| Minor schema changes were added to help SDKs discriminate between tool call | ||
| responses and incomplete responses. | ||
| * **URL-Based Elicitation:** The group agreed that the URL-based elicitation | ||
| workflow is incompatible with the ephemeral workflow and will be restricted to | ||
| the persistent (tasks) workflow. | ||
| * **Backward Compatibility:** The consensus was to accept breaking changes in | ||
| the SDKs to implement the new MRTR flow, deferring backward compatibility | ||
| concerns unless significant user complaints arise. | ||
| * **Task Integration:** Luca Chang confirmed that their task-related proposals | ||
| (including "jump scares" and "task continue") are inextricably tied to MRTR | ||
| and will be pursued under the Transports Working Group. | ||
|
|
||
| ### Technical Decisions: HTTP Standardization (SEP 2243) | ||
| * **Proposal Updates:** Mike Kistler outlined recent changes to the SEP, which | ||
| is up for a revote. Header names (`tool name`, `resource name`, `prompt name`) | ||
| were consolidated into a single `MCP name` header. The payload encoding was | ||
| explicitly specified as the Base64 encoding of the UTF-8 value. | ||
| * **Intermediary Handling:** The requirement for intermediaries was softened so | ||
| that if they reject a request based solely on header values (e.g., bad | ||
| encoding), they can return a standard `400` HTTP error instead of a JSON-RPC | ||
| error. Stephen Halter noted that a `404` should be explicitly avoided to | ||
| prevent ending the session. | ||
| * **Header Limits:** Following a discussion initiated by Stephen Halter about | ||
| protocol limits, the group agreed to remove strict protocol-level limits on | ||
| header lengths. These limits will be replaced with a design note advising | ||
| application authors against promoting overly long parameters to headers. | ||
|
|
||
| ### Technical Decisions: Data Layer Sessions | ||
| * **Defining Use Cases:** Mark Roth strongly emphasized that the sessions SEP | ||
| cannot proceed without a concrete list of targeted use cases. Scenarios like | ||
| "session per tool call" are mutually exclusive with "retaining state across | ||
| tool calls". | ||
| * **Scope of State:** Shaun Smith argued that sessions should manage opaque, | ||
| application-layer state (e.g., associating a chat thread with a sandbox) | ||
| rather than MCP protocol state. Peter Alexander challenged this, asking if the | ||
| LLM model should be in control of the session state instead of the | ||
| application. | ||
| * **Concurrency:** Stephen Halter raised concerns about state synchronization | ||
| during parallel tool calls. Shaun Smith clarified that the proposal currently | ||
| uses a "last write wins" strategy to intentionally discourage high-stakes | ||
| strict ordering, advising it be used for low-stakes storage. | ||
| * **Next Steps:** The group agreed to hold a special session next week to review | ||
| an updated document focused on use cases and design, which will inform a final | ||
| recommendation to the core maintainers (including the potential recommendation | ||
| to drop sessions entirely). | ||
|
|
||
| ### Proposals: Content Negotiation | ||
| * **Compact Responses:** Andreas Schlapbach proposed a two-phase content | ||
| negotiation extension (similar to HTTP `Accept`) allowing clients with small | ||
| context windows (like local LLMs on mobile devices) to request "compact" | ||
| responses from servers. | ||
| * **Protocol vs. Application Layer:** Simon Russell and Kurtis Van Gent | ||
| questioned why this negotiation needs to live at the protocol layer instead of | ||
| just passing expressive parameters within individual tool calls. Andreas | ||
| argued that an upfront session-level negotiation reduces chattiness and | ||
| compute waste. Andreas will continue to refine the proposal and gather | ||
| feedback in the repository. | ||
|
|
||
| ## Action Items | ||
| - [ ] **Shaun Smith** to update the Sessions document by Friday/Saturday, | ||
| focusing on defining use cases and the argument for keeping sessions at the | ||
| application layer rather than the model layer. | ||
| - [ ] **Shaun Smith** to check availability for a special session next Tuesday | ||
| or Friday to discuss the updated session document. | ||
| - [ ] **Shaun Smith & Kurtis Van Gent** to work together to ensure the Sessions | ||
| SEP explicitly outlines the context for application versus transport sessions. | ||
| - [ ] **Mike Kistler** to update SEP 2243 to replace the strict limits on header | ||
| lengths with an implementation note/design guidance. | ||
| - [ ] **Kurtis Van Gent** to follow up with Kryspin and Stephen Halter to | ||
| formulate a formal proposal/plan for pluggable transports. |
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,83 @@ | ||
| # 2026-03-11 Transports WG (Weekly) | ||
|
|
||
| ## TL;DR | ||
| The meeting centered on two major protocol design topics: the schema scope for | ||
| Multi-Round Tool Results (MRTR) and a proposal to eliminate Data Layer Sessions | ||
| entirely. Regarding MRTR, the group debated whether incomplete response features | ||
| should be generic (applicable to all requests) or scoped only to specific | ||
| contexts like tool calls. The consensus favored a generic approach, | ||
| acknowledging the trade-off in SDK complexity, though the question will be | ||
| escalated to David (DSP) for final guidance. The second major discussion | ||
| involved Peter Alexander's "anti-sessions" proposal, which advocates for | ||
| replacing formal protocol sessions with application-specific IDs passed within | ||
| tool calls. This model-maximalist approach gained surprising traction among | ||
| attendees for its simplicity and flexibility. The group agreed to draft a formal | ||
| SEP for this sessionless approach and present both options (sessions vs. no | ||
| sessions) to the core maintainers for early feedback. | ||
|
|
||
| ## Detailed Summary | ||
|
|
||
| ### MRTR Schema Design: Generic vs. Scoped Features | ||
| * **The Dilemma:** Caitie McCaffrey opened the discussion on whether MRTR | ||
| features (like `request state` and `incomplete response data`) should be added | ||
| to the generic result object (applying to all requests) or scoped strictly to | ||
| specific requests (like tool calls). | ||
| * **Arguments for Scoping:** Mark Roth argued that allowing incomplete responses | ||
| on requests where they logically don't make sense (e.g., `ping` or `task/get`) | ||
| forces all clients to handle edge cases unnecessarily. If the protocol allows | ||
| it, clients must support it. | ||
| * **Arguments for Genericity:** Luca Chang and Caitie McCaffrey countered that | ||
| special-casing features introduces bugs and limits future innovation. Mike | ||
| Kistler (speaking for SDK maintainers) noted that a generic implementation at | ||
| the lower layers of the SDK is actually simpler to build. | ||
| * **Consensus & Escalation:** Caitie McCaffrey will draft a summary of the | ||
| options and escalate the question to David (DSP) for a final ruling based on | ||
| protocol design principles. | ||
|
|
||
| ### The "Anti-Sessions" Proposal | ||
| * **The Pitch:** Peter Alexander presented an argument to eliminate Data Layer | ||
| Sessions from the MCP protocol entirely. Instead of `session create`/`destroy` | ||
| mechanics, applications would use specific tool calls (e.g., | ||
| `create_shopping_cart`) to generate application-specific IDs, which the model | ||
| would then pass into subsequent tool calls. | ||
| * **Benefits:** This approach simplifies the protocol, removes the overhead of | ||
| session lifecycle management for lightweight sub-agents, and provides greater | ||
| flexibility (e.g., sharing a single "basket ID" across multiple sub-agents or | ||
| having multiple active state objects at once). | ||
| * **The "Model Maximalist" View:** Caitie McCaffrey and Kurtis Van Gent raised | ||
| concerns about whether cheaper or open-source LLMs could reliably handle | ||
| passing these IDs. Peter Alexander argued from a "model maximalist" | ||
| perspective, stating that models are increasingly proficient at instruction | ||
| following and variable tracking. | ||
| * **Support:** Mark Roth, Mike Kistler, and Geoff Goodman expressed strong | ||
| support for the proposal, agreeing that sessions are often confusing and that | ||
| leveraging existing tool call mechanisms is more elegant and scalable. | ||
| * **Backward Compatibility:** While acknowledging this is a major breaking | ||
| change, the group agreed that removing unnecessary complexity now is | ||
| preferable to maintaining a flawed feature. | ||
|
|
||
| ### Next Steps & Timeline | ||
| * **Drafting the SEP:** Peter Alexander will write a formal SEP for the | ||
| sessionless proposal by the end of the week. | ||
| * **Core Maintainer Review:** Because the core maintainer meeting precedes the | ||
| next Transports WG meeting, the group will vote asynchronously on Peter's | ||
| draft. Both the original sessions proposal (by Shaun Smith) and the | ||
| anti-sessions proposal will be presented to the core maintainers as an "early | ||
| preview" to build consensus before Dev Days. | ||
| * **Luca's Roadmap:** Luca Chang is out for two weeks. Kurtis Van Gent will | ||
| ensure Luca's priority task-related SEPs ("jump scares" and "task continue") | ||
| are surfaced at the next core maintainer meeting. | ||
|
|
||
| ## Action Items | ||
| - [ ] **Caitie McCaffrey** to draft a summary of the generic vs. scoped MRTR | ||
| options and escalate to David (DSP) via Discord for guidance. | ||
| - [ ] **Peter Alexander** to write a formal SEP detailing the proposal to remove | ||
| sessions from the MCP protocol. | ||
| - [ ] **Kurtis Van Gent** to follow up with Shaun Smith to ensure the original | ||
| sessions SEP is ready to serve as a counter-argument to the anti-sessions | ||
| proposal. | ||
| - [ ] **Caitie McCaffrey** to initiate an asynchronous thread for the WG to | ||
| review and vote on the two session proposals before the core maintainer | ||
| meeting. | ||
| - [ ] **Kurtis Van Gent** to follow up with Luca Chang regarding the priority | ||
| task-related SEPs before Luca's leave. |
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the comment. It might be better to point your feedback related to sessions (or the lack of them) to the specific PR: #25