Liking cljdoc? Tell your friends :D

Changelog

0.1.4 (2026-11-12)

Features

  • :allow-http? lets the OAuth client use plain-http authorization servers (#128) (a45d1c0)
  • bound finished tasks with :max-finished, and reap on reads (#125) (aa43d24)
  • cap initialize-era HTTP sessions per authenticated subject (#127) (dd5a4b2)
  • settable per-request progress and log caps (#130) (42ca8aa)
  • the OAuth client renews an expired token with its refresh token (#129) (2d2af54)

Bug Fixes

  • requestState and input answers have one shape on every path (#124) (46dfd91)

0.1.3 (2026-11-12)

Features

  • cancel stdio requests in flight after :drain-timeout-ms once stdin closes (#113) (95e10ec)

Bug Fixes

  • a malformed percent-encoded resource URI is not found, not an internal error (#117) (f909c5b)
  • a second initialize drops the replaced session's listeners (#120) (fb35f05)
  • advertise list changes for kinds a :list-changed server starts without (#107) (599e9f0)
  • answer a request whose handler throws an Error or whose result cannot be written (#106) (6d1d900)
  • destroy a bb task's processes when its tool call is cancelled (#109) (d312cee)
  • evict idle initialize-era HTTP sessions and cap their number (#78) (52b5c7b)
  • JWKS fetches once at a time, drops removed keys, and typ can be required (#111) (8abcf14)
  • let a cancel abort an HTTP client request waiting on a JSON response (#115) (3dfe70d)
  • part/proxy lists by capability, forwards progress, takes timeouts (#110) (2441d63)
  • part/serve! closes its parts when the process is signalled (#112) (e6abfb1)
  • pass bb task tool args when the server keywordizes arguments (#74) (3ad6053)
  • proxy resyncs run one at a time per backend and keep names unique (#122) (75f8a92)
  • register an HTTP request as running before its work starts (#80) (77e414f)
  • release a task's thread when its TTL passes (#114) (6581711)
  • renew an initialize-era HTTP session the server no longer knows (#79) (4e4e26d)
  • stop leaking a thread per HTTP request (#77) (22e23df)
  • the HTTP client transport forgets a request's answered id when it is done (#119) (acd2cff)
  • the OAuth client requires advertised PKCE support and HTTPS endpoints (#116) (81e18a8)
  • validate and send tool results with keyword keys as their JSON form (#108) (7031a2a)

0.1.2 (2026-11-06)

Features

  • a Clojars MCP server example (#65) (73df4bf)
  • keyword schemas and keyword tool arguments (#68) (c41347d)
  • presa.part and presa.bb, servers composed from parts (#72) (ab05c87)

0.1.1 (2026-11-04)

Bug Fixes

  • let the lint allow GitHub's co-author trailer for bot pull requests (#62) (13d0612)

0.1.0 (2026-11-04)

Features

  • a complete notebook example with a REPL walkthrough (closes #49) (#52) (25a55a5)
  • cancel 2026-07-28 HTTP requests from a posted cancel within the caller's subject (a211b75)
  • cancel stateless HTTP requests from a posted notifications/cancelled (closes #16) (04105b4)
  • change a running server's tools, resources and prompts (fcfec4b)
  • change a running server's tools, resources and prompts (closes #9) (4c9f7ac)
  • CI for tests, conventions and conformance lanes (9c02083)
  • client caching from ttlMs and cacheScope (53c7539)
  • client caching from ttlMs and cacheScope (closes #12) (e8c329f)
  • client conformance lanes (058d285)
  • client conformance leg and its CI lane (closes #5) (f9ee10b)
  • client with in-process and stdio transports (0e3ef80)
  • conformance fixture and runner script (bb4eaef)
  • DPoP for the OAuth client (closes #42) (#54) (f0c428b)
  • forward backend logs and initialize-era input through the proxy (closes #45) (#51) (f5b1b04)
  • forward cancellation through the proxy (closes #59) (#60) (2e86ec3)
  • full JSON Schema 2020-12 validation as an optional dependency (4dbe7bd)
  • full JSON Schema 2020-12 validation as an optional dependency (closes #13) (cdb458c)
  • GET event stream for initialize-era HTTP sessions (2bf4279)
  • ignore notifications with malformed _meta, and cancellations with malformed params (96db6fe)
  • initialize-era notifications and conformance lanes for them (1f65c30)
  • instrumentation events from presa.server (826bd2d)
  • instrumentation hooks (closes #17) (2748f08)
  • JWT-bearer and enterprise-managed grants in the OAuth client (closes #43) (#55) (627233d)
  • limits on message size, open streams and notifications (f36c25f)
  • limits on message size, open streams and notifications (closes #10) (8bad0fd)
  • log messages from handlers with per-request and per-session levels (57fbd23)
  • multi round-trip requests with signed request state (c7be236)
  • OAuth 2.1 client flows for presa.client (2a6b9ee)
  • OAuth 2.1 client flows for presa.client (closes #8) (d759f9b)
  • OAuth 2.1 resource server for the HTTP transport (63d8dbe)
  • OAuth 2.1 resource server for the HTTP transport (closes #7) (8776f40)
  • progress notifications and cancellation over stdio (717addc)
  • project skeleton with protocol revisions and JSON-RPC framing (052f263)
  • proxy that aggregates several MCP servers (b03eed0)
  • proxy that aggregates several MCP servers (closes #18) (90081b0)
  • requests from initialize-era servers to clients (cdec364)
  • resources, prompts, completion, pagination and caching hints (f4d1b03)
  • standalone event stream for initialize-era HTTP sessions (closes #11) (181fd7c)
  • stdio tools server with an initialize opt-in (412d93f)
  • stdio tools server with an initialize opt-in (152f75c)
  • Streamable HTTP server and client transport (3ef4221)
  • subscriptions/listen (8e25e83)
  • task status notifications on subscriptions/listen (#48) (60afc14)
  • Tasks extension (6044ac5)
  • Tasks extension (closes #6) (0c18c7c)
  • validate _meta on notifications (closes #15) (670de30)
  • validate tool arguments and structured output against their schemas (4a2c9e2)

Bug Fixes

  • apply :required-scopes to completion and resource subscriptions (#58) (4a9f145)
  • call a listen callback before delivering the acknowledgement (98aba8e)
  • follow the 2026-07-28 wire rules for meta, ping and errors (e3c4eca)
  • hide tools whose schemas are not objects from initialize-era clients (closes #14) (2204dc2)
  • hide tools without object schemas from initialize-era clients (359df87)
  • lint the pull request's own commits, not GitHub's merge commit (46fcae0)
  • omit empty params on initialize-era list notifications, and test them with an initialize-era server (378b021)
  • open the session stream before a request sent after initialized (#53) (96ed12d)
  • pre-release pass (JWT exp, client version), docs, tests and badges (#56) (623bc57)
  • register a subscription listener before acknowledging it (63d1f61)
  • skip merge commits in bb lint (c62c203)

Can you improve this documentation?Edit on GitHub

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
←Move to previous article
→Move to next article
Ctrl+/Jump to the search field
× close