What's Changed
- nits to multi-model by @ignaciojimenezr in #1783
- orgs crashing by @ignaciojimenezr in #1764
- fix: 2 improvements across 2 files by @tomaioo in #1760
- Add stdio transport hardening and shared CLI transport flags by @chelojimenez in #1784
- Add MCP retry policy support and stabilize hosted inspector flows by @chelojimenez in #1786
- Add SDK-first MCP snapshot diffing, validation, and structured reporting by @chelojimenez in #1787
- Update mintlify auto update action by @prathmeshpatel in #1790
- Initial README copy edits by @prathmeshpatel in #1792
- Oops images by @prathmeshpatel in #1795
- Fix image reference typo in app-builder.mdx by @mintlify[bot] in #1796
- Align docs with README copy updates by @mintlify[bot] in #1794
- full screen display mode regressed by @ignaciojimenezr in #1800
- forgot to push nits :( by @ignaciojimenezr in #1802
- [codex] safe multi-repo delivery pipeline by @chelojimenez in #1801
- pip got regressed by @ignaciojimenezr in #1803
- ci: Railway inspector preview for backend-only PRs by @chelojimenez in #1804
- Patch 1760 and skip confirm state changes by @prathmeshpatel in #1785
- Replace GitHub icon with Star button showing star count by @prathmeshpatel in #1806
- Bump handlebars from 4.7.8 to 4.7.9 in /examples/evals/asana by @dependabot[bot] in #1808
- [codex] Use durable hosted OAuth callbacks by @chelojimenez in #1805
- Fix stale OAuth state after server reconnects by @chelojimenez in #1809
- Fix hosted reconnects to reuse stored OAuth before prompting for consent by @chelojimenez in #1810
- ui changes to playground by @ignaciojimenezr in #1811
- playground and empty screen nits by @ignaciojimenezr in #1814
- Invite in Sidebar by @ignaciojimenezr in #1789
- Test Previews by @chelojimenez in #1815
- Improve traces json editor by @ignaciojimenezr in #1812
- fix app builder shell sidebar collapse by @ignaciojimenezr in #1797
- Remove Slack last-test status badge from workspace settings by @chelojimenez in #1819
- oauth debugger now defaults to dcr by @ignaciojimenezr in #1818
- changing tabs in playground by @ignaciojimenezr in #1817
- tools in app builder weren't opening by @ignaciojimenezr in #1821
- threads were being cutdown on multi-model by @ignaciojimenezr in #1799
- Changing tabs playground could show a flash by @ignaciojimenezr in #1822
- endles scroll on large chats + right click on server card by @ignaciojimenezr in #1788
- Soundcheck by @chelojimenez in #1820
- Soundcheck, pt1 by @chelojimenez in #1825
- gate opus/sonnet 4.6 and gpt 5.4; add opus 4.7 (gated) by @ignaciojimenezr in #1826
- Add MCP server package for Cloudflare Workers deployment by @chelojimenez in #1798
- [codex] auto-deploy MCP worker to staging by @chelojimenez in #1829
- Soundcheck, pt2: readiness, dry-run, progress, failures, run button by @chelojimenez in #1828
- Upgrade the monorepo to MCP TypeScript SDK v2 and ship @mcpjam/sdk 1.0.0 by @chelojimenez in #1791
- Fix staging 502: add @cfworker/json-schema as direct dep by @chelojimenez in #1833
- ui changes for chat threads by @ignaciojimenezr in #1824
- MCP worker: per-PR preview URLs + exclude from inspector preview by @chelojimenez in #1831
- Fix staging 502 (round 2): inline SDK version in sentry.ts by @chelojimenez in #1834
- XAA by @chelojimenez in #1832
- Appbuilder connection by @ignaciojimenezr in #1830
- Rename eval export button label to Setup SDK by @Vu-John in #1838
- Add z-ai/glm-5.1 model by @Vu-John in #1839
- Soundcheck: editorial redesign for at-a-glance grok by @chelojimenez in #1840
- Soundcheck: surface MCP worker deploys by @chelojimenez in #1835
- PR preview: fail loud when backend branch lookup errors by @chelojimenez in #1843
- PR preview: bypass actions/checkout extraheader for backend ls-remote by @chelojimenez in #1845
- PR preview: use REST API for backend branch check by @chelojimenez in #1846
- Add MCP conformance testing UI and API endpoints by @chelojimenez in #1781
- Protect MCP worker with WorkOS AuthKit by @chelojimenez in #1844
- Extract shared design system package by @chelojimenez in #1847
- MCP worker: bind mcp-staging.mcpjam.com, wire prod custom domain by @chelojimenez in #1849
- Soundcheck: dogfood @mcpjam/design-system by @chelojimenez in #1850
- Soundcheck: fix invalid list semantics in JobStepper by @chelojimenez in #1851
- Rename Sandbox to Chatbox throughout codebase by @chelojimenez in #1841
- Persist AI SDK traces per chat turn by @chelojimenez in #1842
- Soundcheck: promote MCP worker to mcp.mcpjam.com by @chelojimenez in #1855
- Soundcheck: consolidate MCP production into the Run release tile by @chelojimenez in #1856
- Add usage insights dashboard with theme clustering and filtering by @chelojimenez in #1854
- Soundcheck: consolidate GITHUB_DISPATCH_PAT into GITHUB_PAT by @chelojimenez in #1858
- Add HTTP server doctor tooling and expand redaction by @chelojimenez in #1852
- Move Client Config from sidebar into Servers page button by @chelojimenez in #1861
- Restore three-up multimodel layout by @ignaciojimenezr in #1836
- Add getWorkspaces and getOrg MCP tools by @chelojimenez in #1864
- remove app builder sidebar bubble by @ignaciojimenezr in #1865
- Fix chatbox trace by @chelojimenez in #1867
- Pin Railway builder to Dockerfile for mcp-inspector service by @chelojimenez in #1863
- Simplify chatbox welcome dialog — remove consent checkbox by @Vu-John in #1871
- Chatbox nits by @chelojimenez in #1872
- XAA debugger: surface AS capability preflight and error guidance by @chelojimenez in #1869
- playground:improve thread and add hoststyles by @ignaciojimenezr in #1877
- Forward chatbox token + workspace to Convex /stream (shared chatbox) by @Vu-John in #1873
- traces hover buble was going out of the screen by @ignaciojimenezr in #1881
- Chatboxes map by @chelojimenez in #1882
- feat(evals): Playground compare defaults to Results + Actual loading spinner by @Vu-John in #1879
- [codex] use batch hosted auth by @chelojimenez in #1883
- feat(evals): eval playground UI improvements — shared header, key ordering, style polish by @Vu-John in #1880
- Executions tab by @ignaciojimenezr in #1884
- move host styles chat thread -> test case screen by @ignaciojimenezr in #1878
- Saving in progress test cases + actually deleting test cases from executions tab by @ignaciojimenezr in #1887
- server with oauth failing in dashboard by @ignaciojimenezr in #1876
- memory leak test case by @ignaciojimenezr in #1888
- playground for guests by @ignaciojimenezr in #1868
- gate shared chats & rename threads to sessions by @ignaciojimenezr in #1889
- forgot to change sessions tooltip by @ignaciojimenezr in #1892
- Playground promotion by @chelojimenez in #1893
- Fix html storing by @chelojimenez in #1895
- Fix hosted Convex runtime config by @chelojimenez in #1896
- urgent ui nits pre vig by @ignaciojimenezr in #1899
- Eval NUX: replace play overlay with View sample trace button by @vigneshgopalandd-maker in #1900
- Add OAuth connection tracing by @chelojimenez in #1903
- Oauth runner log panel by @chelojimenez in #1905
- Fix capability advertising for elicitation and reconnect checks by @chelojimenez in #1902
- Oauth logs by @chelojimenez in #1909
- Oauth nit by @chelojimenez in #1910
- Handle missing hosted OAuth refresh tokens by @chelojimenez in #1911
- Add conformance SDK and CLI reporting by @chelojimenez in #1912
- Fix reconnect toggles to avoid launching OAuth consent by @chelojimenez in #1913
- Add UI-backed whoami tool to MCP server by @chelojimenez in #1894
- only show oauth servers for debugger or xaa by @ignaciojimenezr in #1923
- Fix whoami UI gating by client capabilities by @chelojimenez in #1921
- new connect logic by @chelojimenez in #1915
- Preserve OAuth setup when retrying OAuth reconnect. by @ignaciojimenezr in #1922
- Group useChatSession props into ExecutionConfig and HostedRuntimeContext by @chelojimenez in #1925
- Refactor MCP whoami UI to use the design system by @chelojimenez in #1924
- Move host context to the preview surface by @chelojimenez in #1928
- Unify chatbox auth bootstrap by @chelojimenez in #1929
- Add robust show_servers MCP tool by @chelojimenez in #1935
- Refine hosted OAuth chat session flow by @chelojimenez in #1936
- [logging] inspector: add typed event foundation by @Vu-John in #1930
- [logging] inspector: consume backend InternalLogContext in authorize wrapper by @Vu-John in #1931
- [logging] inspector: convert chat ingest, tunnels, widgets to typed events by @Vu-John in #1932
- [logging] inspector: convert second-wave hosted routes to typed events by @Vu-John in #1933
- [logging] inspector: add deprecation guards, LOGGING.md, and ESLint enforcement by @Vu-John in #1934
- Add clickable server primitive inspection to show servers by @chelojimenez in #1937
- Refactor host styles into extensible registry system by @chelojimenez in #1938
- Add hosted OAuth token reveal to server details by @chelojimenez in #1939
- [codex] Improve MCPJam model limit messaging by @chelojimenez in #1941
- Update quota error copy and retry timing by @chelojimenez in #1943
- Cli inspector by @chelojimenez in #1944
- Add OAuth credential file support for agent workflows by @chelojimenez in #1945
- Add CLI update notifier by @chelojimenez in #1946
- Update reconnect indicator in server cards by @chelojimenez in #1948
- Fix responsive host navbar and remove display badge by @chelojimenez in #1949
- Add quiet reporter and JSON input ergonomics by @chelojimenez in #1947
- Add skip_verify to Soundcheck release dispatch by @chelojimenez in #1953
- Add privacy-safe telemetry to the CLI by @chelojimenez in #1951
- Fix auth code by @chelojimenez in #1954
- Fix missing cfworker schema dependency by @chelojimenez in #1955
- Remove client config feature gate by @chelojimenez in #1952
New Contributors
- @tomaioo made their first contribution in #1760
- @dependabot[bot] made their first contribution in #1808
- @Vu-John made their first contribution in #1838
- @vigneshgopalandd-maker made their first contribution in #1900
Full Changelog: v2.2.0...v2.4.0