Skip to content

Conversation

@gspencergoog
Copy link
Contributor

Description

This updates the dart_mcp package to the latest MCP spec, 2025-06-18.

New Features

  • Elicitation: A new elicitation/create request allows the server to ask the client for structured information from the user. This is useful for scenarios where a tool needs more information to proceed. The client can respond with the requested information, or the user can accept, reject, or cancel the request.

  • Structured Tool Output: Tools can now declare an outputSchema, and the callTool result can include structuredContent that conforms to this schema. This allows for more robust and predictable tool interactions.

  • Resource Links: A new ResourceLink content type can be returned from tools, allowing them to provide links to resources that may not be available through the resources/list request.

API Improvements

  • Titles for UI: Many objects in the API now have an optional title field. This provides a human-readable name that can be used in user interfaces, separate from the programmatic name. This has been added to Implementation, Prompt, PromptArgument, Resource, ResourceTemplate, and Tool.

  • Completion Context: The completions/complete request now accepts a context object, which can include previously resolved arguments from a URI template or prompt. This allows for more context-aware completions.

  • Metadata: A _meta field has been added to many objects to allow for passing arbitrary metadata with requests and responses.

  • Last Modified Annotation: A lastModified timestamp can now be included in Annotations to indicate when the data was last updated.

Other Changes

  • ResourceReference has been renamed to ResourceTemplateReference for clarity. The old name is preserved as a deprecated typedef.
  • The agreed-upon version of the protocol is respected by both the client and server.

Tests

  • New tests have been added to cover the new features and API changes.

@github-actions
Copy link

github-actions bot commented Jun 25, 2025

PR Health

Changelog Entry ✔️
Package Changed Files

Changes to files need to be accounted for in their respective changelogs.

@gspencergoog gspencergoog changed the title Add new MFC spec version Update to new MCP spec version Jun 25, 2025
Copy link
Contributor

@jakemac53 jakemac53 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@gspencergoog gspencergoog merged commit 0b22b67 into dart-lang:main Jun 27, 2025
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants