mcpbeat Sign in

OpenHelvetia Gateway MCP Server

by openhelvetia Your server? Claim it
answering

OpenHelvetia Gateway is answering right now. Last checked 14 min ago. It exposes 65 tools.

Swiss federal law (Fedlex) and political data (LINDAS) for agents, every answer with sources

Uptime history 59 days of history · worst day 95%
59 days agonow
100.0%
Uptime 24h
91 of 91 checks
65
Tools
read from the server
253 ms
Response time
average over 24h
open, no key
Access
streamable-http

What changed 17

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 7 September 2026. No other catalogue keeps this.

26 Sep 2 tool descriptions were rewritten lindas.describe_cube, manifest.get
26 Sep a tool changed the parameters it asks for lindas.observations
7 Sep 13 tools appeared i14y.api_status, i14y.get_concept, i14y.get_data_service and 10 more
7 Sep a tool changed the parameters it asks for lindas.observations

OpenHelvetia Gateway missed one check this week

Everything else answered, so this is steady rather than shaky. We check every 15 minutes, which is how a one-off gets told apart from the start of a pattern, and how you hear about the next one within the hour instead of from your users.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 14 min ago.

run in your terminal
claude mcp add gateway --transport http https://mcp.openhelvetia.swiss/mcp
Settings → Connectors → Add custom connector, then paste this address
https://mcp.openhelvetia.swiss/mcp
~/.codex/config.toml
[mcp_servers.gateway]
url = "https://mcp.openhelvetia.swiss/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "gateway": {
      "url": "https://mcp.openhelvetia.swiss/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "gateway": {
      "type": "http",
      "url": "https://mcp.openhelvetia.swiss/mcp"
    }
  }
}

Available tools 65

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

fedlex
fedlex.check_in_force
Check whether an act was in force on a date; false is a valid answer, never an error: use for «gilt das noch?» questions. norm.
fedlex.check_quote
Check a quote (Zitat) against the norm text of one element: use before citing, to prove the wording is in what was read (Belegkette). norm.
fedlex.cite
Cite an element as its canonical Fundstelle («Art. 7 Abs. 1 Bst. b LSV») from eli_version and eId: use to label a read place in the Belegkette. norm.
fedlex.compare_versions
Compare an element or every article between two Fassungen of an act — added, removed, changed paragraphs with wording: use for «was hat sich geändert?». norm.
fedlex.detect_foreign_content
Detect what the text tools hide in a Fassung: sections in another language (xml:lang) and <foreign> islands (formulas, graphics): use before quoting. norm.
fedlex.explore_node
Explore a JOLux node's edges (predicates and neighbours, both directions, capped): use to debug what the graph holds about an IRI; never as proof. hint.
fedlex.extract_tables
Extract the tables of a consolidation or of one element (annex limit values, tariffs) as header and rows: use when a norm is a table, not prose. norm.
fedlex.find_related_topic
Find acts in the same field of law via the legal taxonomy, by ELI or SR: use to discover neighbouring Erlasse; candidates only. hint.
fedlex.find_treaties
Find treaty processes (Staatsverträge) by a title word, partner country IRI or bilaterality: use to locate a treaty before get_treaty_info. hint.
fedlex.get_article_history
Trace which amendments and consolidations changed one Artikel (eId) of an act, with dates: use for «seit wann gilt Art. X so?». norm.
fedlex.get_citations
List an act's relations: cites|cited_by (formal citations, act level) or in|out (foreseen impacts, mostly consultation drafts): use to see who cites X. norm.
fedlex.get_consultation_documents
List the position statements and result reports of one consultation IRI: use after get_consultations to read the genesis record. norm.
fedlex.get_consultations
List the consultations (Vernehmlassungen) of an act's drafts or of one draft, with status and dates: use for the genesis, never for law in force. hint.
fedlex.get_drafts
List the legislative drafts (Entwürfe, eli/proj) an act came from, with the Curia Vista number: use as the entry to consultations and materials. norm.
fedlex.get_fga_documents
List the Federal Gazette (BBl) documents of an act's genesis — Botschaft, reports — with genre and date: use for materials, never for law in force. norm.
fedlex.get_law_metadata
Read the JOLux profile of an act (titles de/fr/it, status, dates, identifier) for an ELI: use to confirm a search hit before you cite. norm.
fedlex.get_memorial
List the AS/BBl issue (memorial) an oc publication appeared in and the acts of that issue: use after get_oc_act to locate the volume. norm.
fedlex.get_modifications
List the amendment notes («Fassung gemäss …», AS refs) per element of a consolidation: use for «wann und wodurch wurde Art. X geändert?». norm.
fedlex.get_oc_act
Resolve an act's binding AS/RO publication (oc ELI, date, genre, office, memorial) from its consolidation ELI: use to cite the Amtliche Sammlung. norm.
fedlex.get_references
List the references (Verweise) an act's text makes, with ELI where linked, optionally within one eId: use to follow cross-references. hint.
fedlex.get_structure
Outline one consolidation (sections, articles with eId, num and heading): use when you know the act but not the article number. norm.
fedlex.get_subdivisions
List the subdivisions JOLux knows for an act (amended elements only, a gap catalogue): use to see which Artikel carry amendments; outline: get_structure. norm.
fedlex.get_taxonomy
Classify an act in the systematic collection (SR branch chain, notation, labels de/fr/it): use for «zu welchem Rechtsgebiet gehört X?». norm.
fedlex.get_treaty_info
Read a treaty process profile (title, signature, bilateral, partner countries, approving decree) for an eli/treaty IRI: use after find_treaties. norm.
fedlex.list_annexes
List the annexes (Anhänge) of a consolidation with titles and path eIds (annex_u1/…): use before reading an Anhang with read_article. norm.
fedlex.list_expressions
List the language versions and manifestations (XML, PDF) of one consolidation: use before reading to see whether a Fassung is PDF-only. norm.
fedlex.list_versions
List every dated consolidation (Fassung) of an act, future ones included: use to pick the eli_version the reading tools need. norm.
fedlex.parse_reference
Parse a citation («Art. 7 Abs. 1 lit. b LSV») into act, article eId and path proposal: use to turn a quoted Fundstelle into what read_article can open. hint.
fedlex.read_article
Read one element (Artikel, Absatz, Anhang) of a dated consolidation by eId, e.g. art_6 or annex_u1/lvl_u1: use to quote a norm. norm.
fedlex.read_document
Read a whole small act or Verordnung as capped Markdown (truncated flag, continuation offset): use for short acts; quote via read_article. norm.
fedlex.resolve_consolidation_at
Resolve which consolidation (Fassung) of an act governed on an ISO date: use before reading text for a past or future Stichtag. norm.
fedlex.resolve_sr
Resolve an SR number (e.g. 832.10) to the act's ELI, titles and in-force status: use when a question names an SR; predecessors stay visible. norm.
fedlex.resolve_vocabulary_label
Look up a Fedlex vocabulary term (enforcement-status, language, …) by label or IRI: use to decode a coded value from another answer. hint.
fedlex.search_law
Search acts by title keyword or official abbreviation (KVG, StPO, OR): use when you know the name but not the SR or ELI; in-force acts rank first. hint.
fedlex.search_text
Find where a word occurs inside ONE consolidation (hits with eId and Artikel): use before read_article when the article is unknown. hint.
i14y
i14y.api_status
Check whether the I14Y catalogue answers, register by register, so «no data» and «source down» stay apart: use before retrying a failed call. norm.
i14y.get_concept
Show one concept's record — type, value type, version, validity (Konzept, Codeliste): use before reading a code list's entries. norm.
i14y.get_data_service
Show one registered interface's record — endpoints, OpenAPI links, licence, served datasets (API, Endpunkt): use to reach the service. norm.
i14y.get_dataset
Show one dataset's full record — contact, coverage, every distribution with its licence and download address (Lizenz, Download): use before reuse. norm.
i14y.get_dataset_distributions
List a dataset's distributions — format, licence, download and access address (Datei, Lizenz, Format): use for «where do I get the data». norm.
i14y.list_catalogs
List the catalogues that feed I14Y, each one body's collection (Katalog, opendata.swiss, Bundesamt): use to see who contributes. norm.
i14y.list_concepts
List the harmonised concepts and code lists of the administration (Konzept, Codeliste, Nomenklatur, Merkmal): use to find a code list by publisher. norm.
i14y.list_data_services
List the registered machine interfaces of Swiss public bodies with their endpoints (API, Schnittstelle, Datendienst): use before building a scraper. norm.
i14y.list_datasets
List the registered datasets, paged, with publisher, themes and access right (Datensätze, Metadaten, Open Data): use for a census or a publisher's list. norm.
i14y.list_public_services
List the registered public services with their channels (Behördenleistung, Dienstleistung, Verwaltung): use for what an authority offers citizens. norm.
i14y.list_publishers
List the bodies that publish into I14Y with identifier and Swiss UID (Herausgeber, Bundesamt, Kanton, UID): use to find a publisher's code for a filter. norm.
i14y.search_catalog
Search the national data catalogue I14Y by words (Datensatz, Schnittstelle, API, Behördenleistung, Codeliste): use first, to find who publishes what. hint.
i14y.search_codelist_entries
List the codes of one code-list concept, paged, with names and validity (Code, Codeliste, Kanton, Geschlecht, Nomenklatur): use to resolve official codes. norm.
lindas
lindas.describe
Show everything the holding says about one IRI (a cube, an observation, a Kanton): use to follow an address you were handed. norm.
lindas.describe_cube
Show a cube's declared dimensions and profile — the record may carry more: use to learn the filters a question needs. hint.
lindas.dimension_values
List the values one dimension takes (Kantone, Abstimmungstypen, Geschäftsstände): use to filter by IRI instead of by text. hint.
lindas.find_cube
Find the cube behind a question by a word of its name («Volksinitiative», «Petition», «Parteienregister»): use before reading rows. hint.
lindas.list_cubes
List the 44 political data cubes of the Confederation (Abstimmungen, Wahlen, Bundesrat, Interessenbindungen): use to see what data exists. norm.
lindas.list_versions
List the versions of a cube family (Nationalratswahl 2019/2023/2027): use before reading a year; nothing links old to new. norm.
lindas.observations
Read a cube's rows with filters (Abstimmung, Referendum, Volksinitiative, Ständemehr, Kanton, Datum): use for the figures themselves. norm.
lindas.resolve_label
Resolve an IRI to its label in one language with a fallback (Kanton, Partei, Gremium, Interessenbindung): use to name a value. hint.
meta
meta.capabilities
The platform capability register with published per-client coverage — tool names on this server ARE the capability ids.
meta.schemas
Stage two of two-stage discovery: the full input schemas of the named tools, byte-identical to what tools/list carries, because both are read from the same router. An unknown id is refused by name rather than silently dropped.
meta.tools
Stage one of two-stage discovery: every mounted tool with its capability id, domain, one-line summary and budget weight — and NO input schemas. Ask this first to learn what exists, then pull the schemas of the few tools you intend to call (meta.schemas). Context economy as a capability, not a client convention (E16 Ziff. 1).
facts
facts.badge
shields.io endpoint JSON for one subject, derived from the fact table — «no facts» in grey when nothing is recorded, never rounded up.
facts.latest
Latest effective facts per subject+metric from the versioned fact table — the bitemporal as_of cutoff is exposed; an absent store is the honest empty view.
directory
directory.get
The directory envelope (v0.2, authority: manifest). Real entries only — a data source enters on one of three admission routes (E21); an empty list is the honest state, never padded.
manifest
manifest.get
One entry's manifest by slug. A slug the directory does not hold is a not-found error carrying the E21 admission rule.
publish
publish.info
The publishing path — the only way into the directory: the three E21/E13 routes plus the honest interim state.
standard
standard.artifacts
The manifest standard's sealed artifact register: path, canonical IRI, draft/published status and SHA-256 per contract file.

Endpoints

URLTransportStateLatencyChecked
https://mcp.openhelvetia.swiss/mcp streamable-http answering 238 ms 14 min ago

Alternatives to OpenHelvetia Gateway

same job, measured the same way
Dataville
by dataville

SEC filings, Wikipedia, arXiv, US Census and more for AI agents, with every answer source-linked.

105 installs/wk 2 tools answering
Statistikdata
by statistikdata

Swedish open data for Claude and other AI assistants - verified, with sources.

answering
open-signals
by civops-platform

Public hazard, water, weather and EPA data with source, age and licence on every reading.

9 tools answering
InfraMap
by inframap

US power plant, generation, price, curtailment and water data, with sources on every result.

answering
Pipeworx
by pipeworx-io

Live data gateway for AI — 3,300+ tools across 750+ sources, with citations

20 tools answering
Holiday Calendar
by modernmustardseed

U.S. federal holidays with observed dates and business-day math. Example from an open-source kit.

5 tools answering
SuperLocalMemory
by qualixar

Local-first memory for AI agents: recall with sources, answer checks, documents, mesh, governance.

2 500 installs/wk local only
GroundRules - US Law Text
by agentlookups

The original text of US federal and state law, with official sources; never a summary or advice.

4 tools answering

OpenHelvetia Gateway — questions

Answers built from our own checks of this server.

What can OpenHelvetia Gateway do?
It exposes 65 tools, read directly from the server on our last check. Among them: directory.get, facts.badge, facts.latest, fedlex.check_in_force, fedlex.check_quote, fedlex.cite and 59 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is OpenHelvetia Gateway mostly used for?
Its tools cluster around fedlex, i14y and lindas. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is OpenHelvetia Gateway working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 253 ms. The bar chart above shows every period we have measured.
How do I connect OpenHelvetia Gateway?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does OpenHelvetia Gateway need an API key?
No. OpenHelvetia Gateway completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 65 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is OpenHelvetia Gateway?
It answers our handshake in 253 ms on average, which is faster than 56% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.