Skip to main content
Glama

Judikatur durchsuchen

ris_judikatur
Read-only

Search Austrian court decisions by court system, court, legal norm, subject area, or date, and retrieve headnotes or full decision texts for legal research.

Instructions

Search Austrian court decisions (Judikatur).

Use this tool to find court decisions from Austrian courts. Choose the jurisdiction via "gerichtsbarkeit" (which court system to search).

RIS distinguishes two document kinds, controlled by "dokumenttyp":

  • Rechtssatz: abstract legal principle / headnote (Leitsatz) distilled from a decision

  • Entscheidungstext: the full decision text including reasoning (Begruendung) The default "beide" searches both for the most complete results.

Example queries:

  • gerichtsbarkeit="Vfgh", suchworte="Grundrecht" -> Constitutional Court decisions

  • suchworte="Schadenersatz", gericht="OGH" -> Only Supreme Court (OGH) decisions

  • norm="1295 ABGB" -> Which decisions cite §1295 ABGB?

  • gerichtsbarkeit="Justiz", fachgebiet="Arbeitsrecht", sortierung="datum_ab" -> Newest labor-law decisions

Rechtsverbindlich sind nur die authentischen Kundmachungen im RIS; diese Ergebnisse sind keine Rechtsberatung.

Input Schema

NameRequiredDescriptionDefault
normNoSearch by legal norm (e.g., "1319a ABGB")
limitNoResults per page: 10, 20, 50 or 100 (default: 20). Every hit costs about 1k characters of structured payload, so prefer 20 for browsing and 50 for a broad survey; a page that would exceed the payload budget is delivered at the next smaller page size and says so (page_size, query.limit and notice).
seiteNoPage number
gerichtNoFilter by the actual court within the jurisdiction (e.g., "OGH", "OLG Wien"). Applies to gerichtsbarkeit="Justiz".
suchworteNoFull-text search in decisions
fachgebietNoSubject area of OGH case law (e.g., "Arbeitsrecht", "Insolvenzrecht"). Applies to gerichtsbarkeit="Justiz" and only matches full decision texts (requires dokumenttyp "entscheidungstext" or "beide").
sortierungNoSort by decision date: "datum_auf" (oldest first) or "datum_ab" (newest first).
dokumenttypNoWhich document kind to search: "rechtssatz" (abstract headnotes only), "entscheidungstext" (full decision texts only), or "beide" (both, default). The RIS API otherwise searches only Rechtssätze.beide
rechtsgebietNoBroad legal area: "Zivilrecht" or "Strafrecht". Applies to gerichtsbarkeit="Justiz".
geschaeftszahlNoCase number (e.g., "5Ob234/20b")
gerichtsbarkeitNoCourt system / data collection to search (maps to the RIS "Applikation"): "Justiz" (OGH/OLG/LG/BG, default), "Vfgh" (Constitutional), "Vwgh" (Administrative), "Bvwg", "Lvwg", "Dsk" (Data Protection), "AsylGH", "Normenliste", "Pvak", "Gbk", "Dok", plus historical (dissolved 2014, stock still searchable): "Verg", "Uvs", "Ubas", "Umse", "Bks"Justiz
response_formatNo"markdown" or "json"markdown
sammlungsnummerNoCollection number: VfSlg (gerichtsbarkeit="Vfgh") or VwSlg (gerichtsbarkeit="Vwgh").
entscheidungsartNoType of decision. Allowed values differ by jurisdiction, e.g. Vfgh/Vwgh/Bvwg: "Beschluss", "Erkenntnis"; Lvwg also "Bescheid"; Justiz: "Verstärkter Senat", "Ordentliche Erledigung (Sachentscheidung)".
entscheidungsdatum_bisNoDecision date to (YYYY-MM-DD)
entscheidungsdatum_vonNoDecision date from (YYYY-MM-DD)

Output Schema

NameRequiredDescriptionDefault
pageYesPage number of this result set (1-based)
queryNoEcho of the validated search parameters alongside the tool name — re-issue the call with an incremented "seite" for the next page
noticeNoPresent when the page was delivered at a smaller size than requested to fit the payload budget — page, page_size and query already describe the delivered page; page with query.limit
has_moreYesWhether further result pages are available
documentsYesThe documents on this page
page_sizeYesNumber of documents per page
total_hitsYesTotal number of documents in RIS matching the search
attributionNoQuellenangabe nach CC BY 4.0

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.9.0
    • addedOutput schema / properties / attribution
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Quellenangabe nach CC BY 4.0",
      +  "properties": {
      +    "license": {
      +      "type": "string"
      +    },
      +    "source_url": {
      +      "type": "string"
      +    },
      +    "text": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "text",
      +    "license",
      +    "source_url"
      +  ],
      +  "type": "object"
      +}
  2. Changed28 schema fields changedv1.8.3
    • removedOutput schema / properties / documents / items / properties / citation / properties / ausserkrafttreten / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / citation / properties / ausserkrafttreten / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / citation / properties / eli / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / citation / properties / eli / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / citation / properties / inkrafttreten / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / citation / properties / inkrafttreten / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / citation / properties / kundmachungsorgan / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / citation / properties / kundmachungsorgan / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / citation / properties / langtitel / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / citation / properties / langtitel / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / citation / properties / paragraph / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / citation / properties / paragraph / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / content_urls / properties / html / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / content_urls / properties / html / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / content_urls / properties / pdf / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / content_urls / properties / pdf / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / dokument_url / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / dokument_url / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / entscheidungsdatum / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / entscheidungsdatum / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / gericht / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / gericht / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / gesamte_rechtsvorschrift_url / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / gesamte_rechtsvorschrift_url / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / geschaeftszahl / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / geschaeftszahl / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / documents / items / properties / rechtssatznummer / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / documents / items / properties / rechtssatznummer / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  3. Changed1 schema field changedv1.8.2
    • changedInput schema / properties / limit / description
      Previous value: -"Results per page: 10, 20, 50 or 100 (default: 20). Every hit costs about 1-2k characters of structured payload, so prefer 20 for browsing and 50 for a broad survey; a page that would exceed the payload budget is delivered at the next smaller page size and says so (page_size, query.limit and notice)."New value: +"Results per page: 10, 20, 50 or 100 (default: 20). Every hit costs about 1k characters of structured payload, so prefer 20 for browsing and 50 for a broad survey; a page that would exceed the payload budget is delivered at the next smaller page size and says so (page_size, query.limit and notice)."
  4. Changed6 schema fields changedv1.8.0
    • changedInput schema / properties / limit / description
      Previous value: -"Results per page: 10, 20, 50, or 100 (default: 20)"New value: +"Results per page: 10, 20, 50 or 100 (default: 20). Every hit costs about 1-2k characters of structured payload, so prefer 20 for browsing and 50 for a broad survey; a page that would exceed the payload budget is delivered at the next smaller page size and says so (page_size, query.limit and notice)."
    • removedOutput schema / properties / documents / items / properties / citation / properties / kurztitel
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "type": "string"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ]
      -}
    • removedOutput schema / properties / documents / items / properties / content_urls / properties / rtf
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "type": "string"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ]
      -}
    • removedOutput schema / properties / documents / items / properties / content_urls / properties / xml
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "type": "string"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ]
      -}
    • removedOutput schema / properties / documents / items / properties / kurztitel
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "type": "string"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ]
      -}
    • addedOutput schema / properties / notice
      Added value: +{
      +  "description": "Present when the page was delivered at a smaller size than requested to fit the payload budget — page, page_size and query already describe the delivered page; page with query.limit",
      +  "type": "string"
      +}
  5. Changed1 schema field changedv1.6.1
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "documents": {
      +      "description": "The documents on this page",
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "applikation": {
      +            "type": "string"
      +          },
      +          "citation": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "ausserkrafttreten": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "eli": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "inkrafttreten": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "kundmachungsorgan": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "kurztitel": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "langtitel": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "paragraph": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "citation_display": {
      +            "description": "Preformatted citation line as shown in the text output",
      +            "type": "string"
      +          },
      +          "content_urls": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "html": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "pdf": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "rtf": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "xml": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "dokument_url": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "dokumentnummer": {
      +            "type": "string"
      +          },
      +          "entscheidungsdatum": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ],
      +            "description": "Decision date as YYYY-MM-DD (Judikatur documents only)"
      +          },
      +          "gericht": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ],
      +            "description": "Deciding court or authority (Judikatur documents only)"
      +          },
      +          "gesamte_rechtsvorschrift_url": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "geschaeftszahl": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ],
      +            "description": "Case number(s), semicolon-separated when several (Judikatur documents only)"
      +          },
      +          "kurztitel": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "rechtssatznummer": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ],
      +            "description": "Rechtssatz number, e.g. \"RS0018547\" (Judikatur Rechtssatz documents only)"
      +          },
      +          "titel": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "dokumentnummer",
      +          "applikation",
      +          "titel",
      +          "citation",
      +          "citation_display",
      +          "content_urls"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "has_more": {
      +      "description": "Whether further result pages are available",
      +      "type": "boolean"
      +    },
      +    "page": {
      +      "description": "Page number of this result set (1-based)",
      +      "type": "number"
      +    },
      +    "page_size": {
      +      "description": "Number of documents per page",
      +      "type": "number"
      +    },
      +    "query": {
      +      "additionalProperties": {},
      +      "description": "Echo of the validated search parameters alongside the tool name — re-issue the call with an incremented \"seite\" for the next page",
      +      "properties": {
      +        "tool": {
      +          "description": "Name of the tool that produced this result — call it again to paginate",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "tool"
      +      ],
      +      "type": "object"
      +    },
      +    "total_hits": {
      +      "description": "Total number of documents in RIS matching the search",
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "total_hits",
      +    "page",
      +    "page_size",
      +    "has_more",
      +    "documents"
      +  ],
      +  "type": "object"
      +}
  6. Changed17 schema fields changedv1.2.4
    • addedInput schema / properties / dokumenttyp
      Added value: +{
      +  "default": "beide",
      +  "description": "Which document kind to search: \"rechtssatz\" (abstract headnotes only), \"entscheidungstext\" (full decision texts only), or \"beide\" (both, default). The RIS API otherwise searches only Rechtssätze.",
      +  "enum": [
      +    "rechtssatz",
      +    "entscheidungstext",
      +    "beide"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / entscheidungsart
      Added value: +{
      +  "description": "Type of decision. Allowed values differ by jurisdiction, e.g. Vfgh/Vwgh/Bvwg: \"Beschluss\", \"Erkenntnis\"; Lvwg also \"Bescheid\"; Justiz: \"Verstärkter Senat\", \"Ordentliche Erledigung (Sachentscheidung)\".",
      +  "maxLength": 100,
      +  "type": "string"
      +}
    • addedInput schema / properties / fachgebiet
      Added value: +{
      +  "description": "Subject area of OGH case law (e.g., \"Arbeitsrecht\", \"Insolvenzrecht\"). Applies to gerichtsbarkeit=\"Justiz\" and only matches full decision texts (requires dokumenttyp \"entscheidungstext\" or \"beide\").",
      +  "enum": [
      +    "Amtsdelikte/Korruption",
      +    "Amtshaftung inkl. StEG",
      +    "Anfechtungsrecht",
      +    "Arbeitsrecht",
      +    "Bestandrecht",
      +    "Datenschutzrecht",
      +    "Erbrecht und Verlassenschaftsverfahren",
      +    "Erwachsenenschutzrecht",
      +    "Exekutionsrecht",
      +    "Familienrecht (ohne Unterhalt)",
      +    "Finanzstrafsachen",
      +    "Gewerblicher Rechtsschutz",
      +    "Grundbuchsrecht",
      +    "Grundrechte",
      +    "Insolvenzrecht",
      +    "Internationales Privat- und Zivilverfahrensrecht",
      +    "Jugendstrafsachen",
      +    "Kartellrecht",
      +    "Klauselentscheidungen",
      +    "Konsumentenschutz und Produkthaftung",
      +    "Medienrecht",
      +    "Persönlichkeitsschutzrecht",
      +    "Schadenersatz nach Verkehrsunfall",
      +    "Schlepperei/FPG",
      +    "Schiedsverfahrensrecht",
      +    "Sexualdelikte",
      +    "Sozialrecht",
      +    "Suchtgiftdelikte",
      +    "Transportrecht",
      +    "Unionsrecht",
      +    "Unterbringungs- und Heimaufenthaltsrecht",
      +    "Unterhaltsrecht inkl. UVG",
      +    "Unternehmens-, Gesellschafts- und Wertpapierrecht",
      +    "Urheberrecht",
      +    "Versicherungsvertragsrecht",
      +    "Wirtschaftsstrafsachen",
      +    "Wohnungseigentumsrecht",
      +    "Zivilverfahrensrecht"
      +  ],
      +  "type": "string"
      +}
    • removedInput schema / properties / gericht / default
      Removed value: -"Justiz"
    • changedInput schema / properties / gericht / description
      Previous value: -"Court - \"Justiz\" (OGH/OLG/LG, default), \"Vfgh\" (Constitutional), \"Vwgh\" (Administrative), \"Bvwg\", \"Lvwg\", \"Dsk\" (Data Protection), \"AsylGH\" (historical), \"Normenliste\", \"Pvak\", \"Gbk\", \"Dok\""New value: +"Filter by the actual court within the jurisdiction (e.g., \"OGH\", \"OLG Wien\"). Applies to gerichtsbarkeit=\"Justiz\"."
    • removedInput schema / properties / gericht / enum
      Removed value: -[
      -  "Justiz",
      -  "Vfgh",
      -  "Vwgh",
      -  "Bvwg",
      -  "Lvwg",
      -  "Dsk",
      -  "AsylGH",
      -  "Normenliste",
      -  "Pvak",
      -  "Gbk",
      -  "Dok"
      -]
    • addedInput schema / properties / gericht / maxLength
      Added value: +100
    • addedInput schema / properties / gerichtsbarkeit
      Added value: +{
      +  "default": "Justiz",
      +  "description": "Court system / data collection to search (maps to the RIS \"Applikation\"): \"Justiz\" (OGH/OLG/LG/BG, default), \"Vfgh\" (Constitutional), \"Vwgh\" (Administrative), \"Bvwg\", \"Lvwg\", \"Dsk\" (Data Protection), \"AsylGH\", \"Normenliste\", \"Pvak\", \"Gbk\", \"Dok\", plus historical (dissolved 2014, stock still searchable): \"Verg\", \"Uvs\", \"Ubas\", \"Umse\", \"Bks\"",
      +  "enum": [
      +    "Justiz",
      +    "Vfgh",
      +    "Vwgh",
      +    "Bvwg",
      +    "Lvwg",
      +    "Dsk",
      +    "AsylGH",
      +    "Normenliste",
      +    "Pvak",
      +    "Gbk",
      +    "Dok",
      +    "Verg",
      +    "Uvs",
      +    "Ubas",
      +    "Umse",
      +    "Bks"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / limit / anyOf
      Added value: +[
      +  {
      +    "const": 10,
      +    "type": "number"
      +  },
      +  {
      +    "const": 20,
      +    "type": "number"
      +  },
      +  {
      +    "const": 50,
      +    "type": "number"
      +  },
      +  {
      +    "const": 100,
      +    "type": "number"
      +  }
      +]
    • changedInput schema / properties / limit / description
      Previous value: -"Results per page"New value: +"Results per page: 10, 20, 50, or 100 (default: 20)"
    • removedInput schema / properties / limit / type
      Removed value: -"number"
    • addedInput schema / properties / rechtsgebiet
      Added value: +{
      +  "description": "Broad legal area: \"Zivilrecht\" or \"Strafrecht\". Applies to gerichtsbarkeit=\"Justiz\".",
      +  "enum": [
      +    "Zivilrecht",
      +    "Strafrecht"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / sammlungsnummer
      Added value: +{
      +  "description": "Collection number: VfSlg (gerichtsbarkeit=\"Vfgh\") or VwSlg (gerichtsbarkeit=\"Vwgh\").",
      +  "maxLength": 100,
      +  "type": "string"
      +}
    • addedInput schema / properties / seite / maximum
      Added value: +9007199254740991
    • addedInput schema / properties / seite / minimum
      Added value: +1
    • changedInput schema / properties / seite / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / sortierung
      Added value: +{
      +  "description": "Sort by decision date: \"datum_auf\" (oldest first) or \"datum_ab\" (newest first).",
      +  "enum": [
      +    "datum_auf",
      +    "datum_ab"
      +  ],
      +  "type": "string"
      +}
  7. First observedv1.1.3

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already cover the safety profile (readOnly, non-destructive, open-world), but the description adds useful behavioural context: the Rechtssatz vs Entscheidungstext distinction and that "beide" is the more complete default. The closing disclaimer that only the authentic RIS publications are legally binding adds real value for how results should be trusted. Return shape, paging and payload behaviour are left entirely to the schema and output schema.

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

Conciseness4/5

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

Purpose, selector semantics and document-type explanation come first, with examples and disclaimer after — a sensible front-loaded order. The examples are slightly redundant with schema descriptions but each demonstrates a distinct search mode, so they earn their space.

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

Completeness4/5

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

For a 16-parameter search tool with a rich schema, an output schema, and clear annotations, the description covers the axes an agent must reason about (which court system, which document kind, filtering vs full-text). Paging, payload budgeting and response format are delegated to the schema, which is acceptable given the schema's depth, leaving only the missing sibling routing as a gap.

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

Parameters4/5

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

Schema coverage is 100%, so 3 is the baseline, but the description genuinely adds meaning: it explains what "gerichtsbarkeit" selects conceptually (which court system/data collection), and contrasts Rechtssatz (abstract Leitsatz) with Entscheidungstext (full reasoning) rather than merely restating enum labels. Example queries also model non-obvious combinations such as gericht only for Justiz and norm for citation lookup.

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?

States a specific verb and resource ("Search Austrian court decisions") and immediately scopes it with the court-system selector and the two RIS document kinds. An agent can distinguish this from statute-oriented siblings like ris_bundesrecht or ris_landesgesetzblatt without opening a schema.

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

Usage Guidelines4/5

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

Four worked example queries map intent to parameter combinations (Constitutional Court topic search, court-restricted search, norm-citation lookup, filtered/sorted survey), which gives clear context for when each parameter axis is appropriate. It stops short of explicit exclusions or naming siblings, e.g. it never says to use ris_dokument for a known case instead of searching.

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