connect method
Future<void>
connect(
- ClientTransport transport, {
- ProtocolEra era = ProtocolEra.auto,
- @Deprecated('Use era: ProtocolEra.modern (true) or ProtocolEra.legacy (false).') bool? statelessMode,
override
Connect the client to a transport.
era picks the revision family:
- ProtocolEra.auto (default): probe with
server/discover(waiting eraProbeTimeout); a modern answer selects 2026-07-28, anything else theinitializehandshake. - ProtocolEra.modern: 2026-07-28 — no handshake; every request carries
its
_meta(protocol version, client info, capabilities) and, over HTTP,MCP-Protocol-Version: 2026-07-28. Server capabilities come from discover. - ProtocolEra.legacy: the
initializehandshake (2025-11-25 and earlier).
statelessMode is the 2.x form: true is ProtocolEra.modern,
false is ProtocolEra.legacy. Pass it or era, not both.
onConnect fires once the connection is ready.
Implementation
@override
Future<void> connect(
ClientTransport transport, {
ProtocolEra era = ProtocolEra.auto,
@Deprecated(
'Use era: ProtocolEra.modern (true) or ProtocolEra.legacy (false).',
)
bool? statelessMode,
}) =>
// ignore: deprecated_member_use_from_same_package
inner.connect(transport, era: era, statelessMode: statelessMode);