FlutterDocsMcpServer class base
An MCP server for Flutter/Dart API documentation.
The server connects over the stdio transport and provides tools and resource templates for navigating and fetching Flutter/Dart API documentation.
Constructors
-
FlutterDocsMcpServer.fromChannel(StreamChannel<
String> channel, DocDatabase db) - Constructs a FlutterDocsMcpServer with the given stdio channel and documentation database.
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
shutdownis 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<
InitializedNotification?> -
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
- loggingLevel ↔ LoggingLevel
-
The current logging level, defaults to
LoggingLevel.warning.getter/setter pairinherited - 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
- resourceUpdateThrottleDelay → Duration
-
At most, updates for the same resource or list of resources will only be
sent once per this Duration.
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
-
addResource(
Resource resource, FutureOr< ReadResourceResult> impl(ReadResourceRequest)) → void -
Register
resourceto callimplwhen invoked.inherited -
addResourceTemplate(
ResourceTemplate template, ReadResourceHandler handler) → void -
Adds the
ResourceTemplatetemplatewithhandler.inherited -
callTool(
CallToolRequest request) → Future< CallToolResult> -
Invoked when one of the registered tools is called.
inherited
-
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 -
handleSetLevel(
SetLevelRequest request) → FutureOr< EmptyResult> -
Handle a client request to change the logging level.
inherited
-
initialize(
InitializeRequest request) → FutureOr< InitializeResult> -
Mixins should register their methods in this method, as well as editing
the
InitializeResult.capabilitiesas needed.inherited -
listResources(
ListResourcesRequest? request) → FutureOr< ListResourcesResult> -
Lists all the resources currently available.
inherited
-
listResourceTemplates(
[ListResourceTemplatesRequest? request]) → FutureOr< ListResourceTemplatesResult> -
Lists all the
ResourceTemplates currently available.inherited -
listRoots(
[ListRootsRequest? request]) → Future< ListRootsResult> -
Lists all the root URIs from the client.
inherited
-
listTools(
[ListToolsRequest? request]) → FutureOr< ListToolsResult> -
Returns the list of supported tools for this server.
inherited
-
log(
LoggingLevel level, Object data, {String? logger, Meta? meta}) → void -
Sends a
LoggingMessageNotificationto the client, if theloggingLevelis <=level.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), PingRequest? request}) → Future< bool> -
Pings the peer, and returns whether or not it responded within
timeout.inherited -
readResource(
ReadResourceRequest request) → FutureOr< ReadResourceResult> -
Reads the resource at
request.uri.inherited -
registerNotificationHandler<
T extends Notification?> (String name, void impl(T)) → void -
Registers a notification handler named
nameon this server.inherited -
registerRequestHandler<
T extends Request?, R extends Result?> (String name, FutureOr< R> impl(T)) → void -
Registers a handler for the method
nameon this server.inherited -
registerTool(
Tool tool, FutureOr< CallToolResult> impl(CallToolRequest), {bool validateArguments = true}) → void -
Register
toolto callimplwhen invoked.inherited -
removeResource(
String uri) → void -
Removes a
Resourcebyuri.inherited -
sendNotification(
String method, [Notification? notification]) → void -
Sends a notification to the peer.
inherited
-
sendRequest<
T extends Result?> (String methodName, [Request? request]) → Future< T> -
Sends
requestto 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
-
subscribeResource(
SubscribeRequest request) → FutureOr< EmptyResult> -
Subscribes the client to the resource at
request.uri.inherited -
toString(
) → String -
A string representation of this object.
inherited
-
unregisterTool(
String name) → void -
Un-registers a
Toolbyname.inherited -
unsubscribeResource(
UnsubscribeRequest request) → Future< EmptyResult> -
Unsubscribes the client to the resource at
request.uri.inherited -
updateResource(
Resource resource, {FutureOr< ReadResourceResult> impl(ReadResourceRequest)?}) → void -
Notifies the client that
resourcehas been updated.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited