OpenHelvetia Gateway
Swiss federal law (Fedlex) and political data (LINDAS) for agents, every answer with sources
使うべきか
品質と安全性
検出事項(75)
- LOWfedlex.extract_tables 内
- LOWfedlex.get_oc_act 内
- LOWfedlex.get_structure 内
- LOWfedlex.get_taxonomy 内
- LOWfedlex.resolve_sr 内
- LOWfedlex.resolve_vocabulary_label 内
- LOWlindas.resolve_label 内
- LOWdirectory.get 内
- LOWfacts.badge 内
- LOWfacts.latest 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"gateway": {
"url": "https://mcp.openhelvetia.swiss/mcp"
}
}
}リモートエンドポイント
https://mcp.openhelvetia.swiss/mcpstreamable-httpできること
ツール一覧
ツール(65)
🟢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.
入力スキーマ
{
"type": "object",
"properties": {}
}🟢facts.badge(domain, subject)
shields.io endpoint JSON for one subject, derived from the fact table — «no facts» in grey when nothing is recorded, never rounded up.
入力スキーマ
{
"type": "object",
"properties": {
"domain": {
"type": "string"
},
"subject": {
"description": "Subject key (e.g. «slug#0»).",
"type": "string"
}
},
"required": [
"domain",
"subject"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢facts.latest(as_of, domain)
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.
入力スキーマ
{
"type": "object",
"properties": {
"as_of": {
"description": "Optional bitemporal cutoff (RFC 3339).",
"type": [
"string",
"null"
]
},
"domain": {
"description": "Measured domain («checker», «benchmark»).",
"type": "string"
}
},
"required": [
"domain"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢fedlex.check_in_force(as_of, eli)
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.
入力スキーマ
{
"type": "object",
"properties": {
"as_of": {
"description": "ISO date YYYY-MM-DD.",
"type": "string"
},
"eli": {
"type": "string"
}
},
"required": [
"eli",
"as_of"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.check_quote(eid, eli_version, lang, 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.
入力スキーマ
{
"type": "object",
"properties": {
"eid": {
"description": "The element that was read: an eId such as «art_6» or a path eId\nsuch as «art_6/para_1» or «annex_3/lvl_u1/lvl_2».",
"type": "string"
},
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>` — the version that was read.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
},
"quote": {
"description": "The wording to check, verbatim; «…» or «[...]» marks an omission\n(each part must occur, in order).",
"type": "string"
}
},
"required": [
"eli_version",
"eid",
"quote"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.cite(eid, eli_version, lang)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eid": {
"description": "The place to label: an eId such as «art_7/para_1/lbl_b», «art_23_a»\nor «annex_3/lvl_u1».",
"type": "string"
},
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Label language (de|fr|it|en|rm) — the manifestation read and the\nabbreviation used; default de.",
"type": [
"string",
"null"
]
}
},
"required": [
"eli_version",
"eid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.compare_versions(eid, eli, from_version, lang, to_version)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eid": {
"description": "Optional scope: one element (article or path eId); default every article.",
"type": [
"string",
"null"
]
},
"eli": {
"description": "Fedlex ELI of the act (consolidation abstract).",
"type": "string"
},
"from_version": {
"description": "The older consolidation: a version IRI or a date (YYYY-MM-DD / YYYYMMDD).",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
},
"to_version": {
"description": "The newer consolidation: a version IRI or a date.",
"type": "string"
}
},
"required": [
"eli",
"from_version",
"to_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.detect_foreign_content(eli_version, lang)
Detect what the text tools hide in a Fassung: sections in another language (xml:lang) and <foreign> islands (formulas, graphics): use before quoting. norm.
入力スキーマ
{
"type": "object",
"properties": {
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
}
},
"required": [
"eli_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.explore_node(iri, limit)
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.
入力スキーマ
{
"type": "object",
"properties": {
"iri": {
"description": "Any Fedlex IRI (https://fedlex.data.admin.ch/…).",
"type": "string"
},
"limit": {
"description": "Edges per direction (default 20, at most 50).",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"required": [
"iri"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.extract_tables(eid, eli_version, lang)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eid": {
"description": "Optional scope: an eId (an annex level such as «annex_3/lvl_u1/lvl_2», an article).",
"type": [
"string",
"null"
]
},
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
}
},
"required": [
"eli_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.find_related_topic(eli, limit, sr)
Find acts in the same field of law via the legal taxonomy, by ELI or SR: use to discover neighbouring Erlasse; candidates only. hint.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "Fedlex ELI of the act — or give `sr`.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Max candidates (default 20, at most 50).",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"sr": {
"description": "SR number as an alternative entry, e.g. «832.10».",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.find_treaties(bilateral, country, limit, query)
Find treaty processes (Staatsverträge) by a title word, partner country IRI or bilaterality: use to locate a treaty before get_treaty_info. hint.
入力スキーマ
{
"type": "object",
"properties": {
"bilateral": {
"description": "true = bilateral only, false = multilateral only.",
"type": [
"boolean",
"null"
]
},
"country": {
"description": "Partner country as a Fedlex country vocabulary IRI.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Max hits (default 20, at most 50).",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"query": {
"description": "A word of the treaty title (case-insensitive).",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_article_history(eid, eli)
Trace which amendments and consolidations changed one Artikel (eId) of an act, with dates: use for «seit wann gilt Art. X so?». norm.
入力スキーマ
{
"type": "object",
"properties": {
"eid": {
"description": "Akoma-Ntoso eId of the element, e.g. «art_14a» or «art_2/para_1».",
"type": "string"
},
"eli": {
"description": "Fedlex ELI of the consolidation abstract.",
"type": "string"
}
},
"required": [
"eli",
"eid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_citations(direction, eli)
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.
入力スキーマ
{
"type": "object",
"properties": {
"direction": {
"description": "«in» | «out» (the foreseen-impact graph) or «cites» | «cited_by»\n(the formal citation graph, act level).",
"type": "string"
},
"eli": {
"type": "string"
}
},
"required": [
"eli",
"direction"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_consultation_documents(consultation)
List the position statements and result reports of one consultation IRI: use after get_consultations to read the genesis record. norm.
入力スキーマ
{
"type": "object",
"properties": {
"consultation": {
"description": "The consultation IRI (from get_consultations).",
"type": "string"
}
},
"required": [
"consultation"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_consultations(draft, eli, limit, status)
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.
入力スキーマ
{
"type": "object",
"properties": {
"draft": {
"description": "Or a draft IRI (from get_drafts).",
"type": [
"string",
"null"
]
},
"eli": {
"description": "Fedlex ELI of the act — its drafts are resolved first (at most five).",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Max consultations (default 20, at most 50).",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"status": {
"description": "Optional status filter: the consultation-status IRI or its last segment.",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_drafts(eli)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "Fedlex ELI of the consolidation abstract.",
"type": "string"
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_fga_documents(eli)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "Fedlex ELI of the consolidation abstract.",
"type": "string"
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_law_metadata(as_of, eli)
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.
入力スキーマ
{
"type": "object",
"properties": {
"as_of": {
"description": "Optional ISO date; absent = today, echoed back resolved.",
"type": [
"string",
"null"
]
},
"eli": {
"type": "string"
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_memorial(eli, limit)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "The AS publication ELI (https://fedlex.data.admin.ch/eli/oc/…), from get_oc_act.",
"type": "string"
},
"limit": {
"description": "Max acts of the issue (default 20, at most 50).",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_modifications(eid, eli_version, lang)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eid": {
"description": "Optional scope: only notes anchored at this eId or below.",
"type": [
"string",
"null"
]
},
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
}
},
"required": [
"eli_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_oc_act(eli)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "Fedlex ELI of the consolidation abstract.",
"type": "string"
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_references(eid, eli_version, lang, limit, offset)
List the references (Verweise) an act's text makes, with ELI where linked, optionally within one eId: use to follow cross-references. hint.
入力スキーマ
{
"type": "object",
"properties": {
"eid": {
"description": "Optional scope: only references made from this eId or below.",
"type": [
"string",
"null"
]
},
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Page size (default 200, at most 1000).",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"offset": {
"description": "Continuation: the `next_offset` of the previous answer.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"required": [
"eli_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_structure(depth, eli_version, lang)
Outline one consolidation (sections, articles with eId, num and heading): use when you know the act but not the article number. norm.
入力スキーマ
{
"type": "object",
"properties": {
"depth": {
"description": "«article» (default: the skeleton down to articles) or «full»\n(the whole tree down to paragraphs and items).",
"type": [
"string",
"null"
]
},
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
}
},
"required": [
"eli_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_subdivisions(eli)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "Fedlex ELI of the consolidation abstract.",
"type": "string"
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_taxonomy(eli)
Classify an act in the systematic collection (SR branch chain, notation, labels de/fr/it): use for «zu welchem Rechtsgebiet gehört X?». norm.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "Fedlex ELI of the consolidation abstract.",
"type": "string"
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.get_treaty_info(eli, lang)
Read a treaty process profile (title, signature, bilateral, partner countries, approving decree) for an eli/treaty IRI: use after find_treaties. norm.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "The treaty process IRI (https://fedlex.data.admin.ch/eli/treaty/…), from find_treaties.",
"type": "string"
},
"lang": {
"description": "Preferred title language (de|fr|it|en|rm); default de.",
"type": [
"string",
"null"
]
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.list_annexes(eli_version, lang)
List the annexes (Anhänge) of a consolidation with titles and path eIds (annex_u1/…): use before reading an Anhang with read_article. norm.
入力スキーマ
{
"type": "object",
"properties": {
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
}
},
"required": [
"eli_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.list_expressions(eli_version)
List the language versions and manifestations (XML, PDF) of one consolidation: use before reading to see whether a Fassung is PDF-only. norm.
入力スキーマ
{
"type": "object",
"properties": {
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
}
},
"required": [
"eli_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.list_versions(eli)
List every dated consolidation (Fassung) of an act, future ones included: use to pick the eli_version the reading tools need. norm.
入力スキーマ
{
"type": "object",
"properties": {
"eli": {
"description": "Fedlex ELI of the consolidation abstract.",
"type": "string"
}
},
"required": [
"eli"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.parse_reference(text)
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.
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"description": "A citation in plain text, e.g. «Art. 7 Abs. 1 lit. b LSV», «Anhang 3\nZiff. 2 LSV», «Art. 8 EMRK i.V.m. Art. 36 BV», «SR 832.10».",
"type": "string"
}
},
"required": [
"text"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.read_article(eid, eli_version, lang)
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.
入力スキーマ
{
"type": "object",
"properties": {
"eid": {
"description": "Akoma-Ntoso eId, e.g. «art_10a», or a path eId such as\n«art_2/para_1» or «annex_u1/lvl_u1».",
"type": "string"
},
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
}
},
"required": [
"eli_version",
"eid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.read_document(eli_version, lang, max_chars, offset)
Read a whole small act or Verordnung as capped Markdown (truncated flag, continuation offset): use for short acts; quote via read_article. norm.
入力スキーマ
{
"type": "object",
"properties": {
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
},
"max_chars": {
"description": "Character budget (default 120 000, at most 400 000).",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"offset": {
"description": "Continuation: the `next_offset` of the previous answer.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"required": [
"eli_version"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.resolve_consolidation_at(as_of, eli)
Resolve which consolidation (Fassung) of an act governed on an ISO date: use before reading text for a past or future Stichtag. norm.
入力スキーマ
{
"type": "object",
"properties": {
"as_of": {
"description": "ISO date YYYY-MM-DD.",
"type": "string"
},
"eli": {
"type": "string"
}
},
"required": [
"eli",
"as_of"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.resolve_sr(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.
入力スキーマ
{
"type": "object",
"properties": {
"sr": {
"description": "Systematic (SR) number, e.g. «832.10».",
"type": "string"
}
},
"required": [
"sr"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.resolve_vocabulary_label(lang, query, vocabulary)
Look up a Fedlex vocabulary term (enforcement-status, language, …) by label or IRI: use to decode a coded value from another answer. hint.
入力スキーマ
{
"type": "object",
"properties": {
"lang": {
"description": "Label language (de|fr|it|en|rm); default de.",
"type": [
"string",
"null"
]
},
"query": {
"description": "A label fragment (case-insensitive, any language) or a\nvocabulary IRI to decode.",
"type": "string"
},
"vocabulary": {
"description": "Scheme id: «enforcement-status», «subdivision-type»,\n«legal-taxonomy», «impact-type», «resource-type», «language», …",
"type": "string"
}
},
"required": [
"vocabulary",
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.search_law(limit, query)
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.
入力スキーマ
{
"type": "object",
"properties": {
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"query": {
"type": "string"
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fedlex.search_text(eli_version, lang, limit, query)
Find where a word occurs inside ONE consolidation (hits with eId and Artikel): use before read_article when the article is unknown. hint.
入力スキーマ
{
"type": "object",
"properties": {
"eli_version": {
"description": "Dated consolidation: `<abstract-eli>/<YYYYMMDD>`.",
"type": "string"
},
"lang": {
"description": "Manifestation language (de|fr|it|en|rm); default de. Which\nlanguages a version carries as XML is the graph's answer —\nfedlex.list_expressions shows it before a read.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Max hits (default 20, at most 100); `total` counts beyond it.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"query": {
"description": "Word or phrase; case-insensitive substring.",
"type": "string"
}
},
"required": [
"eli_version",
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢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.
入力スキーマ
{
"type": "object",
"properties": {}
}🟢i14y.get_concept(concept_id, lang)
Show one concept's record — type, value type, version, validity (Konzept, Codeliste): use before reading a code list's entries. norm.
入力スキーマ
{
"type": "object",
"properties": {
"concept_id": {
"description": "The concept's `id` from `i14y.list_concepts`.",
"type": "string"
},
"lang": {
"type": [
"string",
"null"
]
}
},
"required": [
"concept_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.get_data_service(data_service_id, lang)
Show one registered interface's record — endpoints, OpenAPI links, licence, served datasets (API, Endpunkt): use to reach the service. norm.
入力スキーマ
{
"type": "object",
"properties": {
"data_service_id": {
"description": "The service's `id` from `i14y.list_data_services`.",
"type": "string"
},
"lang": {
"type": [
"string",
"null"
]
}
},
"required": [
"data_service_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.get_dataset(dataset_id, lang)
Show one dataset's full record — contact, coverage, every distribution with its licence and download address (Lizenz, Download): use before reuse. norm.
入力スキーマ
{
"type": "object",
"properties": {
"dataset_id": {
"description": "The record's `id` as a hit or a list row carries it — a GUID,\nnever the publisher's `identifier`.",
"type": "string"
},
"lang": {
"type": [
"string",
"null"
]
}
},
"required": [
"dataset_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.get_dataset_distributions(dataset_id, lang)
List a dataset's distributions — format, licence, download and access address (Datei, Lizenz, Format): use for «where do I get the data». norm.
入力スキーマ
{
"type": "object",
"properties": {
"dataset_id": {
"description": "The record's `id` as a hit or a list row carries it — a GUID,\nnever the publisher's `identifier`.",
"type": "string"
},
"lang": {
"type": [
"string",
"null"
]
}
},
"required": [
"dataset_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.list_catalogs(lang, limit, page)
List the catalogues that feed I14Y, each one body's collection (Katalog, opendata.swiss, Bundesamt): use to see who contributes. norm.
入力スキーマ
{
"type": "object",
"properties": {
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"description": "Catalogues per page, 1–100, default 50.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"page": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.list_concepts(lang, limit, page, publisher, registration_status)
List the harmonised concepts and code lists of the administration (Konzept, Codeliste, Nomenklatur, Merkmal): use to find a code list by publisher. norm.
入力スキーマ
{
"type": "object",
"properties": {
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"page": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"publisher": {
"type": [
"string",
"null"
]
},
"registration_status": {
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.list_data_services(access_rights, lang, limit, page, publisher, ...)
List the registered machine interfaces of Swiss public bodies with their endpoints (API, Schnittstelle, Datendienst): use before building a scraper. norm.
入力スキーマ
{
"type": "object",
"properties": {
"access_rights": {
"type": [
"string",
"null"
]
},
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"page": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"publisher": {
"type": [
"string",
"null"
]
},
"registration_status": {
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.list_datasets(access_rights, lang, limit, page, publisher, ...)
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.
入力スキーマ
{
"type": "object",
"properties": {
"access_rights": {
"description": "PUBLIC | RESTRICTED | NON_PUBLIC | CONFIDENTIAL. A listing is\nmetadata, never a grant of access.",
"type": [
"string",
"null"
]
},
"lang": {
"description": "Label language (de|fr|it|en|rm); default de.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Records per page, 1–100, default 25.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"page": {
"description": "1-based page, default 1.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"publisher": {
"description": "Publisher code («CH_BAZG»), from `i14y.list_publishers`.",
"type": [
"string",
"null"
]
},
"registration_status": {
"description": "One of the eight: Incomplete, Candidate, Recorded, Qualified,\nStandard, PreferredStandard, Superseded, Retired.",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.list_public_services(lang, limit, page, publisher, registration_status)
List the registered public services with their channels (Behördenleistung, Dienstleistung, Verwaltung): use for what an authority offers citizens. norm.
入力スキーマ
{
"type": "object",
"properties": {
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"page": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"publisher": {
"type": [
"string",
"null"
]
},
"registration_status": {
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.list_publishers(identifier, lang, limit, page, uid)
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.
入力スキーマ
{
"type": "object",
"properties": {
"identifier": {
"description": "Exact publisher code («CH_BAZG»).",
"type": [
"string",
"null"
]
},
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"description": "Publishers per page, 1–100, default 50.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"page": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"uid": {
"description": "Exact Swiss UID as the register writes it («CHE116244755»).",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.search_catalog(lang, limit, page, publishers, query, ...)
Search the national data catalogue I14Y by words (Datensatz, Schnittstelle, API, Behördenleistung, Codeliste): use first, to find who publishes what. hint.
入力スキーマ
{
"type": "object",
"properties": {
"lang": {
"description": "The language searched AND served (de|fr|it|en|rm); default de.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Hits per page, 1–100, default 25.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"page": {
"description": "1-based page, default 1.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"publishers": {
"description": "Publisher CODES — the `identifier` `i14y.list_publishers`\nserves («CH1» is the Federal Statistical Office) — never a name.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"query": {
"description": "Free text, e.g. «Sonderpädagogik», «Zoll», «API»; empty lists\nthe whole index one page at a time. Matched in `lang`.",
"type": "string"
},
"themes": {
"description": "Theme CODES as a hit carries them under `themes[].code`\n(«103» is Bildung) — never a word.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"types": {
"description": "Restrict to resource types: Dataset | DataService |\nPublicService | Concept | MappingTable. Each of them answers.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢i14y.search_codelist_entries(concept_id, lang, limit, page, query)
List the codes of one code-list concept, paged, with names and validity (Code, Codeliste, Kanton, Geschlecht, Nomenklatur): use to resolve official codes. norm.
入力スキーマ
{
"type": "object",
"properties": {
"concept_id": {
"description": "The `id` of a concept whose `concept_type` is CodeList.",
"type": "string"
},
"lang": {
"description": "The language matched and served (de|fr|it|en|rm); default de.",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Entries per page, 1–200, default 50.",
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"page": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"query": {
"description": "A word of an entry's name, `*` for any characters; absent =\nevery entry. Matched in `lang` only.",
"type": [
"string",
"null"
]
}
},
"required": [
"concept_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢lindas.describe(iri, lang, limit, offset)
Show everything the holding says about one IRI (a cube, an observation, a Kanton): use to follow an address you were handed. norm.
入力スキーマ
{
"type": "object",
"properties": {
"iri": {
"description": "Any IRI — the store is asked about it; no host is fetched.",
"type": "string"
},
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"offset": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"required": [
"iri"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢lindas.describe_cube(cube, lang, limit, offset)
Show a cube's declared dimensions and profile — the record may carry more: use to learn the filters a question needs. hint.
入力スキーマ
{
"type": "object",
"properties": {
"cube": {
"description": "A cube IRI of the served scope, e.g.\n`https://politics.ld.admin.ch/political-rights/popular-vote/1`.",
"type": "string"
},
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"offset": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"required": [
"cube"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢lindas.dimension_values(cube, dimension, lang, limit)
List the values one dimension takes (Kantone, Abstimmungstypen, Geschäftsstände): use to filter by IRI instead of by text. hint.
入力スキーマ
{
"type": "object",
"properties": {
"cube": {
"type": "string"
},
"dimension": {
"description": "The dimension IRI as `lindas.describe_cube` served it — never\nbuilt by appending to the cube IRI.",
"type": "string"
},
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"required": [
"cube",
"dimension"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢lindas.find_cube(lang, limit, query)
Find the cube behind a question by a word of its name («Volksinitiative», «Petition», «Parteienregister»): use before reading rows. hint.
入力スキーマ
{
"type": "object",
"properties": {
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"query": {
"description": "A word of the cube's name, 2–100 characters\n(«Abstimmung», «Interessenbindung»).",
"type": "string"
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢lindas.list_cubes(family, lang, limit, offset)
List the 44 political data cubes of the Confederation (Abstimmungen, Wahlen, Bundesrat, Interessenbindungen): use to see what data exists. norm.
入力スキーマ
{
"type": "object",
"properties": {
"family": {
"description": "One of `fc`, `fch/apg`, `national-council-election`,\n`political-rights`; absent = all 44.",
"type": [
"string",
"null"
]
},
"lang": {
"description": "Label language (de|fr|it|en|rm); default de. The answer names\nthe language it served, and «und» where a name carries no tag.",
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"offset": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢lindas.list_versions(cube)
List the versions of a cube family (Nationalratswahl 2019/2023/2027): use before reading a year; nothing links old to new. norm.
入力スキーマ
{
"type": "object",
"properties": {
"cube": {
"description": "Any version of the family, e.g.\n`…/national-council-election/candidates/2019`.",
"type": "string"
}
},
"required": [
"cube"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢lindas.observations(cube, dimensions, filters, lang, limit, ...)
Read a cube's rows with filters (Abstimmung, Referendum, Volksinitiative, Ständemehr, Kanton, Datum): use for the figures themselves. norm.
入力スキーマ
{
"type": "object",
"properties": {
"cube": {
"type": "string"
},
"dimensions": {
"description": "The dimension IRIs to project — the cells a row comes back\nwith. Absent = every cell the row carries, which is up to 51 in\nthe vote cube; naming the three or four a question needs is one\ncall instead of paging the same table at a smaller limit.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"filters": {
"description": "Filters, one per entry: the object `{dimension, value}` —\n`{\"dimension\": \"https://politics.ld.admin.ch/political-rights/popular-vote/date\",\n\"value\": \"1971-02-07\"}` — or, equally accepted, the string\n`dimension=value`. The dimension is the full IRI\n`lindas.describe_cube` served, the value an IRI or a plain\nliteral. A dimension the shape does not declare is admitted\nwhen the cube's observations carry it, and the answer says so.",
"items": {
"anyOf": [
{
"additionalProperties": false,
"description": "`{dimension, value}` — the canonical form.",
"properties": {
"dimension": {
"description": "The dimension IRI as `lindas.describe_cube` served it.",
"type": "string"
},
"value": {
"description": "An IRI (matched exactly) or a plain literal.",
"type": "string"
}
},
"required": [
"dimension",
"value"
],
"type": "object"
},
{
"description": "`dimension=value` — the FIRST `=` separates them.",
"type": "string"
}
],
"description": "One filter: the object `{dimension, value}`, or the string\n`dimension=value`."
},
"type": [
"array",
"null"
]
},
"lang": {
"type": [
"string",
"null"
]
},
"limit": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
},
"offset": {
"format": "uint32",
"minimum": 0,
"type": [
"integer",
"null"
]
}
},
"required": [
"cube"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢lindas.resolve_label(iri, lang)
Resolve an IRI to its label in one language with a fallback (Kanton, Partei, Gremium, Interessenbindung): use to name a value. hint.
入力スキーマ
{
"type": "object",
"properties": {
"iri": {
"description": "Any IRI, of any host (canton, country, legal form, gender).",
"type": "string"
},
"lang": {
"type": [
"string",
"null"
]
}
},
"required": [
"iri"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢manifest.get(slug)
One entry's manifest by slug. A slug the directory does not hold is a not-found error carrying the E21 admission rule.
入力スキーマ
{
"type": "object",
"properties": {
"slug": {
"description": "Entry slug (filename = @id slug, oh-validate-enforced).",
"type": "string"
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢meta.capabilities
The platform capability register with published per-client coverage — tool names on this server ARE the capability ids.
入力スキーマ
{
"type": "object",
"properties": {}
}🟢meta.schemas(names)
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.
入力スキーマ
{
"type": "object",
"properties": {
"names": {
"description": "The capability ids whose input schemas are wanted, as stage one\nlisted them.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"names"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢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).
入力スキーマ
{
"type": "object",
"properties": {}
}🟢publish.info
The publishing path — the only way into the directory: the three E21/E13 routes plus the honest interim state.
入力スキーマ
{
"type": "object",
"properties": {}
}🟢standard.artifacts
The manifest standard's sealed artifact register: path, canonical IRI, draft/published status and SHA-256 per contract file.
入力スキーマ
{
"type": "object",
"properties": {}
}コミュニティ
エビデンス