Skip to main content
Glama

openlex__zhlaw_get_article

Read-onlyIdempotent

Extract the exact text of a specific article from a Zurich law when you know the law and article number. Returns title, paragraphs, and full text; supports standard, letter, and bis numbers.

Instructions

Extrahiert einen einzelnen Artikel aus einem Zürcher Gesetz.

Wenn der genaue Wortlaut eines bestimmten Artikels benötigt wird. Voraussetzung: Gesetz und Artikelnummer sind bekannt. Um zuerst relevante Artikel zu finden: openlex__zhlaw_search_articles nutzen.

Unterstützt Standard-Artikelnummern (28), Buchstaben-Artikel (28a) und Bis-Artikel (28bis). Liefert Titel, alle Absätze und Volltext des Artikels. Gibt count=0 zurück wenn der Artikel nicht existiert — Artikelnummer ohne 'Art.' angeben (nur die Zahl).

law_identifier='VSG', article_number='28'

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
countNo
sourceNoKanton Zürich Rechtssammlung — HuggingFace rcds/swiss_legislation (CC-BY-SA 4.0) & zh.ch
messageNo
resultsNo
provenanceYes
corpus_noteNoBestandsstand 2023-01-01 — die jüngste Fassung im Datensatz stammt von diesem Datum. Spätere Änderungen und Aufhebungen fehlen; ein zwischenzeitlich aufgehobenes Gesetz erscheint weiterhin als in Kraft. Für den geltenden Wortlaut den ZH-Lex-Permalink konsultieren.
result_typeNoarticles
corpus_as_ofNo2023-01-01

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.3.0
    • addedOutput schema / properties / corpus_as_of
      Added value: +{
      +  "default": "2023-01-01",
      +  "title": "Corpus As Of",
      +  "type": "string"
      +}
    • addedOutput schema / properties / corpus_note
      Added value: +{
      +  "default": "Bestandsstand 2023-01-01 — die jüngste Fassung im Datensatz stammt von diesem Datum. Spätere Änderungen und Aufhebungen fehlen; ein zwischenzeitlich aufgehobenes Gesetz erscheint weiterhin als in Kraft. Für den geltenden Wortlaut den ZH-Lex-Permalink konsultieren.",
      +  "title": "Corpus Note",
      +  "type": "string"
      +}
  2. First observedv0.2.3

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds valuable behavioral context beyond annotations: it specifies the return content (title, all paragraphs, full text), the failure mode (count=0 if article doesn't exist), and supported article number formats (28, 28a, 28bis). It does not mention auth or rate limits, but none are implied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with clear tags (<use_case>, <important_notes>, <example>) and front-loads the core purpose. Every sentence provides useful information without redundancy, and the example at the end is brief and directly actionable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity, the presence of an output schema, and the annotations covering safety, the description is complete. It covers purpose, usage, prerequisites, alternatives, return behavior, error handling, format details, and an example. Nothing essential is missing for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The context signals schema description coverage as 0%, so the description must compensate. It provides a concrete example (law_identifier='VSG', article_number='28') and thoroughly explains article_number formatting (no 'Art.' prefix, supports 28, 28a, 28bis). However, it does not explain the law_identifier parameter's accepted formats (Ordnungsnummer vs. Abkürzung) in the description itself, leaving that to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Extrahiert') and resource ('einzelnen Artikel aus einem Zürcher Gesetz'), and distinguishes itself from the sibling tool openlex__zhlaw_search_articles by noting that search is for finding relevant articles first. An agent can immediately understand this is for retrieving a specific known article.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The <use_case> block explicitly states when to use this tool (when the exact wording of a specific article is needed), the prerequisite (law and article number known), and the alternative (openlex__zhlaw_search_articles to first find relevant articles). This is comprehensive guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.