Global law
Server Details
The law of nearly every country on earth, any date: read it, see what changed it, check citations.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- lexifina/global-law
- GitHub Stars
- 1,911
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 18 tools
Most tools have a legitimately distinct purpose (search_law vs search_changes, read_law vs law_details), but there is a dense cluster of near-neighbours: changes_between, compare_dates, provision_history, phrase_history, laws_between and world_on_date all answer 'what changed between two dates' at different granularities. The verbose descriptions do help disambiguate, but an agent must read them carefully to avoid misselecting between compare_dates, changes_between and provision_history.
All names are snake_case and readable, but the verb_noun convention is only partly followed (read_law, find_provision, list_provisions, search_law, check_precedent, resolve_citations). Roughly half are noun phrases or question-style names (law_details, provision_history, phrase_history, changes_between, laws_between, world_on_date, what_else_changes, who_wrote, applies_to_case), so the pattern is mixed rather than uniform.
18 tools sits in the heavy band for this surface. The domain is genuinely broad (search, read, history, diff, citations, dependency graph, attribution, precedents), so most tools earn a place, but a few history/diff variants overlap enough that the set could likely be trimmed to ~12 without losing capability.
The read-only legal-record lifecycle is well covered: discovery (list_jurisdictions, list_provisions, find_provision), retrieval (read_law), temporal analysis (compare_dates, changes_between, world_on_date), citation resolution and dependency mapping. Minor gaps remain, such as no bulk listing of all judgments/decisions across the record and no explicit way to retrieve an entire act's consolidated text outside read_law's folder mode.
Available Tools
18 toolsapplies_to_caseApplies to caseARead-onlyIdempotentInspect
For a case commenced on one date, which later changes to a provision reach it (from any scope the record holds, such as "cases commenced on or after"), and the text that applies to it.
Inputs: path (required), commenced (required), date, include_period_texts. Returns: object
changes_betweenChanges betweenBRead-onlyIdempotentInspect
Every provision whose text on date_b differs from its text on date_a, in every jurisdiction or one, with the laws that took effect after date_a, up to and including date_b.
Inputs: date_a (required), date_b (required), kind, jurisdiction. Returns: object
check_precedentCheck precedentBRead-onlyIdempotentInspect
The judgments the record holds for a provision, each checked: is the text the court applied still the text in force (today, or on a date), and if not, which laws changed it and how? Also checks any one decision by the day it was decided (decided).
Inputs: path (required), date, decided, case_name, +1 more. Returns: object
compare_datesCompare datesARead-onlyIdempotentInspect
How a provision changed between two dates: a word-level diff of its text on date_a and its text on date_b, and the laws that took effect after date_a, up to and including date_b.
Inputs: path (required), date_a (required), date_b (required), offset, +1 more. Returns: object
find_provisionFind provisionARead-onlyIdempotentInspect
Find the file path of a provision by its number ("1182", "Art. 16a", "reg 13") or words from its heading ("debtor", "Asylrecht"). Also finds an act by its name ("Data Protection Act 2018": its folder) and a court decision by its docket number or citation ("1 BvR 1547/19", "410 U.S. 113").
Inputs: query (required), offset, max_results, jurisdiction. Returns: object
law_detailsLaw detailsBRead-onlyIdempotentInspect
The full record of a law's change: its commit message with every trailer (enacted, in force, published, sources, scope), the provisions it changed, and what it did to each one's words (a word diff, or "layout only", or "text moved between provisions"). One call answers "what did this law change"; no need to compare each provision.
Inputs: law, commit, jurisdiction, include_diffs, +1 more. Returns: object
laws_betweenLaws betweenARead-onlyIdempotentInspect
Every law that took effect between two dates, both days included, across all jurisdictions or one, in the order they took effect.
Inputs: end (required), start (required), kind, offset, +2 more. Returns: object
list_jurisdictionsList jurisdictionsARead-onlyIdempotentInspect
List every jurisdiction and body of law in the tree, with how far each record reaches and an example path. Start here.
Inputs: jurisdiction. Returns: object
list_provisionsList provisionsARead-onlyIdempotentInspect
Browse a corpus: the provision files under a corpus or folder (for example united-states/federal/usc/title-11), with headings, as in force on a date. For a folder of acts or instruments, by_folder gives one row each with its title and last change; a partial name lists the folders that start with it (malta/national/acts/sl/586. for every instrument made under Cap. 586).
Inputs: path (required), date, offset, by_folder, +1 more. Returns: object
phrase_historyPhrase historyARead-onlyIdempotentInspect
When words came into the law and when they left it, at any date and in every jurisdiction: each change whose added or removed text contains them. Use it for things no longer in force (for example "COVID" in the Grundgesetz).
Inputs: query (required), kind, regex, offset, +2 more. Returns: object
provision_historyProvision historyBRead-onlyIdempotentInspect
Every law that changed a provision, oldest first, with its in-force, enacted or made, and published dates.
Inputs: path (required). Returns: object
read_lawRead lawARead-onlyIdempotentInspect
The text of a provision as it was in force on a date, with the law that last changed it, the next change, its history in brief, and any limit of the record that applies. Several provisions in one answer: give paths, or a folder (an act) as path.
Inputs: date, path, paths, offset, +2 more. Returns: object
resolve_citationsResolve citationsARead-onlyIdempotentInspect
Read every citation in a piece of text (a brief, a judgment, an email) and resolve each to its provision, with its state on a date: in force or not, the law that last changed it, and the next change.
Inputs: text (required), date, max_results. Returns: object
search_changesSearch changesARead-onlyIdempotentInspect
Search the record of changes (each commit message: the law, its dates, what it did) rather than the text of the law. For example "temporary", "COVID", "Bundesrat". With start and end, the changes in force from start to end, both days included.
Inputs: query (required), end, kind, start, +3 more. Returns: object
search_lawSearch lawARead-onlyIdempotentInspect
Search the text of all the law in force on a date, across every jurisdiction or one. Plain text by default.
Inputs: query (required), date, kind, regex, +4 more. Returns: object
what_else_changesWhat else changesARead-onlyIdempotentInspect
Which provisions rely on, cite or use the definitions of this one, on a date: those that cite it, and those that use a term it defines (for example the provisions that use "debtor in possession"), with the definition's scope ("In this subchapter"). Use it before a text search when asked what depends on a provision or its definitions; a change to this provision can change what they mean.
Inputs: path (required), date, offset, max_results. Returns: object
who_wroteWho wroteARead-onlyIdempotentInspect
Which law wrote each word (or each line) of a provision as it stood on a date, with a count of words per law.
Inputs: path (required), date, offset, max_chars, +2 more. Returns: object
world_on_dateWorld on dateARead-onlyIdempotentInspect
What every jurisdiction in the tree looked like on one date: the last change in force in each, and the next.
Inputs: date, kind, jurisdiction. Returns: object
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Search and read UK legislation at any date, resolve citations, list amendments, track changes.
Current law as data for AI: search, read and verify statutes and citations. CIS countries first.
Temporal search and comparison for official Luxembourg and reviewed EU law, with provenance.
Resolve, search and verify legal citations against the official sources, with provenance.
Related MCP Servers
AlicenseNot gradedqualityBmaintenanceEnables AI assistants to search and read consolidated legislation from multiple countries, retrieve exact law texts as of any historical date with citations and git commit SHAs, and create webhook or email subscriptions to track legal changes.2MIT
Moonlit Legal Researchofficial
AlicenseNot gradedqualityDmaintenanceOfficial European law, expanding globally: 20M+ documents, 35+ jurisdictions, verifiable citations.MIT- AlicenseAqualityBmaintenancePoint-in-time access to Luxembourg law and ten EU acts: what any law said on a given date, not just the current text. 1,409 consolidated works and 4,705 dated versions from the official Legilux and EUR-Lex sources. Ten read-only tools: as-of text, timelines, per-article history, diffs between dates, and hash-verifiable provenance. No key.109Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables read-only searching and retrieval of national legislation and multi-tier court decisions, plus verification of statutory and case-law citations against official registries.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.