McpClient class final
A live connection to one MCP server.
Constructors
- McpClient({required String serverName, required McpTransport transport, Duration requestTimeout = const Duration(seconds: 60)})
-
Creates an McpClient over
transport. The read loop starts immediately; call initialize before issuing tool requests.
Properties
-
closed
→ Future<
void> -
Completes when the connection dies, expectedly or not.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- requestTimeout → Duration
-
Default timeout for requests without an explicit one.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- serverName → String
-
The configured name of the server this client talks to.
final
- status ↔ McpClientStatus
-
Lifecycle state.
getter/setter pair
- transport → McpTransport
-
The message channel to the server.
final
Methods
-
callTool(
String tool, Map< String, dynamic> arguments, {Duration? timeout}) → Future<Map< String, dynamic> > -
Calls
toolwitharguments; the raw result map (content,isError,structuredContent, ...) is returned for the tool wrapper to interpret. -
close(
) → Future< void> - Closes the connection. Always safe to call.
-
initialize(
{Duration? timeout}) → Future< McpInitializeResult> -
Runs the
initialize/notifications/initializedhandshake. Throws McpRequestException on failure. -
listTools(
{Duration? timeout}) → Future< List< McpToolInfo> > -
Lists the server's tools, following
nextCursorpagination. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notify(
String method, Object? params) → void - Sends a notification (no response expected).
-
request(
String method, Object? params, {Duration? timeout}) → Future< Object?> -
Sends a request and awaits its result. Throws McpRequestException
on a server error response, on
timeout, or when the connection dies mid-flight. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited