Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
Swiss federal law, consultations (Fedlex) & TERMDAT terminology (LINDAS) via SPARQL
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"fedlex": {
"command": "uvx",
"args": [
"fedlex-mcp"
]
}
}
}Führe das in deinem Terminal aus
claude mcp add fedlex -- uvx fedlex-mcpIn .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"fedlex": {
"command": "uvx",
"args": [
"fedlex-mcp"
]
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"fedlex": {
"type": "stdio",
"command": "uvx",
"args": [
"fedlex-mcp"
]
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 7. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto malkreide bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (2.1.0) kam vor 41 Tagen in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Python (uv) auf deinem Computer.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, Kanal Varna — drains, leaks & plumbing (Varna, BG)
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drain unblocking, leak detection & plumbing in Varna, Bulgaria: services, prices, areas, contact
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
:switzerland: Part of the [Swiss Public Data MCP Portfolio](https://github.com/malkreide)
MCP Server for Swiss federal law, consultations & official terminology — search the SR, monitor consultation deadlines, and translate terms across the national languages via Claude Desktop or Claude.ai
:de: Deutsche Version
fedlex-mcp connects AI assistants (Claude) with three official Swiss SPARQL data sources:
jolux:Consultation) — the pre-parliamentary phase in which anyone can comment on a draft.All three are SPARQL-based, which is exactly why they live in one server rather than three: no new technology stack, only new queries against known patterns.
Metaphor: USB-C for federal law. *Fedlex tells you what you have to respond to. TERMDAT tells you what it is called in the other national languages.*
*"Which education-related consultations are currently open, until when does the deadline run, which office is in charge — and what are the key technical terms in French and Italian for the response?"*
A single conversation chains three tools across two endpoints:
fedlex_get_open_consultations(topic="education")
→ fedlex_get_consultation(event_id="proj/2026/71/cons_1") → termdat_lookup_term(term="Volksschule", target_languages=["fr","it"])
Every open consultation carries deadline, days_remaining (computed at request time in Europe/Zurich, 0 = deadline is today) and a derived status — an expired consultation never shows up as running. Fedlex says *what* you must respond to and *by when*; TERMDAT says *how to name it* in the other national languages.
Use `topic="education"`, not `keyword="Volksschule"`. Fedlex consultations
have no subject taxonomy — filtering is free-text over the title, and the word
"Volksschule" appears in zero consultation titles. The
topicfilter
expands to a disclosed keyword union (Bildung, Schule, Berufsbildung,
Hochschule, …) and reports exactly which terms it searched.
Run via uv's uvx — no clone or manual install needed. Add to your MCP client config (mcpServers for Claude Desktop, Cursor and Windsurf; use a top-level servers key for VS Code in .vscode/mcp.json):
{
"mcpServers": { "fedlex-mcp": { "command": "uvx", "args": [ "fedlex-mcp" ] } } }
<!-- END GENERATED: install -->
# Clone the repository
git clone https://github.com/malkreide/fedlex-mcp.git cd fedlex-mcp
pip install -e .
uv pip install -e .
Or with uvx (no permanent installation):
uvx fedlex-mcp
# stdio (for Claude Desktop)
python -m fedlex_mcp.server
python -m fedlex_mcp.server --http --port 8000
Try it immediately in Claude Desktop:
*"Show me all valid federal laws on vocational training"*
*"What does the Data Protection Act say? Is it still in force?"*
*"Which consultations on education are open right now, and until when?"*
*"What is 'Volksschule' called in French and Italian in official terminology?"*
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": { "fedlex": { "command": "python", "args": ["-m", "fedlex_mcp.server"] } } }
Or with uvx:
{
"mcpServers": { "fedlex": { "command": "uvx", "args": ["fedlex-mcp"] } } }
Config file locations:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonFor use via claude.ai in the browser (e.g. on managed workstations without local software):
Render.com (recommended):
python -m fedlex_mcp.server --http --port 8000https://your-app.onrender.com/sse*"stdio for the developer laptop, SSE for the browser."*
| # | Tool | Source | Description |
|---|---|---|---|
| 1 | fedlex_search_laws | Fedlex | Search the Systematic Compilation (SR) by keyword in title |
| 2 | fedlex_get_law_by_sr | Fedlex | Get a law by its SR number (e.g. 235.1 = Data Protection Act) |
| 3 | fedlex_get_recent_publications | Fedlex | Latest publications from the Official Compilation (AS) |
| 4 | fedlex_get_upcoming_changes | Fedlex | Laws entering into force soon (legal monitoring) |
| 5 | fedlex_search_gazette | Fedlex | Search the Federal Gazette (BBl) |
| 6 | fedlex_get_law_history | Fedlex | All versions of a law (version history) |
| 7 | fedlex_search_treaties | Fedlex | International treaties (SR numbers starting with 0.) |
| 8 | fedlex_get_open_consultations | Fedlex | Deadline monitoring — open consultations (eventEndDate >= today, Europe/Zurich); each with days_remaining + derived status, sorted by shortest deadline; optional topic/keyword |
| 9 | fedlex_search_consultations | Fedlex | Full-text search over consultation title/description, with filters (topic, status, deadline range, office) |
| 10 | fedlex_get_consultation | Fedlex | Detail for one eventId: deadline, days_remaining, office, derived status, documents |
| 11 | termdat_lookup_term | LINDAS | Term → equivalents in de/fr/it/rm/en incl. definition |
| 12 | termdat_get_concept | LINDAS | Full TERMDAT entry for a URI or ID |
| Query | Tool |
|---|---|
| *"Show me all valid federal laws on vocational training"* | fedlex_search_laws |
| *"What does the Data Protection Act say?"* | fedlex_get_law_by_sr |
| *"Which laws enter into force in the next 3 months?"* | fedlex_get_upcoming_changes |
| *"Show me the version history of the DSG"* | fedlex_get_law_history |
| *"Which consultations on education are open, and until when?"* | fedlex_get_open_consultations |
| *"Find closed consultations about the language act"* | fedlex_search_consultations |
| *"Give me the full detail and documents for consultation proj/2026/71/cons_1"* | fedlex_get_consultation |
| *"What is 'Volksschule' called in French and Italian?"* | termdat_lookup_term |
| *"Show the full TERMDAT entry 40109"* | termdat_get_concept |
→ More use cases by audience →
Two isolated SPARQL endpoints behind one server. Separate httpx clients and timeouts mean a LINDAS outage never breaks the fedlex_* tools, and vice versa.
+-------------------+ +------------------------------+ +--------------------------+
| Claude / AI |---->| Fedlex MCP |---->| Fedlex SPARQL Endpoint | | (MCP Host) |<----| (MCP Server) |<----| fedlex.data.admin.ch | +-------------------+ | | | (law + consultations) | | 12 Tools . 2 Resources | +--------------------------+ | Stdio | SSE | | | +--------------------------+ | Isolated clients: |---->| LINDAS SPARQL Endpoint | | - Fedlex (law + cons.) |<----| lindas.admin.ch/query | | - LINDAS (TERMDAT) | | (fch/termdat, TERMDAT) | | | +--------------------------+ | No authentication required | +------------------------------+
JOLux Ontology — federal law (Fedlex)
jolux:ConsolidationAbstract <- SR entry
+-- jolux:isRealizedBy -> jolux:Expression (URI ends in /de, /fr, /it, /rm) +-- jolux:title "Federal Act of 19 June 1992 on Data Protection" +-- jolux:titleShort "DSG" +-- jolux:historicalLegalId "235.1"
jolux:inForceStatus: .../0 In force · .../1 No longer published in SR · .../3 No longer in force
JOLux Ontology — consultations (Fedlex, same endpoint)
jolux:Consultation
+-- jolux:eventId "proj/2026/71/cons_1" +-- jolux:eventTitle multilingual (de/fr/it) +-- jolux:eventDescription multilingual +-- jolux:consultationStatus -> vocabulary URI (0..6, /2 = "Laufend"/running) +-- jolux:foreseenImpactToLegalResource -> the legal resource it will amend (link to SR) +-- jolux:hasSubTask -> ?t +-- jolux:eventStartDate <- opened_on +-- jolux:eventEndDate <- the deadline (xsd:date, calendar day) +-- jolux:institutionInChargeOfTheEvent <- lead department +-- jolux:institutionInChargeOfTheEventLevel2 <- lead office +-- jolux:opinionHasDraftRelatedDocument <- consultation documents
There is no subject taxonomy on jolux:Consultation — thematic filtering is free-text over eventTitle only, and status is derived from the deadline (not the source status field).
Legislative lifecycle — where consultations sit (all in this one server):
Vernehmlassung Bundesblatt (BBl) Systematische Sammlung (SR)
(consultation) ─────► (dispatch / act text) ───► (consolidated law in force) ──────────────── ───────────────────── ─────────────────────────── fedlex_get_open_ fedlex_search_gazette fedlex_search_laws consultations (eli/fga/…) fedlex_get_law_by_sr fedlex_search_ fedlex_get_law_history consultations (eli/cc/…) fedlex_get_consultation │ jolux:foreseenImpactToLegalResource └───────────────────────────────────────────► links a consultation forward t
Nur der Anfang wird gezeigt; den Rest findest du im Repo