Search UK case law on BAILII — court judgments with section extraction. Runs locally (BAILII blocks cloud IPs).
Project description
BAILII MCP Server
Search UK case law on BAILII. Retrieve judgments with automatic section extraction (summary, conclusions, discussion, background). Runs locally — BAILII blocks cloud IPs.
Install
Using uv (recommended)
No install needed — uvx runs it directly from PyPI:
uvx bailii-mcp
Using pip
pip install bailii-mcp
bailii-mcp
Requires Python 3.10+.
Configuration
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"bailii": {
"command": "uvx",
"args": ["bailii-mcp"]
}
}
}
Claude Code
claude mcp add bailii -- uvx bailii-mcp
VS Code
Add to .vscode/settings.json or use the MCP panel:
{
"mcp": {
"servers": {
"bailii": {
"command": "uvx",
"args": ["bailii-mcp"]
}
}
}
}
Using pip instead of uvx
If you installed via pip install bailii-mcp, use "command": "bailii-mcp" and "args": [] instead.
From source
git clone https://github.com/paulieb89/bailii-mcp.git
cd bailii-mcp
pip install -e .
What You Can Ask
Once connected, just ask Claude naturally:
- "Search BAILII for cases about HMO licensing"
- "Find recent whistleblowing employment tribunal cases"
- "Get the summary of Chinn v Hoilund-Carlsen"
- "What did the court hold in that case?"
- "Show me the discussion section"
Tools
| Tool | What it does |
|---|---|
bailii_search |
Full-text search across all BAILII courts. Returns titles, citations, and links. |
bailii_get_judgment |
Retrieve judgment text. Defaults to summary + conclusions (~5000 chars). |
bailii_list_courts |
List available UK courts (UKSC, EWCA, EWHC, UKUT, EAT, etc). |
Section Extraction
Judgments are large (30-100KB). By default, only the summary and conclusions are returned. Ask for more if you need it:
- Default: summary + conclusions (5000 chars)
- Specific section: "show me the discussion" → pulls just that section
- Full text: "get the complete judgment" → returns everything
Sections detected: summary, conclusions, held, discussion, background
Why Local?
BAILII blocks requests from cloud servers and datacenters. This server runs on your machine, so requests go through your residential IP.
For case law that doesn't need BAILII specifically, uk-legal-mcp provides case law via the National Archives API — hosted on Fly.io, no local setup needed.
This BAILII server is useful when you need:
- Employment tribunal decisions (EAT coverage is stronger on BAILII)
- Older cases not yet in the TNA database
- Specific tribunals with better BAILII indexing
Notes
- BAILII terms prohibit bulk downloading — use for targeted research only
- Be reasonable with request rate
- Section extraction depends on judgment formatting — not all judgments have clear section headers
Licence
Apache 2.0
Author
Paul Boucherat — building MCP servers for UK property, legal, and project controls.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bailii_mcp-1.0.1.tar.gz.
File metadata
- Download URL: bailii_mcp-1.0.1.tar.gz
- Upload date:
- Size: 18.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fee75474c2090bec770d05be8fe3438adc1225364469cd895b6d059a3f3684ad
|
|
| MD5 |
771c6dac9d0a5b665f9cf820e2cef8ff
|
|
| BLAKE2b-256 |
12f15dfedc64b8b6c6947fb122131112b0b2be54130da16c26bc0a73f0b8fca6
|
File details
Details for the file bailii_mcp-1.0.1-py3-none-any.whl.
File metadata
- Download URL: bailii_mcp-1.0.1-py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db862ce95e9bd4588fe746e305e0e34f4c6b206193c5c6a54ca584b709486de6
|
|
| MD5 |
fc215dbfeda36bb1a1f5367dec17d600
|
|
| BLAKE2b-256 |
8d8b806dd1035ef26b8db0e3ded5d8767798a65a3f085863ca8688654b835e54
|