Skip to content

v3.1.1

Choose a tag to compare

@github-actions github-actions released this 24 Aug 05:03
· 14 commits to main since this release

Changelog - v3.1.1

All notable changes to the law-scrapper-mcp project for version v3.1.1 will be documented in this file.

The format is based on Keep a Changelog 1.1.0,
and this project adheres to Semantic Versioning 2.0.0.

[v3.1.1] - 2026-08-24

Added

  • Configurable graceful shutdown windowLAW_MCP_SHUTDOWN_GRACE (default 15s) reaches uvicorn as timeout_graceful_shutdown. The HTTP branch builds its own uvicorn.Server on the SDK's public streamable_http_app(), enabling clean teardown in containerized deployments with stop_grace_period: 30s in Docker Compose.
  • Upstream state in /health — The health endpoint response carries an upstream object with circuit_state and failure_count once the lifespan has started (circuit_state is unknown and failure_count is omitted before startup or after teardown). The endpoint consistently returns HTTP 200 while the process is alive.

Changed

  • Document conversion moved off the event loophtml_to_markdown, pdf_to_text, and index_sections run through asyncio.to_thread, keeping /health and concurrent requests responsive during large act processing.
  • Pre- and post-conversion size limits — Content exceeding LAW_MCP_DOC_STORE_MAX_SIZE_BYTES is refused before conversion with an error citing the source PDF URL, and re-verified post-conversion to guard against uncompressed text expansion. Refusing oversized documents prevents silent mid-clause truncation.
  • get_act_details(load_content=True) error handling — Calls attempting to load oversized acts return is_error=true with the refusal details and source URL instead of reporting successful loading of truncated text. Metadata for oversized acts remains accessible via get_act_details without load_content.