NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev
MCP (Model Context Protocol) client for AI SDK Dart. Connect to MCP servers via Streamable HTTP or stdio, discover tools, and use them with any LLM provider.
Last release 4 days ago
04 Oct 2026
Ships fairly regularly
a new release about every 2 months
Nearly every release is documented
notes for 6 of 6 stable releases
Nothing withdrawn
no release was ever pulled
6 months old
6 releases · first in 2026
One column per month.
LanguageModelV4AbortSignal remains as a deprecated alias of AbortSignal for the whole 3.x line.
AI SDK Dart 3.0 is a coordinated major release across 17 packages, including four new packages.
AbortSignal reaches the live HTTP request in every built-in provider. A stream that ends early fails with a typed truncation error.responseMessages now contains only the messages that the current call generated. embedMany separates batch size from concurrency and validates the rows it gets back.ai_sdk_conversation: versioned, immutable conversation snapshots with a JSON persistence codec.ai_sdk_remote: Vercel AI UI-message stream transport for trusted backends.ai_sdk_json_schema: optional local JSON Schema validation (Draft 7 and 2020-12) for structured output.ai_sdk_telemetry: bounded OTLP/HTTP JSON metric export.Upgrade every ai_sdk package together. Custom embedding models must declare maxEmbeddingsPerCall and supportsParallelCalls. A decoder alone no longer means JSON Schema validation: use Schema.decoderOnly or ai_sdk_json_schema. LanguageModelV4AbortSignal remains as a deprecated alias of AbortSignal for the whole 3.x line.
Read the 2.x to 3.x migration guide before you upgrade. Each package's CHANGELOG lists its own changes.
All 17 packages are published on pub.dev. ai_sdk_realtime stays unpublished until it completes qualification.
Full Changelog: 2.0.0...3.0.0
AI SDK Dart 2.0 is a coordinated major release across all 13 packages.
AI SDK Dart 2.0 is a coordinated major release across all 13 packages.
Upgrade every ai_sdk package together. The obsolete V3 language-model contract, experimental API names, video surface, and old provider call fields were removed without compatibility shims.
Read the 2.0 migration guide before upgrading.
All 13 packages are published on pub.dev.
Full Changelog: 1.2.0...2.0.0
Coordinated 1.2.0 release across all 13 packages — now live on pub.dev. A v6 hardening pass that makes the AI SDK Dart port more complete, honest, and
Coordinated 1.2.0 release across all 13 packages — now live on pub.dev. A v6 hardening pass that makes the AI SDK Dart port more complete, honest, and tested.
Non-2xx provider responses now throw a typed AiApiCallError carrying the provider's message, type, code, statusCode, raw body, and an isRetryable flag — consistently across every provider. The AiSdkError hierarchy moved into ai_sdk_provider (re-exported by ai_sdk_dart, so the public surface is unchanged).
ai_sdk_openai_compatible base (new package)A shared OpenAI Chat Completions implementation now powers OpenAI / Azure / Groq / Mistral. All 8 providers support tool use + multimodal image input; Cohere & Ollama gained them natively.
Real Server-Sent-Events streaming transport (SseClientTransport) plus a plain request/response HttpClientTransport; web-safe — dart:io is isolated behind conditional imports, so the client runs on Flutter web.
19 prebuilt, themeable Material widgets plus hardened controllers (ObjectStreamController.submit, ChatController.isStreaming, streaming-error surfacing). A restrained Material 3 redesign — bubbleless assistant transcript, an AiMotion motion/haptics vocabulary, and a first-class reduced-motion path. Fixed a PressableScale crash-on-dispose under reduced motion.
onAbort now interrupts an in-flight streamText; stopWhen can extend the tool loop past maxSteps. Removed the unusable generateVideo / VideoModelV1 (no backing provider). OpenAI image generation no longer sends response_format to gpt-image-1.
1,057 tests (924 Dart + 133 Flutter), 99.9% line coverage (11 of 12 packages at 100%), enforced by a CI coverage gate.
ai_sdk_provider · ai_sdk_dart · ai_sdk_openai_compatible · ai_sdk_openai · ai_sdk_anthropic · ai_sdk_google · ai_sdk_azure · ai_sdk_cohere · ai_sdk_groq · ai_sdk_mistral · ai_sdk_ollama · ai_sdk_mcp · ai_sdk_flutter_ui
See each package's CHANGELOG.md for full details.
Full Changelog: 1.1.0...1.2.0
SseClientTransport and
HttpClientTransport. Use StreamableHttpClientTransport for remote MCP
servers.2025-06-18.
Deprecated HTTP+SSE servers that only speak 2024-11-05 are no longer a
supported target.StreamableHttpClientTransport speaks the Streamable HTTP transport against
a single MCP endpoint.POST, and the server may answer with
either JSON or SSE for that request.notifications/initialized, reuses MCP-Protocol-Version on later HTTP
requests, and starts the optional GET SSE listener for server-pushed
notifications.Mcp-Session-Id, the transport reuses it on later
POST / GET / DELETE requests, reconnects the optional listener with
Last-Event-ID after disconnects, and sends DELETE on close().notifications/cancelled notification
before the call fails locally.http.Client are supported. Injected clients
remain caller-owned; the transport closes only the client it creates.dart:io at the
top level. StdioMCPTransport (which spawns a process) now lives behind a
conditional import: the real dart:io implementation is used on native
platforms, and a stub that throws UnsupportedError is used on web.MCPTransport exposes a notifications stream for server-initiated
messages. notifications/resources/updated continue to drive
subscribeResource() listeners automatically.Replace remote transport construction like this:
final transport = StreamableHttpClientTransport(
url: Uri.parse('https://mcp.example.com/mcp'),
headers: {'Authorization': 'Bearer <token>'},
);
Notes:
/sse endpoint.headers, but avoid embedding
long-lived secrets inside distributed browser or mobile clients.http.Client, inject it and close it yourself after the
MCP client shuts down.Development environment setup: fix dependency conflict + add AGENTS.md by @codenameakshay in #1
Full Changelog: 1.0.0+1...1.1.0
ai_sdk_dart constraint to ^1.1.0.Full Changelog : https://github.com/codenameakshay/ai_sdk_dart/commits/1.0.0+1
Full Changelog: https://github.com/codenameakshay/ai_sdk_dart/commits/1.0.0+1
example/example.md with usage examples and links to runnable apps.First stable release. Depends on ai_sdk_dart 1.0.0.
First stable release. Depends on ai_sdk_dart 1.0.0.
MCPClient — manages a session with any MCP server via pluggable transport.SseClientTransport — HTTP SSE transport for remote MCP servers; supports custom headers and separate POST URL.StdioMCPTransport — stdio transport that spawns a local process and communicates via stdin/stdout.initialize() — MCP protocol 2024-11-05 handshake with idempotency guard.tools() — discovers available tools and returns a ToolSet compatible with generateText / streamText.callTool() — invokes a named tool with structured arguments; throws MCPException on server-side errors.MCPException — typed exception with message field.Your coding agent can read these notes before it upgrades. Set up the MCP server →