McpStreamableHttpClient.withAuthGrant constructor
McpStreamableHttpClient.withAuthGrant(
- Uri endpoint,
- ConnectanumHttpAuthGrant grant, {
- HttpClient? httpClient,
- McpHttpClientFactory? subscriptionHttpClientFactory,
- Map<
String, String> headers = const <String, String>{}, - McpJsonMap? clientInfo,
- McpJsonMap clientCapabilities = const <String, Object?>{},
- String defaultProtocolVersion = latestSessionProtocolVersion,
- Duration requestTimeout = defaultRequestTimeout,
- int maxRequestBytes = defaultMaxRequestBytes,
- int maxResponseBytes = defaultMaxResponseBytes,
- bool closeHttpClient = false,
Creates a client for MCP HTTP endpoints using an HTTP auth bridge grant.
The grant's issuing auth endpoint must share endpoint's HTTP origin.
Implementation
factory McpStreamableHttpClient.withAuthGrant(
Uri endpoint,
ConnectanumHttpAuthGrant grant, {
HttpClient? httpClient,
McpHttpClientFactory? subscriptionHttpClientFactory,
Map<String, String> headers = const <String, String>{},
McpJsonMap? clientInfo,
McpJsonMap clientCapabilities = const <String, Object?>{},
String defaultProtocolVersion = latestSessionProtocolVersion,
Duration requestTimeout = defaultRequestTimeout,
int maxRequestBytes = defaultMaxRequestBytes,
int maxResponseBytes = defaultMaxResponseBytes,
bool closeHttpClient = false,
}) {
final client = McpStreamableHttpClient(
endpoint,
httpClient: httpClient,
subscriptionHttpClientFactory: subscriptionHttpClientFactory,
headers: _headersWithAuthGrant(endpoint, headers, grant),
clientInfo: clientInfo,
clientCapabilities: clientCapabilities,
defaultProtocolVersion: defaultProtocolVersion,
requestTimeout: requestTimeout,
maxRequestBytes: maxRequestBytes,
maxResponseBytes: maxResponseBytes,
closeHttpClient: closeHttpClient,
);
client._authorizationExpiresAt = grant.accessTokenExpiresAt?.toUtc();
return client;
}