プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Fedlex MCP

作者:malkreideバージョン 2.1.0i★ –iパソコンで動く
レジストリ名io.github.malkreide/fedlex-mcp

インストール

概要

作者による説明(英語の原文)

Swiss federal law, consultations (Fedlex) & TERMDAT terminology (LINDAS) via SPARQL

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: 法律・行政データ

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • レジストリには、入力が必要なキーは載っていません。

必要なもの

  • PyPIPythonのuvのインストール(uvxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "fedlex": {
      "command": "uvx",
      "args": [
        "fedlex-mcp"
      ]
    }
  }
}

ターミナルでこれを実行します

claude mcp add fedlex -- uvx fedlex-mcp

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "fedlex": {
      "command": "uvx",
      "args": [
        "fedlex-mcp"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "fedlex": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "fedlex-mcp"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント malkreide で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

法律・行政データのほかのサーバーとの比較i

  • このカテゴリのほかの1731件のうち0%よりスターが多い
  • このカテゴリのほかの1731件のうち45%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの1731件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Fedlex MCPは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(2.1.0)がレジストリに届いたのは41 日前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。

代わりに使えるものは?

同じカテゴリには:Agentum Entity Resolver, Contract Compass, Agent Data Tools: Company, compliance and checks

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Contract Compass

作者:sallim-app

Korean public procurement law: rule-engine rulings, statutes search, live court precedents

クラウドで動く今日更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

:switzerland: Part of the [Swiss Public Data MCP Portfolio](https://github.com/malkreide)

:balance_scale: fedlex-mcp

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


Overview

fedlex-mcp connects AI assistants (Claude) with three official Swiss SPARQL data sources:

  1. Federal law via the Fedlex SPARQL endpoint — the Systematic Compilation (SR), Official Compilation (AS), Federal Gazette (BBl) and treaties.
  2. Consultations (Vernehmlassungen) via the *same* Fedlex endpoint (jolux:Consultation) — the pre-parliamentary phase in which anyone can comment on a draft.
  3. TERMDAT, the Federal Chancellery's terminology database, via the LINDAS SPARQL endpoint — official term equivalents across de/fr/it/rm/en.

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.*


Features

  • :balance_scale: 12 tools, 2 resources across federal law, consultations and terminology
  • :mag: SPARQL-powered — two isolated endpoints (Fedlex + LINDAS), no shared failure mode
  • :globe_with_meridians: 5 languages — German, French, Italian, Romansh, plus English for terminology
  • :unlock: No API key required — all data under open reuse licences
  • :cloud: Dual transport — stdio (Claude Desktop) + Streamable HTTP (cloud)

Anchor demo query

*"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 topic filter

expands to a disclosed keyword union (Bildung, Schule, Berufsbildung,

Hochschule, …) and reports exactly which terms it searched.


Prerequisites

  • Python 3.11+
  • uv (recommended) or pip

Installation

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 -->

Installation from source

# Clone the repository

git clone https://github.com/malkreide/fedlex-mcp.git cd fedlex-mcp

Install

pip install -e .

or with uv:

uv pip install -e .

Or with uvx (no permanent installation):

uvx fedlex-mcp

Quickstart

# stdio (for Claude Desktop)

python -m fedlex_mcp.server

Streamable HTTP (port 8000)

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?"*


Configuration

Claude Desktop

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:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
Cloud Deployment (SSE for browser access)

For use via claude.ai in the browser (e.g. on managed workstations without local software):

Render.com (recommended):

  1. Push/fork the repository to GitHub
  2. On render.com: New Web Service -> connect GitHub repo
  3. Set start command: python -m fedlex_mcp.server --http --port 8000
  4. In claude.ai under Settings -> MCP Servers, add: https://your-app.onrender.com/sse

*"stdio for the developer laptop, SSE for the browser."*


Demo


Available Tools

#ToolSourceDescription
1fedlex_search_lawsFedlexSearch the Systematic Compilation (SR) by keyword in title
2fedlex_get_law_by_srFedlexGet a law by its SR number (e.g. 235.1 = Data Protection Act)
3fedlex_get_recent_publicationsFedlexLatest publications from the Official Compilation (AS)
4fedlex_get_upcoming_changesFedlexLaws entering into force soon (legal monitoring)
5fedlex_search_gazetteFedlexSearch the Federal Gazette (BBl)
6fedlex_get_law_historyFedlexAll versions of a law (version history)
7fedlex_search_treatiesFedlexInternational treaties (SR numbers starting with 0.)
8fedlex_get_open_consultationsFedlexDeadline monitoring — open consultations (eventEndDate >= today, Europe/Zurich); each with days_remaining + derived status, sorted by shortest deadline; optional topic/keyword
9fedlex_search_consultationsFedlexFull-text search over consultation title/description, with filters (topic, status, deadline range, office)
10fedlex_get_consultationFedlexDetail for one eventId: deadline, days_remaining, office, derived status, documents
11termdat_lookup_termLINDASTerm → equivalents in de/fr/it/rm/en incl. definition
12termdat_get_conceptLINDASFull TERMDAT entry for a URI or ID
Example Use Cases
QueryTool
*"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 →


Architecture

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 | +------------------------------+

Data Model

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

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く