Dokumentation

Übersicht

Tutorials
Anleitungen
Infrastruktur
Referenz
Erklärung
Auf dieser Seite

Was es tut

Der fedlex-Server liest das Bundesrecht dort, wo der Bund es publiziert: über den öffentlichen SPARQL-Endpunkt fedlex.data.admin.ch/sparqlendpoint und die Akoma-Ntoso-Fassungen im selben Filestore. 35 Werkzeuge — eine SR-Nummer auflösen, die Fassungen einer Erlassfamilie listen, einen Artikel im Wortlaut lesen, ein Zitat gegen den gelesenen Normtext prüfen, die Fundstelle bilden —, und jede Antwort trägt ihre Herkunft und den Moment, in dem sie wirklich geholt wurde. Vor dem Server stand die Datenkunde: 123 Regeln aus zwei Regelwerken, und für jede sagt eine Konformitätstabelle, ob dieser Server sie einhält, ihr widerspricht oder bloss nicht geprüft ist. Ein Test liest diese Tabelle aus: eine Zeile, die «honoured» behauptet, muss einen Test benennen, den es gibt und der auch läuft — «sieht richtig aus» heisst untested, nie honoured. Was er nicht tut: er erfindet keinen Text, ein zwischengespeicherter Erlass wird nie an die Stelle einer Antwort gesetzt, die der Graph verweigert hat, und gegen den Bund geht höchstens eine höfliche Anfrage aufs Mal — zwei pro Sekunde, sonst eine typisierte Absage statt einer Warteschlange.

Selbst betreiben

Sie brauchen:

  • Rust (stable über rustup) und Git; alle Befehle laufen aus der Wurzel des Korpus-Checkouts.

Aus der Wurzel des Korpus-Checkouts, Zeile für Zeile:

cargo run --locked --manifest-path mcp/gateway/Cargo.toml -- --root . --http 8700 --fedlex-fixtures mcp/servers/fedlex/tests/fixtures --lindas-fixtures mcp/servers/lindas/tests/fixtures

Danach sehen Sie:

gateway on 127.0.0.1:8700

Der Server spricht MCP über stdin/stdout und hat keine eigene Netzadresse; der einfachste Start ist hinter dem Gateway mit Fixtures. Direkt: cargo run --locked --manifest-path mcp/servers/fedlex/Cargo.toml -- --fixtures mcp/servers/fedlex/tests/fixtures, dann verbindet sich ein MCP-Client über stdio.

Testen

cargo test --locked --manifest-path mcp/servers/fedlex/Cargo.toml
  • Aufgezeichnete Fixtures: mcp/servers/fedlex/tests/fixtures
  • Läuft ohne Netz: jede Antwort kommt aus dem Repository, das Ergebnis ist bei jedem Lauf gleich.

Ansteuern

  • Öffentlich: noch nicht — Kein öffentlicher Endpunkt: weder Zone noch Route noch Deployment sind aufgeschaltet.
  • Lokal: über das Gateway: POST http://127.0.0.1:8700/tool/fedlex.

Verträge

  • Werkzeugvertrag v1 mcp/servers/fedlex/TOOLSET-v1.md
  • Regelwerk docs/reference/fedlex-data-rules.md
  • Engine-Manifest mcp/servers/fedlex/engine.manifest.json

Die fedlex-Zeilen der Werkzeugliste

curl -s http://127.0.0.1:8700/tools

Antwort (Auszug):

[{"id":"directory.get","domain":"directory","summary":"The directory envelope (v0.2, authority: manifest). …","weight":1}, … 52 rows]

Mitwirken

Änderungen laufen über Merge Request und dieselben Gates wie für den Verein: Formatierung, Clippy ohne Warnungen, Tests, Siegel- und Drift-Prüfungen. Sicherheitsmeldungen vertraulich an [email protected].

Die Basis-Stufe kostet nichts; wovon der Betrieb lebt, steht unter Über uns, Finanzierung.

Steckbrief

Zustand, Belege, Download und Abhängigkeiten stehen auf der Infrastruktur-Seite: fedlex-Engine.