Private beta
Every law, every court, one API.
Pandex collects official legislation, case law and gazettes, normalizes them into one model, and serves them for search and AI.
Cour de cassation, chambre sociale, 28 novembre 2018, n° 17-20.079
ECLI:FR:CCASS:2018:SO01737
… le lien de subordination est caractérisé par l'exécution d'un travail sous l'autorité d'un employeur qui a le pouvoir de donner des ordres et des directives, d'en contrôler l'exécution et de sanctionner les manquements de son subordonné …
- documents collected from official portals
- 8.9M
- official sources mapped
- 1,100
- jurisdictions in the source catalog
- 233
Product
Built for software that has to get the law right.
Search that takes a question
Keyword, semantic or hybrid. Ask in plain language or use phrases, required and excluded words, and prefixes. Filter by jurisdiction, source, court, document type, language and date.
The passage, not the pile
One hit per document, with the article or section that matched and a short excerpt. Results stay small enough for a model to read ten of them.
The law as it stood
Every article version carries the dates it was in force. Search with in_force_on, or read a whole act as it was on any day.
Citations, both directions
What a document cites, amends or repeals, and what points at it. Typed links, counted per relation, resolved to the target document where we hold it.
Identifiers resolve exactly
Paste an ECLI, an ELI, a CELEX number or a case number and get that document first. Lookup never depends on ranking.
Official sources only
Collected from the portal of the court, parliament or gazette that issued the text. We keep the exact bytes we fetched, so every document traces back to its origin.
How it works
From the official portal to your prompt.
- 01
Collect
A connector per source takes the best official route: bulk archive, then API, then sitemap, then crawl. Raw bytes are stored once and never fetched again.
- 02
Normalize
Every source is parsed into the same model: documents, their articles or decision sections, versions, and typed links between them.
- 03
Serve
A search index with passage-level embeddings sits behind a REST API and an MCP server. Both expose the same five operations.
API and MCP
Five operations. That is the whole surface.
The same operations over REST for your application and over MCP for your agent.
- search
- Full-text, semantic or hybrid search with filters and facets
- get_document
- A document as Markdown or JSON, as in force on a given day
- get_outline
- Headings and article labels, to pick what to read
- get_citations
- Links out of a document or into it, by relation type
- list_sources
- Every loaded source with counts and date range
curl -G https://api.pandex.io/search \
-H "Authorization: Bearer $PANDEX_KEY" \
--data-urlencode "q=coursier plateforme lien de subordination" \
-d jurisdiction=FR -d kind=case_law -d mode=hybrid -d size=1
{
"total_documents": 412,
"took_ms": 38,
"hits": [{
"doc_id": "ECLI:FR:CCASS:2018:SO01737",
"title": "Cour de cassation, chambre sociale, 28 novembre 2018, 17-20.079",
"source": "fr.cass",
"jurisdiction": "FR",
"kind": "case_law",
"date": "2018-11-28",
"passages": [{
"label": "Motifs",
"text": "… le **lien de subordination** est caractérisé par
l'exécution d'un travail sous l'autorité d'un employeur …"
}]
}]
}# Claude Code
claude mcp add --transport http pandex https://mcp.pandex.io
# Any MCP client
{
"mcpServers": {
"pandex": {
"url": "https://mcp.pandex.io",
"headers": { "Authorization": "Bearer ${PANDEX_KEY}" }
}
}
}
# Tools the model gets
search · get_document · get_outline · get_citations · list_sources# Article 1240 of the Code civil, as in force on 1 January 2017
curl -G https://api.pandex.io/search \
-H "Authorization: Bearer $PANDEX_KEY" \
--data-urlencode "q=dommage à autrui faute réparer" \
-d source=fr.legi -d in_force_on=2017-01-01
# A whole act as it stood that day
curl "https://api.pandex.io/documents/{id}?at=2017-01-01" \
-H "Authorization: Bearer $PANDEX_KEY"
# What cites it
curl "https://api.pandex.io/documents/{id}/citations?direction=in" \
-H "Authorization: Bearer $PANDEX_KEY"Example response, shortened for the page.
Coverage
One country done properly, then the next.
A jurisdiction is listed when its documents are collected and parsed, not when a connector is planned.
| Jurisdiction | Documents | What is in it |
|---|---|---|
| FRFrance | 8.85M | Codes and laws, Journal officiel, all court tiers, CNIL, CADA, collective agreements |
| NONorway | 67,600 | Acts, regulations, Lovtidend |
| MCMonaco | 20,800 | Legislation, case law |
| ADAndorra | 2,400 | Constitutional court |
| SRSuriname | 1,400 | Case law |
Next European Union · Netherlands · Germany · Belgium
Put the law behind your product.
Pandex is in private beta. Tell us which jurisdictions you need and what you are building.