Skip to content

v0.15.0 - retry in mcp, and upgrade sse to native fastapi#3

Merged
nirvanatikku merged 2 commits intomainfrom
enhancement/retry-and-native-fastapi-sse
Mar 4, 2026
Merged

v0.15.0 - retry in mcp, and upgrade sse to native fastapi#3
nirvanatikku merged 2 commits intomainfrom
enhancement/retry-and-native-fastapi-sse

Conversation

@nirvanatikku
Copy link
Contributor

v0.15.0 — Native FastAPI SSE & RFC-0010 Retry MCP Tools

Added

  • RFC-0010 Retry Policy MCP Tools — 4 new MCP tools exposing retry policy management and failure recording to MCP clients:
    • openintent_set_retry_policy (admin) — Configure retry policy for an intent (strategy, max attempts, backoff delays, fallback agent)
    • openintent_get_retry_policy (read) — Retrieve the current retry policy for an intent
    • openintent_record_failure (write) — Record a failure event with RFC-0010 fields (agent_id, attempt_number, error_code, error_message, retry_scheduled_at)
    • openintent_get_failures (read) — Query failure history for an intent
  • build_retry_failure_tools() — New helper in the Python MCP bridge (openintent.mcp) that registers all 4 retry/failure tools for MCPToolExporter, with ISO 8601 datetime conversion and proper delegation to the existing sync/async client methods
  • MCP tool surface expanded from 66 to 70 tools; RBAC counts: reader=25, operator=43, admin=70

Changed

  • Native FastAPI SSE — Replaced sse-starlette third-party dependency with FastAPI's built-in EventSourceResponse and ServerSentEvent (available since FastAPI 0.135.0). All four SSE subscription endpoints now use native async generator pattern with ServerSentEvent objects. Keep-alive pings use SSE comment format per spec.

Removed

  • sse-starlette dependency — No longer required. Server extras now require fastapi>=0.135.0.

Updated

  • All version references updated to 0.15.0 across Python SDK, MCP server package, and changelog
  • FastAPI minimum version bumped from >=0.104.0 to >=0.135.0 in server extras
  • Documentation updated: MCP guide, cost-retry guide, MCP server README, mkdocs home page, announcement bar

Files Changed

MCP Server (TypeScript)

  • reference-implementation/mcp-server/src/tools.ts — 4 tool definitions + 4 dispatch handlers
  • reference-implementation/mcp-server/src/client.ts — 4 new HTTP client methods
  • reference-implementation/mcp-server/src/security.ts — 4 new RBAC tier entries
  • reference-implementation/mcp-server/README.md — Updated RBAC table and tool categories

Python SDK

  • reference-implementation/openintent/mcp.pybuild_retry_failure_tools() function

Protocol Server (already implemented)

  • server/routes.ts — Endpoints already existed (PUT/GET retry-policy, POST/GET failures)
  • shared/schema.ts — Schema already existed (intentRetryPolicies, intentFailures)
  • server/storage.ts — Storage methods already existed

Documentation

  • reference-implementation/CHANGELOG.md
  • reference-implementation/docs/changelog.md
  • reference-implementation/docs/guide/mcp.md
  • reference-implementation/docs/guide/cost-retry.md
  • reference-implementation/docs/overrides/home.html
  • reference-implementation/mkdocs.yml
  • client/src/pages/changelog.tsx
  • client/src/pages/docs.tsx

@nirvanatikku nirvanatikku merged commit 273e41d into main Mar 4, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant