Commit Graph

  • d5b9155f14 chore(deps): bump requests from 2.32.5 to 2.33.0 in the uv group across 1 directory (#2350) main dependabot[bot] 2026-03-31 17:11:12 -04:00
  • 37891f42a4 Add basic OpenTelemetry tracing for client and server requests (#2381) Marcelo Trylesinski 2026-03-31 16:33:33 -04:00
  • 3ce0f76e6e Don't block the event loop on sync resource and prompt functions (#2380) Max Isbey 2026-03-31 13:43:56 -04:00
  • e6235d1667 Propagate contextvars.Context through anyio streams without modifying SessionMessage (#2298) Marcelo Trylesinski 2026-03-31 12:49:38 -04:00
  • 8b5ca8944a fix: ifemp round-trip + stale docstrings from linear-scan refactor feat/uri-template-rfc6570 feat/uri-template-linear-scan Max Isbey 2026-03-27 21:02:59 +00:00
  • f9aa92bd08 revert: remove frozenset coercion in ResourceSecurity.__post_init__ Max Isbey 2026-03-27 20:42:06 +00:00
  • d3a0936da6 docs: trim migration guide to actual v1.x breaking changes Max Isbey 2026-03-27 20:22:45 +00:00
  • cd19eaae38 docs: update migration guide and resources doc for matcher changes Max Isbey 2026-03-27 20:02:47 +00:00
  • 0eeafe7939 fix: anchor first template literal at position 0, not rightmost occurrence Max Isbey 2026-03-27 19:56:05 +00:00
  • ba784d3d08 docs: note AnyUrl pre-normalisation in get_resource docstring Max Isbey 2026-03-27 15:46:06 +00:00
  • ec63c200fc hardening: tighten limits, immutability, and drive-letter detection Max Isbey 2026-03-27 15:44:03 +00:00
  • 6e559915bf fix: raise ResourceSecurityError instead of falling through on rejection Max Isbey 2026-03-27 15:41:06 +00:00
  • 8fb3d6f296 fix: reject null bytes in ResourceSecurity.validate by default Max Isbey 2026-03-27 15:39:53 +00:00
  • 9595740445 fix: do not percent-decode query parameter names in match Max Isbey 2026-03-27 15:39:19 +00:00
  • 7629f6234e test: close coverage gaps in linear-scan error paths Max Isbey 2026-03-27 15:15:01 +00:00
  • ae122845d4 refactor: replace regex matcher with linear-time two-ended scan Max Isbey 2026-03-27 15:12:14 +00:00
  • 4294d087a7 chore(deps): bump the github-actions group across 1 directory with 7 updates dependabot/github_actions/github-actions-6ac1e3b8dd dependabot[bot] 2026-03-27 14:04:43 +00:00
  • fb2276b95f ci: remove claude-code-review workflow (#2359) Max Isbey 2026-03-27 14:02:41 +00:00
  • 3517a29c82 feat(server): restore dependencies parameter on MCPServer (#2358) Max Isbey 2026-03-27 13:42:15 +00:00
  • 19822fbbeb fix: reject {expr}{+var} adjacency to close ReDoS gap Max Isbey 2026-03-27 13:31:10 +00:00
  • c8712ff1eb docs: improve resources.md with spec link and concrete-URI examples Max Isbey 2026-03-27 13:18:43 +00:00
  • dd505ea8b7 docs: add missing type annotations to resources.md examples Max Isbey 2026-03-27 13:07:33 +00:00
  • ed84090006 fix: fall back to strict regex when path contains {#...} or literal # Max Isbey 2026-03-26 23:40:38 +00:00
  • 7c34c12e38 refactor: simplify explode split since regex guarantees leading separator Max Isbey 2026-03-26 23:32:28 +00:00
  • a8f488e2f5 fix: preserve empty list items in explode matching Max Isbey 2026-03-26 23:29:40 +00:00
  • dcfd67ac66 test: close coverage gaps in _parse_query and _split_query_tail fallbacks Max Isbey 2026-03-26 23:09:48 +00:00
  • 2bedd9d792 test: move new resource tests to module level per repo convention Max Isbey 2026-03-26 23:07:06 +00:00
  • 4a45f59b7a docs: fix stale docstrings and export DEFAULT_MAX_* constants Max Isbey 2026-03-26 23:00:24 +00:00
  • 1500ca3a45 fix: correct lenient query matching for +, fragments, and standalone {&var} Max Isbey 2026-03-26 22:59:38 +00:00
  • 7891fd9d63 test: close coverage gaps in lenient-query branch and test handlers Max Isbey 2026-03-26 22:55:10 +00:00
  • aed579c8a3 docs: address reviewer feedback on migration guide and resources doc Max Isbey 2026-03-26 22:41:25 +00:00
  • 2f7fd615ec fix: reject template patterns causing O(n²) regex backtracking Max Isbey 2026-03-26 22:38:04 +00:00
  • 60d12e10ee docs: clarify query leniency and fix exempt_params example Max Isbey 2026-03-26 22:21:32 +00:00
  • 9473442435 docs: trim migration guide to breaking changes only Max Isbey 2026-03-26 22:06:52 +00:00
  • 278e5e747e refactor: use lists instead of tuples for variable-length sequences Max Isbey 2026-03-26 21:59:04 +00:00
  • 80c79343e1 fix: preserve pct-triplets in reserved expansion; allow empty match captures Max Isbey 2026-03-26 21:47:43 +00:00
  • 99c9cb0642 fix: tighten parse-time validation and document matching limits Max Isbey 2026-03-26 21:38:07 +00:00
  • 93e742b624 feat: lenient query param matching for {?var} and {&var} Max Isbey 2026-03-26 21:29:48 +00:00
  • c1a1787286 refactor: remove post-decode structural checks from UriTemplate.match Max Isbey 2026-03-26 21:16:22 +00:00
  • 1987340163 fix: correct ; operator matching and expansion per RFC 6570 Max Isbey 2026-03-26 20:20:51 +00:00
  • 674783ff61 fix: decide template vs static purely on URI variables Max Isbey 2026-03-26 19:46:53 +00:00
  • c4f7db0746 feat: reject null bytes in safe_join path components Max Isbey 2026-03-26 18:43:39 +00:00
  • 3a786f34b4 test: add edge-case coverage for literal handling and anchoring Max Isbey 2026-03-26 18:35:29 +00:00
  • 3b8aaddf92 feat: add URI length guard to UriTemplate.match() Max Isbey 2026-03-26 18:30:22 +00:00
  • b278925f27 feat: add UriTemplate.is_template() static method Max Isbey 2026-03-26 18:26:12 +00:00
  • a463ed9f76 test: add adversarial security test cases for layered defense Max Isbey 2026-03-26 18:24:44 +00:00
  • 257504262c feat: reject duplicate variable names in URI templates Max Isbey 2026-03-26 17:54:28 +00:00
  • a5afb9892b docs: add resources guide covering templates, security, and low-level usage Max Isbey 2026-03-26 17:38:47 +00:00
  • 00a1336ee6 refactor: accept plain set for ResourceSecurity.exempt_params Max Isbey 2026-03-26 17:27:51 +00:00
  • 928698b3eb docs: add migration guide entry for resource template changes Max Isbey 2026-03-26 16:58:09 +00:00
  • 5cbbc70b18 feat: wire ResourceSecurity into MCPServer configuration Max Isbey 2026-03-26 16:54:32 +00:00
  • 0018eea38f feat: integrate UriTemplate into MCPServer resource templates Max Isbey 2026-03-26 16:40:14 +00:00
  • e5ecf50e64 feat: add filesystem path safety primitives Max Isbey 2026-03-26 15:16:42 +00:00
  • 5f5e72b87a feat: add RFC 6570 URI template utility with bidirectional support Max Isbey 2026-03-26 15:01:06 +00:00
  • 900a9e1de3 chore: update uv.lock with latest dependencies weekly-lockfile-update github-actions[bot] 2026-03-26 08:14:06 +00:00
  • 98f8ef295a Restrict httpx version to <1.0.0 (#2345) Marcelo Trylesinski 2026-03-25 23:29:13 +01:00
  • 94982a5b93 feat: add MCP_HIDE_INPUT_IN_ERRORS env var to redact payloads from validation errors feat/hide-input-in-errors Max Isbey 2026-03-25 16:16:02 +00:00
  • a41ef89311 fix(coverage): lax no cover on two matrix-entry-dependent except handlers maxisbey/max-156-flaky-convert-ssestreamablehttp-tests-to-httpxasgitransport Max Isbey 2026-03-25 15:38:41 +00:00
  • d065e9b4c0 fix(server): return -32602 for resource not found (SEP-2164) feat/sep-2164-resource-not-found-error-code Peter Alexander 2026-03-25 15:07:29 +00:00
  • 07c9531435 test: parse JSON instead of asserting exact whitespace in response body test feat/bearer-auth-provider Max Isbey 2026-03-25 14:07:09 +00:00
  • a9cf2faec4 test: ignore ANN in README code example linting enforce-type-annotations Max Isbey 2026-03-25 11:17:51 +00:00
  • 91a983fc4c chore: ignore ANN204 to allow __init__ without return type Max Isbey 2026-03-24 23:12:43 +00:00
  • cfde91dacd chore: exempt tests from ANN, enable mypy-init-return Max Isbey 2026-03-24 22:48:16 +00:00
  • 8b7399c060 chore: use AsyncIterator for lifespan annotations, sync README snippets Max Isbey 2026-03-24 22:15:42 +00:00
  • 5697d68e65 chore: enforce type annotations on all functions via ruff ANN rules Max Isbey 2026-03-20 16:01:24 +00:00
  • 54f02edde4 fix: propagate pre-endpoint errors in sse_client instead of deadlocking fix/sse-client-deadlock-447 Max Isbey 2026-03-24 22:16:15 +00:00
  • 6524782667 [v1.x] fix: handle ClosedResourceError when transport closes mid-request (#2334) v1.x Owen Devereaux 2026-03-24 18:24:47 -04:00
  • 7ba4fb881d ci: skip claude.yml when comment is '@claude review' (#2337) Felix Weinberger 2026-03-24 20:36:36 +00:00
  • c85501ac65 feat(auth): add BearerAuth for minimal bearer-token authentication Max Isbey 2026-03-24 13:46:08 +00:00
  • c54fe3b36a feat(mrtr): linear continuation-based handler — Option H mrtr-draft Max Isbey 2026-03-20 17:06:58 +00:00
  • 1acd0ce4fc refactor(mrtr): split experimental module into package Max Isbey 2026-03-20 16:50:01 +00:00
  • 4facab7115 examples(mrtr): add basic and multi-round lowlevel reference examples Max Isbey 2026-03-20 16:19:18 +00:00
  • 29cb1ba837 examples(mrtr): handler-shape comparison deck (SEP-2322) Max Isbey 2026-03-20 16:09:46 +00:00
  • 25fb05f416 feat(mrtr): add IncompleteResult types and client retry loop (SEP-2322) Max Isbey 2026-03-20 15:54:11 +00:00
  • 92c693bb73 fix: cancel in-flight handlers when transport closes in server.run() (#2306) Max Isbey 2026-03-20 13:37:32 +00:00
  • 7ba5ec0ebf test: drop type-ignores — use InMemoryTransport + assert-isinstance narrowing extract-dispatcher-from-base-session Max Isbey 2026-03-20 11:47:01 +00:00
  • 8c1556baa2 test: remove new pragmas — exercise send_response via sampling, assert for send_message narrow Max Isbey 2026-03-20 11:44:34 +00:00
  • 5ddf1dd404 Extract JSON-RPC wrapping into a Dispatcher component Max Isbey 2026-03-20 11:33:14 +00:00
  • 883d893097 test: rewrite cli.claude config tests to assert JSON output directly (#2311) Max Isbey 2026-03-19 15:16:34 +00:00
  • 5388bea53a docs: generate hierarchical per-module API reference pages (#2103) Jonathan Hefner 2026-03-18 13:15:17 -05:00
  • 20dd94632e feat(client): store InitializeResult as initialize_result (#2300) Max Isbey 2026-03-18 17:31:26 +00:00
  • 50a2183e46 chore: adopt run_uvicorn_in_thread from MAX-157, drop wait_for_server Max Isbey 2026-03-18 16:14:50 +00:00
  • a307bd7d61 test: deterministically cover message_router closed-stream handler Max Isbey 2026-03-18 16:04:48 +00:00
  • 6cea4c58da refactor: minimal targeted pragmas instead of blanket lax no cover Max Isbey 2026-03-18 13:20:01 +00:00
  • 4e6e9e79b5 fix(tests): 3.14 phantom branch arcs, Windows Proactor transport leak Max Isbey 2026-03-18 11:37:20 +00:00
  • 29bdbd708d fix(tests): add no-branch pragma for nested async with ClientSession Max Isbey 2026-03-17 13:13:42 +00:00
  • ad07d3e11a perf(tests): module-scope server fixtures, ASGI for context-aware tests Max Isbey 2026-03-13 11:21:16 +00:00
  • 3f81d3b9d5 chore: downgrade stale no-cover pragmas to lax no cover Max Isbey 2026-03-10 14:47:08 +00:00
  • e1237e7ad0 tests: eliminate port-allocation races in SSE/StreamableHTTP tests Max Isbey 2026-03-09 18:38:53 +00:00
  • 7e091ba7be fix: bound uvicorn graceful shutdown so thread.join doesn't abandon it mid-drain max-158-port-allocation Max Isbey 2026-03-18 13:41:10 +00:00
  • 36991d8bc1 fix: eliminate port allocation race in test_streamable_http fixtures Max Isbey 2026-03-13 11:14:12 +00:00
  • 67201a9bbd test: fix WS test port race; narrow to single smoke test covering both transport ends (#2267) Max Isbey 2026-03-18 15:48:30 +00:00
  • 7826ade12b test: convert test_integration.py to in-memory transport (fix flaky) (#2277) Max Isbey 2026-03-18 15:25:11 +00:00
  • ff50351f9e ci: run strict-no-cover in scripts/test to catch stale pragmas locally (#2305) Max Isbey 2026-03-17 19:53:39 +00:00
  • 2e9897e2b9 [v1.x] fix: handle non-UTF-8 bytes in stdio server stdin (#2303) Max Isbey 2026-03-17 18:40:43 +00:00
  • 1a2244f402 fix: handle non-UTF-8 bytes in stdio server stdin (#2302) Max Isbey 2026-03-17 18:40:39 +00:00
  • d95f3a6922 fix: remove scope registration check from authorize handler fix/remove-scope-registration-check Max Isbey 2026-03-17 11:51:31 +00:00
  • 75a80b6f07 refactor: connect-first stream lifecycle for sse and streamable_http (#2292) Max Isbey 2026-03-16 23:30:20 +00:00
  • abfb482246 refactor(examples): migrate all HTTP examples to streamable_http_app() (#2291) Max Isbey 2026-03-16 11:37:01 +00:00
  • e1fd62e0f3 fix: close all memory stream ends in client transport cleanup (#2266) Max Isbey 2026-03-13 14:43:54 +00:00