Auto-set server.transport in Transport#initialize

## Motivation and Context

Transport subclasses (StreamableHTTPTransport, StdioTransport) already
receive the server in their constructor, but users must manually call
`server.transport = transport` after creating a transport instance.
This is boilerplate that can be eliminated by setting the connection
automatically in `Transport#initialize`.

## How Has This Been Tested?

All existing tests pass. Redundant `server.transport = transport` lines
were removed from tests, examples, README.md, and conformance server.

## Breaking Changes

None. Existing code that manually sets `server.transport = transport`
continues to work (idempotent assignment).
This commit is contained in:
Koichi ITO 2026-04-08 22:25:50 +09:00
commit de38804ed7

View file

@ -7,6 +7,7 @@ module MCP
# Initialize the transport with the server instance
def initialize(server)
@server = server
server.transport = self
end
# Send a response to the client