MCPClientConfig class

Configuration for MCP clients

Constructors

MCPClientConfig({required String name, required String version, ClientCapabilities? capabilities, String? transportType, String? transportCommand, List<String>? transportArgs, String? serverUrl, String? authToken, String? endpoint, Duration? timeout, Duration? sseReadTimeout, int? maxConcurrentRequests, bool? useHttp2, bool? terminateOnClose, Map<String, String>? headers, List<Root>? initialRoots, bool autoBridgeSampling = true, Future<Map<String, dynamic>> elicitationHandler(Map<String, dynamic> params)?, Future<List<Root>> listRootsHandler()?})
Creates a new MCP client configuration

Properties

authToken → String?
Authentication token for the transport
final
autoBridgeSampling → bool
When true (default) and capabilities is not supplied, the client is advertised with sampling: true and server-initiated sampling/createMessage requests are bridged to the host LLM (the default LLM client registered via MCPLlmManager). Set false to opt out — useful when no host LLM will be registered.
final
capabilities → ClientCapabilities?
Client capabilities
final
elicitationHandler → Future<Map<String, dynamic>> Function(Map<String, dynamic> params)?
Optional handler for server-initiated elicitation/create requests. When supplied (and capabilities is not), enables the elicitation capability. The handler receives the spec ElicitRequest.params map and must return {action, content?}.
final
endpoint → String?
Endpoint path for SSE/StreamableHttp (e.g., '/sse', '/mcp')
final
hashCode → int
The hash code for this object.
no setterinherited
headers → Map<String, String>?
Additional headers to send with requests
final
initialRoots → List<Root>?
Initial roots to register on this client before connecting. Implies ClientCapabilities.roots when capabilities is not supplied.
final
listRootsHandler → Future<List<Root>> Function()?
Optional override for server-initiated roots/list requests. When not supplied the client returns its locally added roots (initialRoots plus any FlutterMCP.addClientRoot calls).
final
maxConcurrentRequests → int?
Maximum number of concurrent requests
final
name → String
Name of the client
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
serverUrl → String?
Server URL for SSE/streamablehttp transport
final
sseReadTimeout → Duration?
SSE read timeout (longer for streaming)
final
terminateOnClose → bool?
Whether to terminate session on close
final
timeout → Duration?
Request timeout
final
transportArgs → List<String>?
Transport command arguments
final
transportCommand → String?
Transport command for stdio transport
final
transportType → String
Transport type to use (stdio, sse, streamablehttp)
final
useHttp2 → bool?
Whether to use HTTP/2 if available
final
version → String
Version of the client
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
Converts this configuration to JSON
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited