Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Lex

FreeNot checked

Provides programmatic access to UK legal documents with hybrid semantic search and Model Context Protocol integration for AI assistants.

GitHubEmbed

About

Provides programmatic access to UK legal documents with hybrid semantic search and Model Context Protocol integration for AI assistants.

README

UK legal API for AI agents and researchers. Access comprehensive UK legislation data with semantic search and Model Context Protocol integration.

Python 3.12+ License

What is Lex?

Lex provides programmatic access to 8.4M+ UK legal documents - legislation, amendments, and explanatory notes - with hybrid semantic search.

This is an experimental service and should not be used as a production dependency.

Dataset Coverage

  • Legislation - 220K Acts and Statutory Instruments (1267-present, complete from 1963)
  • Amendments - 892K legislative changes and modifications
  • Explanatory Notes - 89K notes providing legislative context
  • Case Law - 70K judgments and 4.7M paragraphs (temporarily disabled pending TNA licence)
  • PDF Digitisation - Historical legislation (pre-1963) digitised using AI

What Can You Build?

  • Legal Research - Find relevant legislation in seconds
  • Policy Analysis - Track legislative changes over time
  • AI Grounding - Ground AI assistants in authoritative UK legal sources

MCP Integration

Connect AI assistants to Lex via Model Context Protocol. See the live documentation for setup instructions for:

  • Claude Desktop
  • Claude Code
  • Cursor
  • Microsoft Copilot Studio
  • VS Code + GitHub Copilot

Local Development

Prerequisites

  • Python 3.12+
  • uv
  • Docker & Docker Compose
  • Azure OpenAI credentials

Quick Start

# Clone and setup
git clone https://github.com/i-dot-ai/lex.git && cd lex
cp .env.example .env  # Add your Azure OpenAI keys

# Start services and load sample data
docker compose up -d
make ingest-all-sample

# Visit http://localhost:8000/docs for API documentation

Data Loading

# Quick samples (recommended for testing)
make ingest-legislation-sample
make ingest-all-sample

# Full datasets (production use)
make ingest-legislation-full
make ingest-all-full

# Create indexes for fast filtering
uv run python scripts/create_payload_indexes.py

Development Commands

make install          # Install dependencies
make test             # Run tests
make run              # Start API locally (without Docker)
uv run ruff format .  # Format code

Architecture

lex/
├── src/
│   ├── lex/              # Data pipeline (scraping, parsing, indexing)
│   └── backend/          # API server (FastAPI + MCP)
├── infrastructure/       # Azure Bicep templates and deploy scripts
├── scripts/              # Maintenance, migration, and export utilities
├── tests/                # Test suite
└── docs/                 # Documentation

Documentation

Acknowledgements

Built with support from The National Archives and Ministry of Justice.

License

MIT - See LICENSE for details.

from github.com/i-dot-ai/lex

Installing Lex

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/i-dot-ai/lex

FAQ

Is Lex MCP free?

Yes, Lex MCP is free — one-click install via Unyly at no cost.

Does Lex need an API key?

No, Lex runs without API keys or environment variables.

Is Lex hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Lex in Claude Desktop, Claude Code or Cursor?

Open Lex on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Lex with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All ai MCPs