Skip to main content
Glama

DRGSystem — German medical coding catalogs

ATC durchsuchen

atc_search
Read-onlyIdempotent

Durchsucht die amtliche ATC-Klassifikation mit definierten Tagesdosen nach Kode oder Wirkstoff. Die Treffer stehen in 'items' mit der DDD und den zugeordneten ICD-Kodes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
yearNoKatalogjahr (z. B. 2026). Leer lassen für das aktuellste verfügbare Jahr.
limitNoMaximale Anzahl Treffer, 1 bis 100. Standard 25.
queryYesSuchbegriff: ATC-Kode (z. B. 'A10BA02') oder Wirkstoffname (z. B. 'Metformin').

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
yearNoKatalogjahr, aus dem alle Daten dieser Antwort stammen.
focusNoDer abgefragte Kode mit allen Detaildaten. Null bei einer Suche und beim Katalog-Einstieg (leerer Kode).
itemsNoDie Kodeliste der Antwort: bei einer Abfrage die direkt untergeordneten Kodes von 'focus' (bzw. die oberste Ebene bei leerem Kode), bei einer Suche die Treffer.
parentsNoÜbergeordnete Kodes von 'focus' als Pfad von der obersten Ebene abwärts (Brotkrumen). Leer bei einer Suche und beim Katalog-Einstieg.
interpretationNoNur bei einer Suche: wie die Suche die Anfrage gelesen hat. Null außerhalb der Suche.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • removedOutput schema / properties / focus / properties / descriptionHighlight
      Removed value: -{
      -  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description' — wie wörtlich die Suchanfrage das jeweilige Wort getroffen hat. 1,00 das Wort selbst, 0,75 eine Wortform oder ein Präfix, 0,50 ein Bestandteil eines zusammengesetzten Wortes, 0,25 ein Synonym oder ein korrigierter Tippfehler. Null, wenn die Anfrage diesen Text nicht berührt hat. Über MCP immer null.",
      -  "items": {
      -    "type": "number"
      -  },
      -  "type": [
      -    "array",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / atcCodes
      Removed value: -{
      -  "description": "ATC-Kodes der Arzneimittel, die dieser Diagnose zugeordnet sind — nur die Schlüssel. Die vollständigen Datensätze liefert die Detailabfrage des Kodes.",
      -  "properties": {
      -    "sourceYear": {
      -      "description": "Jahrgang des Katalogs, aus dem der Wert stammt. Weicht er vom abgefragten Jahr ab, liegen für das abgefragte Jahr noch keine Daten vor und es wird der letzte verfügbare Jahrgang gezeigt.",
      -      "type": "integer"
      -    },
      -    "value": {
      -      "$ref": "#/properties/focus/properties/icdCodes/properties/value",
      -      "description": "Der eigentliche Wert.",
      -      "items": {}
      -    }
      -  },
      -  "type": [
      -    "object",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / descriptionHighlight
      Removed value: -{
      -  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description' — wie wörtlich die Suchanfrage das jeweilige Wort getroffen hat. 1,00 das Wort selbst, 0,75 eine Wortform oder ein Präfix, 0,50 ein Bestandteil eines zusammengesetzten Wortes, 0,25 ein Synonym oder ein korrigierter Tippfehler. Null, wenn die Anfrage diesen Text nicht berührt hat. Über MCP immer null.",
      -  "items": {
      -    "type": "number"
      -  },
      -  "type": [
      -    "array",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / matchedTermHighlight
      Removed value: -{
      -  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'matchedTerm', gleiche Skala wie 'descriptionHighlight'. Über MCP immer null.",
      -  "items": {
      -    "type": "number"
      -  },
      -  "type": [
      -    "array",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / morbiRsa
      Removed value: -{
      -  "description": "Zuordnung im Morbi-RSA (Morbiditätsorientierter Risikostrukturausgleich): DxG- und HmG-Gruppe. Null, wenn der Kode dort nicht geführt wird.",
      -  "properties": {
      -    "sourceYear": {
      -      "description": "Jahrgang des Katalogs, aus dem der Wert stammt. Weicht er vom abgefragten Jahr ab, liegen für das abgefragte Jahr noch keine Daten vor und es wird der letzte verfügbare Jahrgang gezeigt.",
      -      "type": "integer"
      -    },
      -    "value": {
      -      "description": "Der eigentliche Wert.",
      -      "properties": {
      -        "dxgCode": {
      -          "description": "Nummer der Diagnosegruppe (DxG) im Morbi-RSA, der die Diagnose zugeordnet ist.",
      -          "type": "integer"
      -        },
      -        "dxgDescription": {
      -          "description": "Bezeichnung der Diagnosegruppe (DxG).",
      -          "type": [
      -            "string",
      -            "null"
      -          ]
      -        },
      -        "hmgCode": {
      -          "description": "Nummer der hierarchisierten Morbiditätsgruppe (HmG), in die die Diagnosegruppe einfließt.",
      -          "type": "integer"
      -        },
      -        "hmgDescription": {
      -          "description": "Bezeichnung der hierarchisierten Morbiditätsgruppe (HmG).",
      -          "type": [
      -            "string",
      -            "null"
      -          ]
      -        }
      -      },
      -      "type": "object"
      -    }
      -  },
      -  "type": [
      -    "object",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / focus / properties / matchedTermHighlight
      Removed value: -{
      -  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'matchedTerm', gleiche Skala wie 'descriptionHighlight'. Über MCP immer null.",
      -  "items": {
      -    "type": "number"
      -  },
      -  "type": [
      -    "array",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / items / items / properties / descriptionHighlight
      Removed value: -{
      -  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description' — wie wörtlich die Suchanfrage das jeweilige Wort getroffen hat. 1,00 das Wort selbst, 0,75 eine Wortform oder ein Präfix, 0,50 ein Bestandteil eines zusammengesetzten Wortes, 0,25 ein Synonym oder ein korrigierter Tippfehler. Null, wenn die Anfrage diesen Text nicht berührt hat. Über MCP immer null.",
      -  "items": {
      -    "type": "number"
      -  },
      -  "type": [
      -    "array",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / items / items / properties / matchedTermHighlight
      Removed value: -{
      -  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'matchedTerm', gleiche Skala wie 'descriptionHighlight'. Über MCP immer null.",
      -  "items": {
      -    "type": "number"
      -  },
      -  "type": [
      -    "array",
      -    "null"
      -  ]
      -}
  2. Changed1 schema field changed
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / zusatzentgeltCodes
      Added value: +{
      +  "description": "Zusatzentgelte, denen diese Diagnose in Anlage 7 des Fallpauschalenkatalogs zugeordnet ist (Blutgerinnungsstörungen), als Kodes in amtlicher Schreibweise. Betrag, auslösende OPS-Kodes und Fußnoten liefert die Detailabfrage.",
      +  "properties": {
      +    "sourceYear": {
      +      "description": "Jahrgang des Katalogs, aus dem der Wert stammt. Weicht er vom abgefragten Jahr ab, liegen für das abgefragte Jahr noch keine Daten vor und es wird der letzte verfügbare Jahrgang gezeigt.",
      +      "type": "integer"
      +    },
      +    "value": {
      +      "$ref": "#/properties/focus/properties/icdCodes/properties/value",
      +      "description": "Der eigentliche Wert.",
      +      "items": {}
      +    }
      +  },
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
  3. Changed1 schema field changed
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / statistics
      Added value: +{
      +  "description": "Wie oft der Kode in deutschen Krankenhäusern als Hauptdiagnose kodiert wird. Kapitel, Gruppen und Dreisteller tragen die Summe ihrer Unterkodes, Fünfsteller die Zahlen ihres Obercodes — welcher Fall vorliegt, sagt 'scope'. Die Altersaufteilung liefert nur die Detailabfrage.",
      +  "properties": {
      +    "sourceYear": {
      +      "description": "Jahrgang des Katalogs, aus dem der Wert stammt. Weicht er vom abgefragten Jahr ab, liegen für das abgefragte Jahr noch keine Daten vor und es wird der letzte verfügbare Jahrgang gezeigt.",
      +      "type": "integer"
      +    },
      +    "value": {
      +      "description": "Der eigentliche Wert.",
      +      "properties": {
      +        "ageGroups": {
      +          "description": "Verteilung über die Altersgruppen. Nur an der Detailabfrage eines Kodes gesetzt; in Listen bleibt sie leer, weil sie dort nur Last wäre.",
      +          "items": {
      +            "properties": {
      +              "cases": {
      +                "description": "Fälle dieser Altersgruppe.",
      +                "type": "integer"
      +              },
      +              "female": {
      +                "description": "Davon weiblich. Männer und Frauen ergeben zusammen nicht zwingend 'cases' — Fälle ohne Geschlechtsangabe fehlen in beiden.",
      +                "type": "integer"
      +              },
      +              "fromYears": {
      +                "description": "Untergrenze der Altersgruppe in Jahren, einschließlich.",
      +                "type": "integer"
      +              },
      +              "label": {
      +                "description": "Beschriftung der Altersgruppe, wie sie der Bericht führt (z. B. '70-75').",
      +                "type": "string"
      +              },
      +              "male": {
      +                "description": "Davon männlich.",
      +                "type": "integer"
      +              },
      +              "toYears": {
      +                "description": "Obergrenze der Altersgruppe in Jahren, ausschließlich. Null bei der offenen obersten Gruppe.",
      +                "type": [
      +                  "integer",
      +                  "null"
      +                ]
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "type": [
      +            "array",
      +            "null"
      +          ]
      +        },
      +        "cases": {
      +          "description": "Fälle mit dieser Hauptdiagnose — aus dem Krankenhaus entlassene Patientinnen und Patienten.",
      +          "type": "integer"
      +        },
      +        "code": {
      +          "description": "Der Kode, dem die Zahlen gehören. Bei 'scope' = 'Parent' ist das der Obercode, nicht der abgefragte Kode.",
      +          "type": "string"
      +        },
      +        "female": {
      +          "description": "Davon weiblich.",
      +          "type": "integer"
      +        },
      +        "male": {
      +          "description": "Davon männlich.",
      +          "type": "integer"
      +        },
      +        "rank": {
      +          "description": "Rang nach Fallzahl unter den Kodes derselben Katalogebene, die überhaupt Fälle ausweisen. 1 ist der häufigste.",
      +          "type": "integer"
      +        },
      +        "rankTotal": {
      +          "description": "Wie viele Kodes derselben Katalogebene in den Rang eingehen — der Nenner zu 'rank'.",
      +          "type": "integer"
      +        },
      +        "scope": {
      +          "description": "Ob die Zahlen diesem Kode selbst gehören ('Code'), die Summe seiner Unterkodes sind ('Subtree') oder einem Obercode gehören ('Parent').",
      +          "enum": [
      +            "Code",
      +            "Subtree",
      +            "Parent"
      +          ],
      +          "type": "string"
      +        },
      +        "shareOfYear": {
      +          "description": "Anteil an allen Krankenhausfällen des Datenjahres, als Bruchteil von 1 (0,0189 = 1,89 %).",
      +          "type": "number"
      +        },
      +        "unknown": {
      +          "description": "Davon ohne Geschlechtsangabe.",
      +          "type": "integer"
      +        }
      +      },
      +      "type": "object"
      +    }
      +  },
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
  4. Changed22 schema fields changed
    • changedOutput schema / properties / focus / properties / descriptionHighlight / description
      Previous value: -"Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description'. Über MCP immer null."New value: +"Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description' — wie wörtlich die Suchanfrage das jeweilige Wort getroffen hat. 1,00 das Wort selbst, 0,75 eine Wortform oder ein Präfix, 0,50 ein Bestandteil eines zusammengesetzten Wortes, 0,25 ein Synonym oder ein korrigierter Tippfehler. Null, wenn die Anfrage diesen Text nicht berührt hat. Über MCP immer null."
    • addedOutput schema / properties / focus / properties / groupCode
      Added value: +{
      +  "description": "Nur bei einer Suche: die Rubrik, unter der die Suche diesen Treffer einordnet — beim ICD die dreistellige Kategorie, beim OPS der vierstellige Kode. Die Liste bleibt flach; wer mag, gruppiert danach. Null außerhalb der Suche.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / descriptionHighlight / description
      Previous value: -"Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description'. Über MCP immer null."New value: +"Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description' — wie wörtlich die Suchanfrage das jeweilige Wort getroffen hat. 1,00 das Wort selbst, 0,75 eine Wortform oder ein Präfix, 0,50 ein Bestandteil eines zusammengesetzten Wortes, 0,25 ein Synonym oder ein korrigierter Tippfehler. Null, wenn die Anfrage diesen Text nicht berührt hat. Über MCP immer null."
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / groupCode
      Added value: +{
      +  "description": "Nur bei einer Suche: die Rubrik, unter der die Suche diesen Treffer einordnet — beim ICD die dreistellige Kategorie, beim OPS der vierstellige Kode. Die Liste bleibt flach; wer mag, gruppiert danach. Null außerhalb der Suche.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / isGroupHeader
      Added value: +{
      +  "description": "Nur bei einer Suche: True, wenn diese Zeile die Rubrik selbst ist und die folgenden Zeilen mit gleichem 'groupCode' ihre Kodes sind.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / isSemanticMatch
      Added value: +{
      +  "description": "Nur bei einer Suche: True, wenn kein Wort der Anfrage diesen Kode erreicht hat und er über die Bedeutung gefunden wurde. Dann gibt es nichts hervorzuheben.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / matchedTerm
      Added value: +{
      +  "description": "Nur bei einer Suche: die Formulierung, über die der Treffer gefunden wurde, wenn sie etwas sagt, was 'description' nicht sagt — etwa der Eintrag des Alphabetischen Verzeichnisses, unter dem der Kode nachgewiesen ist. Null, wenn der Treffer sich aus der Bezeichnung selbst erklärt.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / matchedTermHighlight
      Added value: +{
      +  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'matchedTerm', gleiche Skala wie 'descriptionHighlight'. Über MCP immer null.",
      +  "items": {
      +    "type": "number"
      +  },
      +  "type": [
      +    "array",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / treeDepth / description
      Previous value: -"Nur wenn die Liste ein aufgeklapptes Teilbaum-Listing ist: Tiefe dieser Zeile innerhalb der Liste (0 = direkt unter dem abgefragten Kode, 1 = dessen Kind usw.). Null bedeutet, dass die Zeilen der Liste in keinem Über-/Unterordnungsverhältnis zueinander stehen — etwa bei einer Suche."New value: +"Nur wenn die Liste ein aufgeklapptes Teilbaum-Listing ist: Tiefe dieser Zeile innerhalb der Liste (0 = direkt unter dem abgefragten Kode, 1 = dessen Kind usw.). Bei einer Suche null — dort sagt 'groupCode', wohin eine Zeile gehört, und die Gliederung entsteht durch Blöcke statt durch Einrückung."
    • addedOutput schema / properties / focus / properties / isGroupHeader
      Added value: +{
      +  "description": "Nur bei einer Suche: True, wenn diese Zeile die Rubrik selbst ist und die folgenden Zeilen mit gleichem 'groupCode' ihre Kodes sind.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / focus / properties / isSemanticMatch
      Added value: +{
      +  "description": "Nur bei einer Suche: True, wenn kein Wort der Anfrage diesen Kode erreicht hat und er über die Bedeutung gefunden wurde. Dann gibt es nichts hervorzuheben.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / focus / properties / matchedTerm
      Added value: +{
      +  "description": "Nur bei einer Suche: die Formulierung, über die der Treffer gefunden wurde, wenn sie etwas sagt, was 'description' nicht sagt — etwa der Eintrag des Alphabetischen Verzeichnisses, unter dem der Kode nachgewiesen ist. Null, wenn der Treffer sich aus der Bezeichnung selbst erklärt.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / focus / properties / matchedTermHighlight
      Added value: +{
      +  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'matchedTerm', gleiche Skala wie 'descriptionHighlight'. Über MCP immer null.",
      +  "items": {
      +    "type": "number"
      +  },
      +  "type": [
      +    "array",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / focus / properties / treeDepth / description
      Previous value: -"Nur wenn die Liste ein aufgeklapptes Teilbaum-Listing ist: Tiefe dieser Zeile innerhalb der Liste (0 = direkt unter dem abgefragten Kode, 1 = dessen Kind usw.). Null bedeutet, dass die Zeilen der Liste in keinem Über-/Unterordnungsverhältnis zueinander stehen — etwa bei einer Suche."New value: +"Nur wenn die Liste ein aufgeklapptes Teilbaum-Listing ist: Tiefe dieser Zeile innerhalb der Liste (0 = direkt unter dem abgefragten Kode, 1 = dessen Kind usw.). Bei einer Suche null — dort sagt 'groupCode', wohin eine Zeile gehört, und die Gliederung entsteht durch Blöcke statt durch Einrückung."
    • addedOutput schema / properties / interpretation
      Added value: +{
      +  "description": "Nur bei einer Suche: wie die Suche die Anfrage gelesen hat. Null außerhalb der Suche.",
      +  "properties": {
      +    "detectedCode": {
      +      "description": "Im Suchtext erkannte Schlüsselnummer, normalisiert (z. B. 'I219', '5820'). Null, wenn die Anfrage nur Text war.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "expandedTerms": {
      +      "description": "Aufgelöste Abkürzungen, mit denen zusätzlich gesucht wurde — etwa 'KHK' auch als 'Koronare Herzkrankheit'.",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "usedSemanticSearch": {
      +      "description": "True, wenn die Wortsuche keinen sicheren Treffer hatte und zusätzlich nach Bedeutung gesucht wurde.",
      +      "type": "boolean"
      +    }
      +  },
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / items / items / properties / descriptionHighlight / description
      Previous value: -"Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description'. Über MCP immer null."New value: +"Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'description' — wie wörtlich die Suchanfrage das jeweilige Wort getroffen hat. 1,00 das Wort selbst, 0,75 eine Wortform oder ein Präfix, 0,50 ein Bestandteil eines zusammengesetzten Wortes, 0,25 ein Synonym oder ein korrigierter Tippfehler. Null, wenn die Anfrage diesen Text nicht berührt hat. Über MCP immer null."
    • addedOutput schema / properties / items / items / properties / groupCode
      Added value: +{
      +  "description": "Nur bei einer Suche: die Rubrik, unter der die Suche diesen Treffer einordnet — beim ICD die dreistellige Kategorie, beim OPS der vierstellige Kode. Die Liste bleibt flach; wer mag, gruppiert danach. Null außerhalb der Suche.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / items / items / properties / isGroupHeader
      Added value: +{
      +  "description": "Nur bei einer Suche: True, wenn diese Zeile die Rubrik selbst ist und die folgenden Zeilen mit gleichem 'groupCode' ihre Kodes sind.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / items / items / properties / isSemanticMatch
      Added value: +{
      +  "description": "Nur bei einer Suche: True, wenn kein Wort der Anfrage diesen Kode erreicht hat und er über die Bedeutung gefunden wurde. Dann gibt es nichts hervorzuheben.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / items / items / properties / matchedTerm
      Added value: +{
      +  "description": "Nur bei einer Suche: die Formulierung, über die der Treffer gefunden wurde, wenn sie etwas sagt, was 'description' nicht sagt — etwa der Eintrag des Alphabetischen Verzeichnisses, unter dem der Kode nachgewiesen ist. Null, wenn der Treffer sich aus der Bezeichnung selbst erklärt.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / items / items / properties / matchedTermHighlight
      Added value: +{
      +  "description": "Nur für die Trefferhervorhebung im Web-Katalog: Gewicht je Zeichen von 'matchedTerm', gleiche Skala wie 'descriptionHighlight'. Über MCP immer null.",
      +  "items": {
      +    "type": "number"
      +  },
      +  "type": [
      +    "array",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / items / items / properties / treeDepth / description
      Previous value: -"Nur wenn die Liste ein aufgeklapptes Teilbaum-Listing ist: Tiefe dieser Zeile innerhalb der Liste (0 = direkt unter dem abgefragten Kode, 1 = dessen Kind usw.). Null bedeutet, dass die Zeilen der Liste in keinem Über-/Unterordnungsverhältnis zueinander stehen — etwa bei einer Suche."New value: +"Nur wenn die Liste ein aufgeklapptes Teilbaum-Listing ist: Tiefe dieser Zeile innerhalb der Liste (0 = direkt unter dem abgefragten Kode, 1 = dessen Kind usw.). Bei einer Suche null — dort sagt 'groupCode', wohin eine Zeile gehört, und die Gliederung entsteht durch Blöcke statt durch Einrückung."
  5. Changed3 schema fields changed
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / isNotAssigned
      Added value: +{
      +  "description": "True, wenn die Schlüsselnummer im Katalog geführt, aber nicht belegt ist — eine für spätere Verwendung reservierte Position, die nicht kodiert werden darf. Die Angaben zu § 301 und § 295 sind bei diesen Kodes ohne Bedeutung.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / paragraph295Usage
      Added value: +{
      +  "description": "Verwendbarkeit des Kodes in der ambulanten Versorgung nach § 295 SGB V, mit denselben Werten wie bei § 301. Weicht der Wert von 'Paragraph301Usage' ab, gilt ambulant und stationär Unterschiedliches — der häufigste Fall sind vierstellige Kodes, die stationär endständig (fünfstellig) anzugeben sind, ambulant aber vierstellig kodiert werden dürfen.",
      +  "enum": [
      +    "P",
      +    "O",
      +    "Z",
      +    "V",
      +    null
      +  ],
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / focus / properties / icdDetails / properties / value / items / properties / paragraph301Usage
      Added value: +{
      +  "description": "Verwendbarkeit des Kodes in der stationären Versorgung nach § 301 SGB V: 'P' = als Primärkode zugelassen, 'O' = nur als Sternschlüsselnummer (Manifestationskode) zusammen mit einem Primärkode, 'Z' = nur als Ausrufezeichenschlüsselnummer zusätzlich zu einem Primärkode, 'V' = nicht zur Verschlüsselung zugelassen, weil der Kode nicht endständig ist — dann ist einer seiner Subkodes zu wählen.",
      +  "enum": [
      +    "P",
      +    "O",
      +    "Z",
      +    "V",
      +    null
      +  ],
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  6. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered. The description adds useful behavioral context by specifying that results are returned in 'items' with DDD and associated ICD codes, giving the agent a concrete expectation of the response structure beyond what annotations provide.

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 a single, focused sentence that front-loads the primary purpose and includes a key output detail. There is no redundancy or filler; every word earns its place, making it highly efficient for an agent to parse.

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 search tool with an output schema and read-only annotations, the description covers the essential purpose, query semantics, and result shape. It could mention pagination or the year parameter behavior, but those are already documented in the schema, so the description is complete enough for an agent to call 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?

Schema description coverage is 100%, so all parameters (query, year, limit) already have clear descriptions in the schema. The tool description does not add extra meaning or examples beyond what the schema already conveys, so it stays at the baseline of 3.

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 clearly states it searches the official ATC classification by code or active ingredient, with a specific verb and resource. It implicitly differentiates from atc_get (exact retrieval) and from search tools for other coding systems, making the purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies this tool is for searching when you have a code or substance name, but it does not explicitly mention when to use it instead of atc_get or other alternatives. There is no exclusion criteria or condition for selecting this tool over a sibling, leaving some inference to the agent.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources