MCP serverswiss.openhelvetia/gateway
Swiss federal law (Fedlex) and political data (LINDAS) for agents, every answer with sources
Overview
Score?
UNRATED 0.779
of what a free look can see, on 25 looks
Looks
31
last 11 hr ago
Tools
65
changed 7 days ago
More info
URL
mcp.openhelvetia.swiss/mcp
streamable-http
Says it is
oh-mcp-gateway 0.1.0
protocol 2025-06-18
In the record since
29 days ago
Among servers18,413 with a card
0median 0.606 · this server 0.779 · highest on record 0.8561
Toolsfrom sha256:1596eaa98e…668c4a · +0 −0 7 days ago
| Tool | Schema |
|---|---|
| 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 |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| i14y.get_concept Show one concept's record — type, value type, version, validity (Konzept, Codeliste): use before reading a code list's entries. norm. |
input · no output |
| i14y.get_data_service Show one registered interface's record — endpoints, OpenAPI links, licence, served datasets (API, Endpunkt): use to reach the service. norm. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| i14y.list_catalogs List the catalogues that feed I14Y, each one body's collection (Katalog, opendata.swiss, Bundesamt): use to see who contributes. norm. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| i14y.list_public_services List the registered public services with their channels (Behördenleistung, Dienstleistung, Verwaltung): use for what an authority offers citizens. norm. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| lindas.dimension_values List the values one dimension takes (Kantone, Abstimmungstypen, Geschäftsstände): use to filter by IRI instead of by text. hint. |
input · no output |
| lindas.find_cube Find the cube behind a question by a word of its name («Volksinitiative», «Petition», «Parteienregister»): use before reading rows. hint. |
input · no output |
| lindas.list_cubes List the 44 political data cubes of the Confederation (Abstimmungen, Wahlen, Bundesrat, Interessenbindungen): use to see what data exists. norm. |
input · no output |
| 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. |
input · no output |
| lindas.observations Read a cube's rows with filters (Abstimmung, Referendum, Volksinitiative, Ständemehr, Kanton, Datum): use for the figures themselves. norm. |
input · no output |
| 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. |
input · no output |
| 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. |
input · no output |
| meta.capabilities The platform capability register with published per-client coverage — tool names on this server ARE the capability ids. |
input · no output |
| 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 |
input · no output |
| 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, |
input · no output |
| publish.info The publishing path — the only way into the directory: the three E21/E13 routes plus the honest interim state. |
input · no output |
| standard.artifacts The manifest standard's sealed artifact register: path, canonical IRI, draft/published status and SHA-256 per contract file. |
input · no output |
Verify it yourself
npx teppi-check https://mcp.openhelvetia.swiss/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1RE58CK7AAKYTSY95V1NJRV