MCP serverio.github.paulieb89/uk-legal-mcp
UK legal research — case law, legislation, Hansard, bills, votes, committees, HMRC, citations
Overview
Score?
UNRATED 0.815
of what a free look can see, on 30 looks
Looks
35
last 14 hr ago
Tools
35
changed 19 days ago
More info
URL
uk-legal-mcp.fly.dev/mcp
streamable-http
Says it is
uk-legal-mcp 0.7.1
protocol 2025-06-18
In the record since
32 days ago
Among servers18,413 with a card
0median 0.606 · this server 0.815 · highest on record 0.8561
Toolsfrom sha256:9c5433e433…42f8bb · +0 −0 19 days ago
| Tool | Schema |
|---|---|
| bills_get_bill USE THIS TOOL WHEN you have a bill_id (from bills_search_bills) and want the full detail.
Returns sponsors, current stage, long title, summary, and Royal Assent
date if enacted. S |
input · output |
| bills_search_bills USE THIS TOOL WHEN searching UK parliamentary bills by keyword, session, house, or legislative stage.
Returns a paginated page of bill summaries (title, originating and current
ho |
input · output |
| case_law_grep_judgment USE THIS TOOL WHEN you have a judgment slug and want to find paragraphs whose text matches a pattern.
Returns a list of `{eId, snippet, match}` hits — small per-paragraph
snippets |
input · output |
| case_law_search USE THIS TOOL WHEN searching UK case law by party names, court, judge, date, or free-text query.
Returns paginated judgment summaries: neutral citation, court, dates, slug,
stable |
input · output |
| citations_format_oscola USE THIS TOOL AFTER citations_resolve to produce the correctly formatted OSCOLA citation string.
Pass the parsed fields returned by citations_resolve directly into this
tool. Form |
input · output |
| citations_network USE THIS TOOL WHEN you have a judgment slug and want to map every citation it makes — cases cited, legislation referenced, SIs, retained EU law.
Fetches the judgment XML from TNA |
input · output |
| citations_parse USE THIS TOOL WHEN you have free text (a memo, an email, a clause) and want every OSCOLA-style citation it contains extracted and classified.
Identifies: neutral citations ([2024] |
input · output |
| citations_resolve USE THIS TOOL BEFORE constructing an OSCOLA citation string from known fields, OR to confirm a citation points at a real document.
Parses + resolves a single citation (neutral cit |
input · output |
| committees_get_committee USE THIS TOOL WHEN you have a committee_id and want the metadata + current membership.
Fetches committee detail and member list in parallel. AFTER calling,
pass committee_id into |
input · output |
| committees_search_committees USE THIS TOOL WHEN searching or listing UK parliamentary select committees by name, house, or active status.
Returns committee summaries (name, house, active status, ID). AFTER
ca |
input · output |
| committees_search_evidence USE THIS TOOL WHEN you have a committee_id and want the oral and written evidence submitted to it.
Returns ONE PAGE of evidence (default 20) plus `total`, the source's
count of ma |
input · output |
| get_prompt Get a prompt by name with optional arguments.
Returns the rendered prompt as JSON with a messages array.
Arguments should be provided as a dict mapping argument names
to values. |
input · output |
| hmrc_check_mtd_status USE THIS TOOL WHEN you have a 9-digit VAT Registration Number and need that business's Making Tax Digital VAT mandate status.
Returns whether the business is mandated for MTD, eff |
input · output |
| hmrc_get_vat_rate USE THIS TOOL WHEN you know the UK VAT category name for a good or service and want its VAT treatment.
Exact named-category lookup, not a free-text VAT classifier or tax
advice. T |
input · output |
| hmrc_search_guidance USE THIS TOOL WHEN searching GOV.UK for HMRC tax guidance on a topic (VAT, income tax, corporation tax, etc.).
Returns matching guidance titles, URLs, summaries, and last-updated |
input · output |
| judgment_get_header USE THIS TOOL WHEN you have a judgment slug and need metadata (parties, judges, neutral citation, court, dates).
Call case_law_search FIRST to get the slug. AFTER calling, use
jud |
input · output |
| judgment_get_index USE THIS TOOL WHEN you have a judgment slug and want the paragraph navigation index (eId + preview line for every paragraph).
Call case_law_search FIRST to get the slug. AFTER cal |
input · output |
| judgment_get_paragraph USE THIS TOOL WHEN you have a judgment slug + LegalDocML eId and want that paragraph's full text.
Call judgment_get_index FIRST to discover available eIds (or use
case_law_grep_ju |
input · output |
| legislation_get_section USE THIS TOOL WHEN you have a known Act / SI and want the parsed text of a specific section, regulation, or article, with extent and in-force metadata.
Returns the provision's own |
input · output |
| legislation_get_toc USE THIS TOOL WHEN you have a known Act / SI and want the structural table of contents (parts, chapters, individual sections/regulations/articles).
Returns structural elements wit |
input · output |
| legislation_search USE THIS TOOL WHEN searching UK Acts and Statutory Instruments by title, phrase, or full-text.
Returns ranked results: title, type, year, number, legislation.gov.uk URL,
and next_ |
input · output |
| list_prompts List all available prompts.
Returns JSON with prompt metadata including name, description,
and optional arguments. |
input · output |
| list_resources List all available resources and resource templates.
Returns JSON with resource metadata. Static resources have a
'uri' field, while templates have a 'uri_template' field with
pla |
input · output |
| parliament_find_member USE THIS TOOL WHEN you have a member's name and need their integer member_id.
Returns all members matching the name query, each with the integer `id`,
party, constituency, house, |
input · output |
| parliament_get_debate_contributions USE THIS TOOL WHEN you have a debate_ext_id and want verbatim contributions, optionally filtered to one member.
Canonical path for "everything a member said in this debate" regard |
input · output |
| parliament_get_debate_divisions USE THIS TOOL WHEN you have a debate_ext_id and want the divisions (formal votes) held within it.
Most debates contain no divisions — Business of the House sittings,
statements, u |
input · output |
| parliament_lookup_by_column USE THIS TOOL WHEN you have an OSCOLA-style Hansard citation (column + volume + house) and need the debate.
Example input: 'HL Deb 14 Oct 2025, vol 849, col 200'. AFTER calling, r |
input · output |
| parliament_member_debates USE THIS TOOL WHEN you have a member_id and want contributions where THAT member used a specific topic phrase verbatim (text-body search).
CALL parliament_find_member(name) FIRST |
input · output |
| parliament_member_interests USE THIS TOOL WHEN you have a member_id and need their registered financial interests (donations, directorships, land, gifts).
CALL parliament_find_member(name) FIRST to obtain th |
input · output |
| parliament_policy_position_summary USE THIS TOOL WHEN you want debate-level corpus signals on a topic — by_house, by_year, by_section breakdowns — without reading every contribution.
Aggregates Hansard debate-level |
input · output |
| parliament_search_hansard USE THIS TOOL WHEN searching Hansard by topic, bill title, or text phrase.
Returns contributions with citation-grade metadata: member_id, attributed_to,
column_ref, debate_id, deb |
input · output |
| parliament_search_petitions USE THIS TOOL WHEN searching UK Parliament petitions by keyword or topic.
Returns petition title, state, signature count, and dates for government
response or parliamentary debate |
input · output |
| read_resource Read a resource by its URI.
For static resources, provide the exact URI. For templated
resources, provide the URI with template parameters filled in.
Returns the resource content |
input · output |
| votes_get_division USE THIS TOOL WHEN you have a division_id + house and want the full member-by-member voting record.
Voter lists are truncated to 100 per side to fit response limits; total
voter c |
input · output |
| votes_search_divisions USE THIS TOOL WHEN searching Commons or Lords formal votes by topic, date, or member.
Returns one page of division summaries (title, date, vote counts,
pass/fail) plus `total`, th |
input · output |
Verify it yourself
npx teppi-check https://uk-legal-mcp.fly.dev/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1FZ2JTPYDSVQ058T62Z7AS6