Skip to content

Latest commit

 

History

History
130 lines (94 loc) · 4.71 KB

File metadata and controls

130 lines (94 loc) · 4.71 KB

Changelog

All notable changes to the Raku MCP SDK are documented in this file.

[0.32.0] - 2026-01-29

Added

  • End-to-end integration test over stdio (t/17-integration-stdio.rakutest): spawns MCP server subprocess, tests full protocol lifecycle

Fixed

  • Fez publish in release workflow: use jq instead of raku -MJSON::Fast for config patching (JSON::Fast not in default lib path on CI runners)

[0.31.0] - 2026-01-29

Added

  • Fuzz testing for JSON-RPC parsing (t/16-fuzz-jsonrpc.rakutest): invalid JSON, type confusion, adversarial values, 100 randomized payloads
  • Stress tests for concurrent operations (make stress)
  • Project governance: SECURITY.md, CODE_OF_CONDUCT.md, issue/PR templates, README badges
  • ARCHITECTURE.md prose walkthrough of module structure, data flow, and concurrency model
  • Expanded perldoc on all 15 public API modules
  • CHANGELOG.md

Fixed

  • Fez publish in release workflow: inject Fez::Util::Curl requestor into fez config when missing

[0.29.0] - 2026-01-29

Added

  • Performance benchmarks: JSON-RPC parsing/serialization throughput, dispatch latency, concurrent scaling (make benchmark)
  • Configurable scheme on SSE transport (no longer hardcoded to HTTP)

Fixed

  • Race conditions in Client %!pending-requests (added $!request-lock)
  • Race conditions in Server %!in-flight-requests and %!tasks (added $!flight-lock, $!task-lock)
  • Flaky SSE endpoint test replaced start { react { whenever } } with synchronous .tap()
  • Handler exceptions sanitized before sending to clients (no longer leaks internal details)
  • PKCE verifier cleared from memory immediately after token exchange (single-use per RFC 7636)
  • Bumped Rakudo from 2024.01 to 2024.12 in CI and release workflows

Changed

  • CI now includes coverage job with 70% threshold
  • README rewritten quality section as implemented features rather than task list

[0.28.0] - 2026-01-29

Added

  • Icons and title metadata on Tool, Resource, Prompt, ResourceTemplate, and Implementation (SEP-973)
  • Expanded test coverage for progress tracking, error edge cases, and concurrent operations
  • IconDefinition type with src, mimeType, and sizes fields
  • .title() and .icon() builder methods on all primitive builders

Changed

  • Gap analysis and status docs updated to reflect full specification coverage

[0.27.0] - 2026-01-28

Added

  • Legacy SSE transport for backwards compatibility with MCP spec 2024-11-05
  • Enterprise IdP policy controls (SEP-990)
  • OAuth client credentials for machine-to-machine authentication (SEP-1046)
  • Dynamic client registration for OAuth

Changed

  • Documentation cleanup: corrected completeness claims, added SSE references

[0.26.0] - 2025-12-15

Added

  • Progress token support with $*MCP-PROGRESS-TOKEN dynamic variable
  • Client-side progress Supply for typed Progress objects
  • Logging level setting via logging/setLevel and client set-log-level
  • Protocol version negotiation across 2024-11-05, 2025-03-26, and 2025-11-25

[0.25.0] - 2025-12-01

Added

  • Tool name validation per SEP-986 (1-64 chars, [a-zA-Z0-9_-])
  • Resource templates with URI template pattern matching and builder API
  • Prompt and resource list-changed notifications

[0.24.0] - 2025-11-15

Added

  • Extensions framework with capability negotiation and method dispatch
  • Extension registration, experimental capabilities advertising

[0.23.0] - 2025-11-01

Added

  • Sampling with tools (SEP-1577): tools, toolChoice, includeContext in createMessage
  • Tasks framework for long-running async tool execution with status polling and cancellation

[0.22.0] - 2025-10-15

Added

  • OAuth 2.1 authorization: PKCE, token management, server validation, metadata discovery

[0.21.0] - 2025-10-01

Added

  • Tool output schemas with outputSchema and structuredContent for structured results
  • Completion/autocomplete support with prompt and resource completers
  • Elicitation support (form and URL modes) with handler callbacks

[0.20.0] - 2025-09-15

Added

  • Streamable HTTP transport with session management, SSE streaming, and resumption
  • Roots support: client roots configuration, server list-roots, set-roots
  • Resource subscriptions: subscribe, unsubscribe, update notifications

[0.19.0] - 2025-09-01

Added

  • Request cancellation with notifications/cancelled
  • Pagination support for all list endpoints (tools, resources, prompts)
  • Tool and resource annotations with builder API

Changed

  • Updated to MCP protocol version 2025-11-25

[0.1.0] - 2025-07-01

Added

  • Initial implementation
  • JSON-RPC 2.0 message handling
  • Stdio transport
  • Tools, Resources, Prompts with builder API
  • Server and Client initialization
  • MCP protocol types and capabilities