You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Inbound MCP server now negotiates protocolVersion per MCP 2025-06-18: echoes
the client's requested version when supported, falls back to our latest.
Previously hardcoded to the oldest spec version (2024-11-05).
- withMcpOauthRefreshLock now takes a Postgres advisory transaction lock in
addition to the in-process Promise chain, so concurrent processes (multi-task
ECS) serialize on a per-OAuth-row basis. Previously a refresh race across
processes could rotate a token under another process's feet and force re-auth.
- categorizeError dispatches on McpOauthAuthorizationRequiredError /
UnauthorizedError / McpConnectionError first, only falling back to substring
matching for SDK / third-party errors. Adds 502 for connection failures and
503 for cooldown. Tests cover all four typed cases.
- discoverTools no longer pretends to handle deferred-side-effect rejections
via a dead allSettled().catch() — each side-effect already self-logs; we just
swallow per-promise to silence unhandled-rejection warnings.
0 commit comments