Server data from the Official MCP Registry
MCP server for French Legifrance (PISTE): legislation and case law with citations and ECLI.
MCP server for French Legifrance (PISTE): legislation and case law with citations and ECLI.
This is a well-structured MCP server for the French Legifrance API with proper OAuth2 authentication, read-only operations, and careful credential handling. The server reads credentials exclusively from environment variables, implements token caching in-memory, and includes comprehensive input validation and error handling. No security vulnerabilities were identified; minor code quality observations do not impact the overall security posture. Supply chain analysis found 6 known vulnerabilities in dependencies (1 critical, 3 high severity). Package verification found 1 issue.
7 files analyzed · 11 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: FR_ELI_OAUTH_URL
Environment variable: FR_ELI_BASE_URL
Environment variable: FR_ELI_CLIENT_ID
Environment variable: FR_ELI_CLIENT_SECRET
Environment variable: FR_ELI_CACHE_DIR
Environment variable: FR_ELI_AUDIT_DIR
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-matematicsolutions-fr-eli-mcp": {
"env": {
"FR_ELI_BASE_URL": "your-fr-eli-base-url-here",
"FR_ELI_AUDIT_DIR": "your-fr-eli-audit-dir-here",
"FR_ELI_CACHE_DIR": "your-fr-eli-cache-dir-here",
"FR_ELI_CLIENT_ID": "your-fr-eli-client-id-here",
"FR_ELI_OAUTH_URL": "your-fr-eli-oauth-url-here",
"FR_ELI_CLIENT_SECRET": "your-fr-eli-client-secret-here"
},
"args": [
"fr-eli-mcp"
],
"command": "uvx"
}
}
}From the project's GitHub README.
An MCP server for the French Legifrance API via PISTE. It searches French legislation (LODA laws & decrees, codes) and case law (JURI), and returns verbatim text with verifiable citations. Part of the eu-legal-mcp line of national legal connectors by MateMatic.
Every response carries the citation contract: a stable eli_uri, a human_readable_citation
(French convention) and a resolvable source_url.
Read-only. The server only queries Legifrance and writes a local audit log. It never modifies official text and never sends anything beyond your query / document id.
| Tool | What it does |
|---|---|
fr_search(query, fond, page_size) | Keyword search a fond: LODA (laws & decrees), CODE (codes), JURI (case law). Returns hits with the citation contract; CODE hits expose matched article_ids. |
fr_get_act(text_id, date) | Consult a LODA law/decree by LEGITEXT... id. Returns metadata + a table of contents (articles). |
fr_get_text(article_id) | Verbatim text of a single article by LEGIARTI... id. |
fr_get_decision(decision_id) | A JURI court decision by JURITEXT... id, with its native ecli, court, formation, solution and text. |
France has an official ELI scheme, but the PISTE lf-engine-app consult API returns the native
ELI field null for the legislation we tested. Following this line's rule - say what you do not
have, never fabricate an ELI - eli_uri carries the stable, resolvable Legifrance resource URL
(CID-keyed), not a /eli/... string parsed from prose. Each response repeats this in eli_note.
Case law is different: the API returns a native, authoritative ECLI
(e.g. ECLI:FR:CCASS:2025:C100399), surfaced verbatim in fr_get_decision.
Legifrance requires OAuth2 application credentials from a free PISTE account
(piste.gouv.fr → Applications → subscribe to the Legifrance API → OAuth Credentials).
Credentials are read from the environment only:
| Variable | Meaning |
|---|---|
FR_ELI_OAUTH_URL | OAuth token endpoint (sandbox default shown in .mcp.json.example). |
FR_ELI_BASE_URL | Legifrance lf-engine-app base. |
FR_ELI_CLIENT_ID | Your PISTE application client id (required). |
FR_ELI_CLIENT_SECRET | Your PISTE application client secret (required). |
FR_ELI_CACHE_DIR | Disk cache dir (default ~/.matematic/cache/fr-eli). |
FR_ELI_AUDIT_DIR | Audit log dir (default ~/.matematic/audit). |
Copy .mcp.json.example to .mcp.json (gitignored) and fill in your credentials, or set the
variables in your host environment. The OAuth token is cached in memory and refreshed automatically.
py -3.13 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e ".[dev]" # Windows
# or: python -m pip install -e ".[dev]" # POSIX
pytest tests/test_instructions_drift.py tests/test_parse.py # offline, no creds
pytest tests/test_smoke.py -v # live, needs PISTE creds in .env
Because Legifrance requires a PISTE key, this connector is distributed through the PATRON / appliance channel (governed), not casual drop-in download. See the eu-legal-mcp line notes.
Apache-2.0. Legifrance content is © the French Republic / DILA and subject to the Legifrance / PISTE terms of use; this software only retrieves and cites it.
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.