StdioClientTransport.openListen

Open a draft subscriptions/listen stream over stdio. Unlike Streamable HTTP — where the listen stream is a separate long-lived SSE response — stdio shares one channel, so opening a subscription is just writing the subscriptions/listen request line; the server delivers the leading notifications/subscriptions/acknowledged and every subsequent change notification on the same stdout channel, each stamped with io.modelcontextprotocol/subscriptionId (the listen request id), and they reach the client's inbound dispatcher through the channel's read loop (draft basic/utilities/subscriptions: "On stdio ... clients MUST use this field to correlate notifications"). The returned handle's cancel()/close() ends the subscription by sending notifications/cancelled referencing the listen request id, per the draft stdio cancellation rule.

class StdioClientTransport
@safe
openListen
(
Json message
)