From d9b92d985843d0b30dc4a402b347d125c46e0aaa Mon Sep 17 00:00:00 2001 From: Kurtis Van Gent <31518063+kurtisvg@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:23:55 -0600 Subject: [PATCH] feat: add 2026-06-03 weekly meeting notes (#41) --- meetings/2026-06-03_weekly.md | 94 +++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 meetings/2026-06-03_weekly.md diff --git a/meetings/2026-06-03_weekly.md b/meetings/2026-06-03_weekly.md new file mode 100644 index 0000000..eccf14d --- /dev/null +++ b/meetings/2026-06-03_weekly.md @@ -0,0 +1,94 @@ +# **2026-06-03 MCP: Transport Working Group (Weekly)** + +# **TL;DR** + +The meeting focused on defining the technical scope of the streaming protocol, +debating the necessity and scope of session identifiers, and reviewing proposed +JSON schema constraints. The group aligned on collecting concrete use cases for +session identifiers on the repository to resolve tension over statelessness, and +on removing controversial upper limits from the JSON schema hardening proposal. +Significant technical friction emerged regarding whether to bake logical +constraints (like non-negative counters) directly into the schema to support +compiler-level validation and SDK generation. + +# **Detailed Summary** + +## **Defining the Scope of Streaming** + +* **Modality Scope:** Shaun Smith presented a definition of streaming, + emphasizing the need to support diverse modalities such as diffusion models, + which stream a sequence of progressive frames (denoising noise) rather than + text chunks. +* **Ephemeral vs Long-Running:** Kurtis Van Gent noted that the streaming + protocol must support both ephemeral tool calls (e.g., SQL database queries + returning thousands of rows) and long-running operations. +* **Tension Point \- Resumability and Transport Limits:** Members raised + concerns over how streaming interacts with statefulness. Specifically, if a + connection drops mid-stream, the team debated if a resumable mechanism + resembling pagination is required to fetch data from the middle of a stream. + JSON-RPC over MCP makes handling large binary data transfer particularly + challenging. + +## **Session Identifiers & State Tracking** + +* **Session ID Proposal:** Java Pro (Ripple) proposed introducing a unique ID + generated by the client to be carried across requests, enabling server-side + state tracking, auditing, and request correlation. Luca Chang noted this helps + AWS VM isolation to pin specific containers to sessions. +* **Tension Point \- Connection vs Conversation:** Kurtis Van Gent and Stephen + Halter argued that a session ID represents a logical "conversation" (which may + span different clients or connections) rather than a physical connection. + Shaun Smith strongly opposed using the word "session ID," recalling previous + hard-won consensus that MCP must remain stateless at the transport layer. +* **Tension Point \- Server vs Client Generation:** Stephen Halter argued that + the server, not the client, should generate the session ID to prevent cache + conflicts. +* **Tension Point \- Task Overloading:** Peter Alexander suggested using the + existing "tasks" abstraction to track multi-turn workflows. Kurtis Van Gent + strongly opposed, arguing that tasks are finite "promises" for single results + and overloading them adds unnecessary complexity. + +## **JSON Schema Hardening & Logical Constraints** + +* **Schema Hardening Proposal:** Andreas Schlapbach proposed adding strict + constraints to the JSON schema, such as maximum string lengths and ensuring + counters cannot be negative, to mitigate DoS attacks and optimize SDK code + generation. +* **Tension Point \- Opposition to Size Limits:** Stephen Halter and others + strongly opposed hardcoded upper bounds (such as a 64k state limit), arguing + that arbitrary limits become obsolete and that size defense is an + implementation concern for individual servers, not the MCP spec. +* **Tension Point \- Logical Schema Constraints:** Andreas Schlapbach shifted + the focus to logical constraints (e.g., ensuring a progress index is + non-negative, or array lengths cannot be less than zero). Kurtis Van Gent + questioned the need to specify common-sense limits, but Andreas Schlapbach and + Peter Alexander clarified that defining these in the official JSON schema + allows compilers to automatically generate type-safe validation annotations + and code in languages like Java and Go. + +# **Next Steps & Timeline** + +Kurtis Van Gent will cancel the next weekly meeting due to travel. Shaun Smith +will revise the streaming problem statement to include concrete database query +use cases. Java Pro will open a dedicated tracking issue on the Transport +Working Group repository to gather documented use cases for request correlation +and conversation tracking. + +# **Action Items** + +- [ ] Shaun Smith Revise the streaming problem statement to include concrete + database query examples and progressive frame use cases. +- [ ] Kurtis Van Gent Open a tracking issue on the Transport Working Group + repository to collect concrete, non-abstract use cases for + session/conversation identifiers. +- [ ] All Participants Post specific, documented use cases of session identifier + needs to the newly created tracking issue. +- [ ] Andreas Schlapbach Contact Shaun Smith and Ola on Discord to review and + align with existing JSON schema tightening efforts. +- [ ] SDK Teams Review the proposed JSON schema updates to ensure they do not + negatively impact SDK compiler generation. +- [ ] Andreas Schlapbach Update the protocol pull request to remove the + controversial upper-limit size constraints. + +Source: [Meeting Notes — June 3, +2026](https://docs.google.com/document/d/12Z_Eg7sFXBDGuQaiQWSNi3vRTlc3XI_T3HoqLli0HoA/edit?usp=drive_web&tab=t.4ww5di3nev3f)