Reported issues for uk-legislation-mcp-server
Pod holds 14 of 14 GitHub reports that passed its relevance review. This can include external user reports, maintainer-confirmed bugs, and concrete feature gaps. Treat them as evidence to inspect, not a count of distinct defects.
Back to uk-legislation-mcp-server.
Most discussed
bug(uklaw_get_amendments): direction affecting with a counterpart always fails with filter_refused
Server version
0.1.0
mcp-ts-core version
0.13.8
Description
uklaw_get_amendments with direction: "affecting" and a counterpart always fails with filter_refused. The server builds /changes/affecting/{item}/affected/{counterpart}, and legislation.gov.uk only answers the affected-first order.
Steps to reproduce
uklaw_get_amendments{"item":"ukpga/2025/18","direction":"affecting","counterpart":"ukpga/2018/12"}
Actual behavior
filter_refused:…
Read the thread · 2026-09-26 · closed · 2 comments
bug(uklaw_get_amendments): draft ISBN items always fail with filter_refused
Server version
0.1.0
mcp-ts-core version
0.13.8
Description
uklaw_get_amendments sends draft instruments (ukdsi, sdsi, nidsr, numbered by ISBN) to legislation.gov.uk's changes feed. The feed doesn't index draft types at all, so every such call fails with filter_refused. The recovery hint points at checking the item, but the item is valid: /ukdsi/2026/9780348287233/data.xml returns 200.
Steps to reproduce
uklaw_get_amendments…
Read the thread · 2026-09-26 · closed · 2 comments
feat(uklaw_get_amendments): lower the default limit; a default page runs ~120 KB
Use case
uklaw_get_amendments defaults to limit 50. For a heavily amended Act, one default page is large: { "item": "ukpga/2018/12" } returns 119,257 B (about 30k tokens), and limit 100 on ukpga/1955/19 returns 232,461 B. A caller that takes the default spends a large share of its context on the first page before it knows whether it needs more.
Proposed behavior
Lower the default limit to 20 and keep the maximum. The cursor and the truncation disclosure already let a…
Read the thread · 2026-09-26 · closed · 2 comments
feat(uklaw_track_changes): show read progress in item-log mode on older windows
Use case
In item-log mode, uklaw_track_changes reads an item's Publication Log newest-first. For a heavily amended Act and a window months back, each call returns 0 events with has_more: true and an empty days[], so the caller can't tell how far back the read has reached or how many calls remain.
Repro: { "start_date": "2025-06-01", "end_date": "2025-06-30", "item": "ukpga/2018/12" } took 3 calls (12 requests, pages 1–12 of a 1,330-event log) and returned no events.
Proposed…
Read the thread · 2026-09-26 · open · 2 comments
bug(uklaw_track_changes): day walk spends its request budget on future days
Server version
0.1.0
mcp-ts-core version
0.13.8
Runtime
Node.js
Runtime version
Node 26.5.0
Transport
HTTP (Streamable HTTP)
Description
The uklaw_track_changes day walk starts at end_date even when that date is in the future, so it spends its four-request budget on days that can't have events. A window that ends in the future returns nothing with has_more: true, and the notice blames the filters. A window entirely in the future costs 8 empty calls to…
Read the thread · 2026-09-26 · closed · 2 comments
bug(uklaw_get_amendments): provision-scan continuation page says nothing matched
Server version
0.1.0
mcp-ts-core version
0.13.8
Runtime
Node.js
Runtime version
Node 26.5.0
Transport
HTTP (Streamable HTTP)
Description
When a provision scan spans several calls, a continuation page with no further matches gets the full-scan zero-hit notice. That notice says no effect references the provision, which contradicts matches already returned on earlier pages. The early-stop fragment also says "Only the first N…" on continuation pages.
Related: #7…
Read the thread · 2026-09-26 · closed · 2 comments
bug(uklaw_get_amendments): counterpart with a provision is silently widened to the whole Act
Server version
0.1.0
mcp-ts-core version
0.13.8
Runtime
Node.js
Runtime version
Node 26.5.0
Transport
HTTP (Streamable HTTP)
Description
uklaw_get_amendments drops the provision from counterpart and widens the filter to the whole Act, with no error or notice. uklaw_track_changes rejects an item that carries a provision with invalid_item; counterpart should do the same, or filter by the counterpart's provision.
Steps to reproduce
1.…
Read the thread · 2026-09-26 · closed · 2 comments
bug(uklaw_search_legislation): past-the-last-page notice says nothing matched and suggests widening filters
Server version
0.1.0
mcp-ts-core version
0.13.8
Runtime
Node.js
Runtime version
Node 26.5.0
Transport
HTTP (Streamable HTTP)
Description
For a page past the last page, the zero-hit notice still opens with "No legislation matched" and appends the filter-widening fragments. The query did match; only the page is out of range, so the widening advice sends the caller to change a filter that is not the problem.
Steps to reproduce
uklaw_search_legislation…
Read the thread · 2026-09-26 · closed · 2 comments
Most recent
feat(uklaw_lookup_citation): read common citation forms that miss or come back ambiguous
Use case
uklaw_lookup_citation misses several forms that UK legal writing uses routinely, or returns them as ambiguous. For a title miss, the guidance sends the caller to uklaw_search_legislation title, which also returns 0 for these inputs. Its zero-hit notice then sends the caller back to uklaw_lookup_citation.
| Input | Result now | Resolves to |
|---|---|---|
section 45 of the Data Protection Act 2018 |
miss (whole string read as a title) | ukpga/2018/12,… |
Read the thread · 2026-09-26 · closed · 2 comments
bug(uklaw_get_document): dated read of an unrevised instrument reports the provision missing
Server version
0.1.0
mcp-ts-core version
0.13.8
Runtime
Node.js
Runtime version
Node 26.5.0
Transport
HTTP (Streamable HTTP)
Description
legislation.gov.uk holds only the made text of an unrevised instrument, so any dated read 404s. The tool reports that 404 as provision_not_found or version_not_found. A caller asking for the text in force on a date after the instrument was made is told the provision had no text then, when the made text is the answer.
###…
Read the thread · 2026-09-26 · closed · 2 comments
bug(uklaw_get_document): outline chars understate read size; outlines carry 24 KB of effects
Server version
0.1.0
mcp-ts-core version
0.13.8
Runtime
Node.js
Runtime version
Node 26.5.0
Transport
HTTP (Streamable HTTP)
Description
The outline chars value and the 40,000-character budget count text and annotation text but not the annotation citation lists, so a provision the outline reports as fitting renders to about twice that. Item-level outlines, which are the smaller read, also carry 20 full effect records, about 24 KB. Measured on the wire…
Read the thread · 2026-09-26 · closed · 2 comments
bug(uklaw_get_document): provision valid_from/valid_to mix dates from different elements
Server version
0.1.0
mcp-ts-core version
0.13.8
Runtime
Node.js
Runtime version
Node 26.5.0
Transport
HTTP (Streamable HTTP)
Description
provision.valid_from and provision.valid_to are each inherited from the nearest element carrying that one attribute, so on dated reads the start and end come from different elements. The result is a window that ends before it starts, or one that contradicts the same text read at another date.
Steps to reproduce
1.…
Read the thread · 2026-09-26 · closed · 2 comments
bug(uklaw_get_amendments): pre-1963 regnal item paths always fail with filter_refused
Server version
0.1.0
mcp-ts-core version
0.13.8
Runtime
Node.js
Runtime version
Node 26.5.0
Transport
HTTP (Streamable HTTP)
Description
uklaw_get_amendments fails with filter_refused for every pre-1963 Act addressed by its regnal path, which is the form uklaw_lookup_citation returns and the form effect records carry in affected.item. The calendar-year path of the same Act returns its effects, so the recovery hint (check the item with…
Read the thread · 2026-09-26 · closed · 2 comments
feat(uklaw_get_document): complete per-provision unapplied effects from the table of contents
Use case
A uklaw_get_document provision read lists only the unapplied effects legislation.gov.uk attaches to that fragment: those whose affected URI nests under the fragment's IdURI, plus item-wide FoundRef effects. Effects on an enclosing Part, Chapter or cross-heading never appear on a section read (s. 65 heading attaches to part/3/chapter/4/crossheading/general-obligations, not section/65), and a part/3 read omits its sections' effects. A caller checking whether a…
Read the thread · 2026-09-26 · open · 0 comments
The remaining reports are on the project's issue tracker.