From 7757f1122673156009fb1840a3a6ee0205f79eed Mon Sep 17 00:00:00 2001 From: Kurtis Van Gent <31518063+kurtisvg@users.noreply.github.com> Date: Wed, 28 Jan 2026 15:19:58 -0700 Subject: [PATCH] feat: add 2026-01-21 weekly meeting notes (#6) add 2026-01-21 weekly meeting notes --- meetings/2026-01-21_weekly.md | 73 +++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 meetings/2026-01-21_weekly.md diff --git a/meetings/2026-01-21_weekly.md b/meetings/2026-01-21_weekly.md new file mode 100644 index 0000000..8585e61 --- /dev/null +++ b/meetings/2026-01-21_weekly.md @@ -0,0 +1,73 @@ +# 2026-01-21 Transports WG (Weekly) + +## TL;DR +The group reached a consensus to move forward with deprecating unsolicited +server-to-client requests (sampling and elicitations) on the "get stream" to +simplify protocol design and address security concerns. This decision was +supported by data showing negligible usage in existing repositories. Mark Roth +presented a "Multi-Roundtrip Request" proposal designed to replace the current +SSE-based elicitation flow with a stateless, request-response model where +clients echo back state. The group discussed the technical implications of this +change. Finally, the group identified a need to reconcile this new proposal with +the existing "Tasks" mechanism and will invite the Tasks author (Luca) to the +next meeting. + +## Detailed Summary + +### Deprecation of Unsolicited Requests +* **Proposal to Remove:** Shaun Smith proposed assuming that unsolicited + sampling and elicitations (server-to-client requests) are removed from the + session track. He argued that eliminating these unsolicited communications + resolves complex state transfer issues regarding cookies and session IDs. +* **Usage Data:** Peter Alexander shared analysis results from scanning several + thousand MCP repositories, finding only one instance of unsolicited sampling + usage (which belonged to Shaun Smith). +* **Decision:** The group agreed to draft a Specification Enhancement Proposal + (SEP) to formally deprecate unsolicited requests on the /GET stream. +* **Scope:** The SEP will specifically disallow servers from sending sampling or + elicitation requests without an associated client request ID. + +### Technical Decisions: Multi-Roundtrip Requests +* **Problem Statement:** Mark Roth outlined the inefficiency of the current + elicitation flow, where a server opens an SSE stream for elicitation, forcing + the client to make a completely independent request that must be manually + linked back to the original context by the server. +* **Proposed Stateless Flow:** Mark presented a new pattern where the server + immediately terminates the initial request with a response indicating "more + information needed." The client then sends a completely new request containing + the original information plus the elicitation response. +* **State Management (Hidden Fields vs. Cookies):** + * The group debated how to handle state persistence between the terminated + request and the retry. + * Gabriel Zimmerman and Simon Russell argued against using HTTP cookies, + suggesting a "hidden field" mechanism (opaque blob) is more appropriate + for per-tool-call state that should not persist globally. + * Mark Roth agreed, noting that cookies fail when multiple tool calls run in + parallel within the same session. +* **SDK Impact:** Peter Alexander and Simon Russell acknowledged that while + switching to this model will be painful for SDK maintainers to implement + initially, the resulting architecture is significantly easier to maintain and + conceptually simpler. + +### Interaction with Tasks +* **Overlap Analysis:** The group identified that the "Tasks" mechanism + currently duplicates some functionality discussed in the multi-roundtrip + proposal, specifically regarding polling and state retention. +* **Unified Vision:** Caitie McCaffrey noted that Tasks and Tool Calls are + similar but necessary; she described Tasks as a "promise over a network" and + suggested that the handling of elicitation responses in both systems needs to + align. +* **Next Steps:** The group agreed to invite Luca (author of Tasks) to the next + meeting to deeply dive into the relationship between the new stateless + proposal and the existing Tasks implementation. + +## Action Items +- [ ] **Shaun Smith** to write a Specification Enhancement Proposal (SEP) to + deprecate unsolicited server-to-client requests (sponsored by Peter + Alexander). +- [ ] **Mark Roth** to post the Multi-Roundtrip Request proposal to GitHub as a + Pull Request for community feedback. +- [ ] **Caitie McCaffrey** to write a strawman proposal detailing the overlap + between "Tasks" and the current multi-roundtrip proposal. +- [ ] **Kurtis Van Gent** to invite Luca to the next meeting to discuss the + relationship with tasks. \ No newline at end of file