McpStreamableHttpClient.withOAuthToken constructor
McpStreamableHttpClient.withOAuthToken(
- Uri endpoint,
- McpOAuthTokenGrant 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 authorized by a validated OAuth token grant.
Implementation
factory McpStreamableHttpClient.withOAuthToken(
Uri endpoint,
McpOAuthTokenGrant 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,
}) {
_validateOAuthTokenGrant(endpoint, grant);
final client = McpStreamableHttpClient.withBearerToken(
endpoint,
grant.accessToken,
httpClient: httpClient,
subscriptionHttpClientFactory: subscriptionHttpClientFactory,
headers: headers,
clientInfo: clientInfo,
clientCapabilities: clientCapabilities,
defaultProtocolVersion: defaultProtocolVersion,
requestTimeout: requestTimeout,
maxRequestBytes: maxRequestBytes,
maxResponseBytes: maxResponseBytes,
closeHttpClient: closeHttpClient,
);
client._authorizationExpiresAt = grant.expiresAt?.toUtc();
return client;
}