PromptsSupport mixin base
A mixin for MCP servers which support the prompts
capability.
Call addPrompt to add new prompts, and removePrompt to delete prompts, these are typically done in the initialize method, but may be done at any time.
Supports listChanged
notifications for changes to the prompts list.
- Superclass constraints
Properties
- clientCapabilities ↔ ClientCapabilities
-
The capabilities of the client.
getter/setter pairinherited
- clientInfo ↔ Implementation
-
The client implementation information provided during initialization.
getter/setter pairinherited
-
done
→ Future<
void> -
Completes after
shutdown
is called.no setterinherited - hashCode → int
-
The hash code for this object.
no setterinherited
- implementation → Implementation
-
The name, current version, and other info to give to the client.
finalinherited
-
initialized
→ Future<
void> -
Completes when this server has finished initialization and gotten the
final ack from the client.
no setterinherited
- instructions → String?
-
Instructions for how to use this server, which are given to the client.
finalinherited
- isActive → bool
-
Whether the connection with the peer is active.
no setterinherited
- name → String
-
The name of the associated server.
no setterinherited
- protocolVersion ↔ ProtocolVersion
-
The negotiated protocol version.
getter/setter pairinherited
- ready → bool
-
Whether this server is still active and has completed initialization.
no setterinherited
-
rootsListChanged
→ Stream<
RootsListChangedNotification> ? -
Emits an event any time the client notifies us of a change to the list of
roots it supports.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addPrompt(
Prompt prompt, FutureOr< GetPromptResult> impl(GetPromptRequest)) → void - Adds a prompt and notifies clients that the list has changed.
-
createMessage(
CreateMessageRequest request) → Future< CreateMessageResult> -
A request to prompt the LLM owned by the client with a message.
inherited
-
handleInitialized(
InitializedNotification notification) → void -
Called by the client after accepting our InitializeResult.
inherited
-
initialize(
InitializeRequest request) → FutureOr< InitializeResult> -
Mixins should register their methods in this method, as well as editing
the InitializeResult.capabilities as needed.
override
-
listRoots(
ListRootsRequest request) → Future< ListRootsResult> -
Lists all the root URIs from the client.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notifyProgress(
ProgressNotification notification) → void -
Notifies the peer of progress towards completing some request.
inherited
-
onProgress(
Request request) → Stream< ProgressNotification> -
A stream of progress notifications for a given
request
.inherited -
ping(
{Duration timeout = const Duration(seconds: 1)}) → Future< bool> -
Pings the peer, and returns whether or not it responded within
timeout
.inherited -
registerNotificationHandler<
T extends Notification?> (String name, void impl(T)) → void -
Registers a notification handler named
name
on this server.inherited -
registerRequestHandler<
T extends Request?, R extends Result?> (String name, FutureOr< R> impl(T)) → void -
Registers a handler for the method
name
on this server.inherited -
removePrompt(
String name) → void - Removes a prompt and notifies clients that the list has changed.
-
sendNotification(
String method, [Notification? notification]) → void -
Sends a notification to the peer.
inherited
-
sendRequest<
T extends Result?> (String methodName, [Request? request]) → Future< T> -
Sends
request
to the peer, and handles coercing the response to the typeT
.inherited -
shutdown(
) → Future< void> -
Handles cleanup of all streams and other resources on shutdown.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited