Referenz

Datenfelder

Alle Felder, die der MCP-Server liefert – pro Werkzeug, mit Typ, Bedeutung und der Regel, wann ein Feld leer (null) ist.

Die Suche liefert bewusst nur eine kompakte Übersichtskarte je Treffer – nicht alle Daten. Das ist Absicht (schnell & sparsam). Den vollständigen Datensatz holt der Agent gezielt über get_company_details oder get_full_record.
search_companies

10-Feld-Karte je Treffer – zum Suchen, Ranken, Überblicken.

get_company_details

Vollständiges Profil eines Unternehmens (alle Abschnitte unten).

get_full_record

Obermenge des Profils: volle Taxonomie + Lineage.

1 search_companies → Karte

Kompakter Auszug. Codes sind hier bereits als Labels ausgegeben (z. B. GmbH, Oberösterreich).

FeldTypBedeutungnull, wenn …
fnrstringFirmenbuchnummer (z. B. 078052h)nie
namestringFirmenwortlautnie
legal_formstringRechtsform-Label (z. B. GmbH)unbekannt
bundeslandstringBundesland-Label (z. B. Wien)unbekannt
size_gklstringUGB-Einreichklasse: W Kleinst, K Klein, M Mittel, G Groß (≠ Bilanzgröße – Holdings reichen oft klein ein)unbekannt
bilanzsumme_bandstringehrliches Größenband nach Bilanzsummekein Abschluss
bilanzsumme_latestnumber €Bilanzsumme des jüngsten Abschlusseskein Abschluss
manager_namestringName der primären vertretungsbefugten Person (öffentliche Firmenbuchdaten; Geburtsjahr ja, kein Tag/Monat)keine Angabe
equity_ratio_latest0–1Eigenkapitalquote (jüngstes Jahr)nicht berechenbar
revenue_latestnumber €Umsatzerlöse (jüngstes Jahr)kein GuV im jüngsten Abschluss
growth_profilestringshrinking/stable/growing/fast_growing< 2 vergleichbare Jahre
has_guv_latestboolhat der jüngste Abschluss eine GuV?– (immer gesetzt)

2 get_company_details → Profil

Das Unternehmen liegt unter result. Hier stehen die Roh-Codes (z. B. legal_form: "GES" = GmbH, bundesland: "O" = Oberösterreich). Die vollständigen Code-Tabellen stehen weiter unten unter Code-Tabellen.

identity · Stammdaten

FeldTypBedeutung
fnrstringFirmenbuchnummer
register_idstringtechnische ID, Form AT_<fnr>
namestringFirmenwortlaut
legal_formstringRechtsform als Code (GES = GmbH-Familie; alle Codes)
statusstringactive / historical / deleted
courtstring | nullzuständiges Firmenbuchgericht (oft leer)

location · Sitz

FeldTypBedeutung
countrystringLand, immer AUT
bundeslandstringBundesland als Code, z. B. W Wien, O Oberösterreich (alle Codes)
citystringOrt
postal_codestringPostleitzahl
streetstring | nullStraße (oft leer)

company · Eckdaten

FeldTypBedeutung
stammkapitalnumber | nullStammkapital in € (oft leer)
first_filing_yearinterstes verfügbares Abschlussjahr
last_filing_yearintletztes verfügbares Abschlussjahr
filing_years_availableintAnzahl vorhandener Abschlussjahre
founded_yearint | nullGründungsjahr, sofern ableitbar
founded_sourcestring | nullHerkunft des Gründungsjahrs
descriptionnullin V1 nicht befüllt

size · Größeneinordnung

FeldTypBedeutung
gklstringGrößenklasse: W Kleinst, K Klein, M Mittel, G Groß
bilanzsumme_bandstringBilanzsummen-Band, small bis very_large
peer_percentilesobjectPerzentilrang je Kennzahl innerhalb der eigenen Größenklasse (z. B. bilanzsumme: 99.3 = größer als 99,3 %)

financials · Finanzdaten

Zuerst die Kopf-Felder, danach die Positionen – jede als Zeitreihe (Jahr → Wert).

FeldTypBedeutung
latest_yearintjüngstes Abschlussjahr
has_guv_latestboolhat das jüngste Jahr eine GuV?
revenue_basisstring | nullHerkunft des Umsatzwerts
latestobjectKennwerte des jüngsten Jahres (Teilmenge)
bilanzobjectBilanzpositionen (siehe unten)
guvobjectGuV-Positionen (siehe unten; leer {} ohne GuV)

Bilanz-Positionen in financials.bilanz

PositionBedeutung
Summe
bilanzsummeBilanzsumme (Summe aller Aktiva bzw. Passiva)
Aktiva · Vermögen
anlagevermoegenAnlagevermögen (langfristig gebundenes Vermögen)
sachanlagenSachanlagen (Grundstücke, Gebäude, Maschinen)
finanzanlagenFinanzanlagen (Beteiligungen, Wertpapiere)
umlaufvermoegenUmlaufvermögen (kurzfristig gebundenes Vermögen)
vorraeteVorräte (Lagerbestände)
forderungenForderungen (z. B. aus Lieferungen und Leistungen)
cashLiquide Mittel (Kassa, Bankguthaben)
Passiva · Kapital
eigenkapitalEigenkapital
stammkapitalStammkapital (gezeichnetes Kapital)
kapitalruecklagenKapitalrücklagen
gewinnruecklagenGewinnrücklagen
bilanzgewinn_verlustBilanzgewinn / -verlust
rueckstellungenRückstellungen
verbindlichkeitenVerbindlichkeiten (Fremdkapital / Schulden)

GuV-Positionen in financials.guv · nur bei has_guv

PositionBedeutung
umsatzerloeseUmsatzerlöse
materialaufwandMaterialaufwand
personalaufwandPersonalaufwand
abschreibungenAbschreibungen
ebitBetriebserfolg (operatives Ergebnis vor Finanzergebnis und Steuern) – siehe Hinweis
ebitdaBetriebserfolg zzgl. Abschreibungen – siehe Hinweis
jahresueberschussJahresüberschuss / -fehlbetrag
Hinweis zu EBIT/EBITDA: Der österreichische UGB-Abschluss (§ 231 Abs 2, Gesamtkostenverfahren) weist weder EBIT noch EBITDA aus. Als ebit verwenden wir den ausgewiesenen Betriebserfolg (operatives Ergebnis vor Finanzergebnis und Steuern), als ebitda den Betriebserfolg zzgl. Abschreibungen. Das entspricht nicht der strengen EBIT-Definition (Ergebnis vor Zinsen und Steuern inklusive Finanzergebnis), sondern ist als vereinfachte Näherung zu verstehen. Bei Gesellschaften mit wesentlichem Finanz- oder Beteiligungsergebnis (etwa Holdings) können die Werte spürbar abweichen.
Nur Bilanz, ohne GuV: Kleine Gesellschaften reichen oft nur eine Bilanz ein. Dann ist guv = {}, revenue_latest = null, und margenbasierte Kennzahlen bleiben ohne Wert. Gezielt filtern mit has_guv / has_guv_latest.

ratios · Kennzahlen

13 Kennzahlen, jede als Zeitreihen-Objekt. Margen- und Renditekennzahlen brauchen eine GuV und bleiben sonst leer.

KennzahlBedeutung
equity_ratioEigenkapitalquote (EK / Bilanzsumme)
debt_ratioFremdkapitalquote (FK / Bilanzsumme)
debt_to_equityVerschuldungsgrad (FK / EK)
working_capital_ratioWorking-Capital-Quote
anlagedeckungsgrad_1Anlagedeckungsgrad I (EK / Anlagevermögen)
ebit_marginEBIT-Marge (EBIT / Umsatz) – EBIT = Betriebserfolg, siehe Hinweis oben
ebitda_marginEBITDA-Marge (EBITDA / Umsatz)
net_marginNettomarge (Jahresüberschuss / Umsatz)
personalkostenquotePersonalkostenquote (Personalaufwand / Umsatz)
materialaufwandsquoteMaterialaufwandsquote (Materialaufwand / Umsatz)
roaGesamtkapitalrendite (ROA)
roeEigenkapitalrendite (ROE)
capital_profilequalitatives Kapitalstruktur-Profil

Jedes Kennzahl-Objekt enthält u. a. latest, latest_year, history (Jahr → Wert), avg_3y/avg_5y, min_5y/max_5y, volatility, trend sowie Wachstumsmaße.

growth · Wachstum

FeldTypBedeutung
profilestring | nullshrinking / stable / growing / fast_growing (leer bei < 2 vergleichbaren Jahren)
methodstring | nullBerechnungsbasis des Profils

employees · Beschäftigte

FeldTypBedeutung
latest / latest_year / historyobject | nullBeschäftigtenzahl je Jahr – oft leer, da das Firmenbuch Beschäftigtenzahlen nur lückenhaft führt

filings · Eingereichte Abschlüsse + events

filings[]-FeldTypBedeutung
stichtagstringBilanzstichtag des Abschlusses
formatstringQuellformat (z. B. legacy_finanzonline, jab_4_0)
parsedboolmaschinell ausgewertet?
gklstringGrößenklasse zum Abschluss
doc_key · document_url · pdf_doc_keystring | nullDokument-Verweise (teils leer)

events[] – Registerereignisse; in V1 meist leer.

management · Geschäftsführung

FeldTypBedeutung
n_signatories_latestintAnzahl Zeichnungsberechtigter (jüngstes Jahr)
signatories_stable_yearsintJahre konstanter Geschäftsführung
primary_manager.ageintaktuelles Alter des primären GF (jahresbasiert)
primary_manager.birth_yearintGeburtsjahr (nur Jahr)
primary_manager.role_labelstringFunktion (z. B. Geschäftsführer/in)
primary_manager.vertretungstring | nullVertretungsart (Einzel- / Gemeinschaftsvertretung)
Datenschutz (DSGVO): Personennamen werden nicht ausgeliefert. Verfügbar sind nur Alter und Geburtsjahr (Jahr, ohne Tag/Monat) sowie Funktion und Vertretung – genug für Nachfolge-Screenings, ohne die Person zu identifizieren.

3 get_full_record → voller Datensatz

Enthält alles aus dem Profil plus:

  • financials.positions – vollständige 317-Positionen-Taxonomie (jede UGB-Position)
  • financials.passthrough – unbekannte Quell-Codes inkl. Historie (verlustfrei)
  • financials.completeness – Qualitätsmaß (Positionsanzahl je Jahr)
  • financials.guv_years – Liste der Jahre mit GuV
  • management.signatories_history – Zeichnungsberechtigte je Jahr
  • derivationsmetrics_version + Formel-Registry der Kennzahlen

Auch hier gilt: Namen bleiben ausgeblendet (DSGVO).

4 Filter, Sortierung, Seiten

Argumente von search_companies.

FilterBedeutung
nameTeilstring im Firmennamen
legal_formRechtsform, z. B. GmbH
bundeslandKlarname, z. B. Wien
size_gklGrößenklasse W/K/M/G
bilanzsumme_min / _maxBilanzsumme von / bis (€)
equity_ratio_min / _maxEigenkapitalquote von / bis (0–1)
revenue_min / _maxUmsatz von / bis (€)
employees_min / _maxBeschäftigte von / bis
growth_profileshrinking / stable / growing / fast_growing
has_guv · has_guv_latestnur Firmen mit GuV (je / im jüngsten Jahr)
last_filing_year_minjüngster Abschluss mindestens aus diesem Jahr
founded_year_min / _maxGründungsjahr von / bis
gf_age_minprimärer GF mindestens X Jahre (Nachfolge-Screen)
manager_nameTeilstring im Namen der vertretungsbefugten Person (öffentliche Firmenbuchdaten)
statusactive / inactive / all

Sortierung: sort = { field, descending } über u. a. bilanzsumme, equity_ratio, revenue. Seiten: page (ab 1), page_size (Standard 25).

5 Code-Tabellen

Bundesland (Code → Klarname): B Burgenland · K Kärnten · N Niederösterreich · O Oberösterreich · S Salzburg · St Steiermark · T Tirol · V Vorarlberg · W Wien.

Rechtsform: Der granulare Firmenbuch-Code steht im Profil (legal_form). Die GmbH-Familie ist das Präfix GE… (GES ≈ 99,7 %); die Suchkarte labelt das als GmbH.

Größenklasse gkl: W Kleinst/Mikro · K Klein · M Mittel · G Groß.

6 Beispiel-Antwort

So sieht eine vollständige get_company_details-Antwort für ein fiktives Beispielunternehmen aus (gekürzt; Zeitreihen sind exemplarisch). Felder mit null bzw. leere Objekte/Listen sind ebenfalls Teil der Antwort und werden, wo sinnvoll, mitgesendet, damit der Agent den Unterschied zwischen „nicht vorhanden" und „unbekannt" auswerten kann.

Hinweis: alle Werte unten sind frei erfunden und dienen ausschließlich der Darstellung der Struktur.

// Antwort-Umschlag
"schema_version": "1.0",
"data_version": "2026-06-27",
"provenance": {
  "source":        "Österreichisches Firmenbuch / BMJ – Justiz",
  "license":       "CC BY 4.0",
  "data_version":  "2026-06-27",
  "schema_version": "1.0",
  "built_at":      "2026-06-27T07:32:14Z"
},
"result": {
  "identity": {
    "fnr":         "999999x",
    "register_id": "AT_999999x",
    "name":        "Beispiel Industrie GmbH",
    "legal_form":  "GES",           // Code → Label "GmbH" (siehe §5)
    "status":      "active",
    "court":       null
  },
  "location": {
    "country":     "AUT",
    "bundesland":  "O",             // Oberösterreich
    "city":        "Linz",
    "postal_code": "4020",
    "street":      null
  },
  "company": {
    "stammkapital":           35000,
    "first_filing_year":      2014,
    "last_filing_year":       2024,
    "filing_years_available": 11,
    "founded_year":           2013,
    "founded_source":         "first_filing-1",
    "description":            null
  },
  "size": {
    "gkl":               "M",           // Mittel
    "bilanzsumme_band":  "large",
    "peer_percentiles": {
      "bilanzsumme":    82.4,
      "equity_ratio":   71.3,
      "revenue":        68.9
    }
  },
  "financials": {
    "latest_year":     2024,
    "has_guv_latest":  true,
    "revenue_basis":   "umsatzerloese",
    "latest": {
      "bilanzsumme":    12450000,
      "eigenkapital":   5230000,
      "umsatzerloese":  18900000,
      "ebit":           1430000,
      "ebitda":         2210000,
      "jahresueberschuss": 980000
    },
    "bilanz": {
      "bilanzsumme": {
        "latest":      12450000,
        "latest_year": 2024,
        "history":     { "2022": 10840000, "2023": 11620000, "2024": 12450000 }
      },
      "eigenkapital":    { "latest": 5230000,  "history": { "2022": 4380000, "2023": 4790000, "2024": 5230000 } }
      // … weitere Bilanzpositionen (verbindlichkeiten, anlagevermoegen, vorraete, cash, …)
    },
    "guv": {
      "umsatzerloese":  { "latest": 18900000, "history": { "2022": 16200000, "2023": 17550000, "2024": 18900000 } },
      "ebit":           { "latest": 1430000,  "history": { "2022": 1180000, "2023": 1290000, "2024": 1430000 } }
      // … materialaufwand, personalaufwand, abschreibungen, jahresueberschuss, …
    }
  },
  "ratios": {
    "equity_ratio": {
      "latest":        0.42,
      "latest_year":   2024,
      "history":       { "2022": 0.404, "2023": 0.412, "2024": 0.42 },
      "avg_3y":        0.412,
      "min_5y":        0.39,
      "max_5y":        0.42,
      "trend":         "rising",
      "growth_1y":     0.019,
      "growth_3y_cagr": 0.021
    },
    "ebit_margin":  { "latest": 0.076, "trend": "stable" }
    // … debt_ratio, debt_to_equity, working_capital_ratio, anlagedeckungsgrad_1,
    //    ebitda_margin, net_margin, personalkostenquote, materialaufwandsquote,
    //    roa, roe, capital_profile
  },
  "growth": {
    "profile": "growing",
    "method":  "revenue_3y_cagr"
  },
  "employees": null,                  // im Firmenbuch nur lückenhaft
  "management": {
    "n_signatories_latest":    2,
    "signatories_stable_years": 4,
    "primary_manager": {
      "age":         52,
      "birth_year":  1974,            // nur Jahr (DSGVO)
      "role_label":  "GESCHÄFTSFÜHRER/IN (handelsrechtlich)",
      "vertretung":  "selbständig"
    }
  },
  "filings": [
    {
      "stichtag":     "2024-12-31",
      "format":       "jab40_semantic",
      "parsed":       true,
      "gkl":          "M",
      "eingereicht":  "2025-08-12",
      "document_url": "https://justizonline.gv.at/…",
      "pdf_doc_key":  null
    }
    // … ältere Abschlüsse, sortiert nach stichtag absteigend
  ],
  "events": []
}

In der Suchkarte (search_companies) sind bereits Codes als Labels aufgelöst (z. B. legal_form: "GmbH", bundesland: "Oberösterreich"). Im vollständigen Profil und im get_full_record stehen die Roh-Codes — die Tabellen oben in §5 erklären die Auflösung.

7 Stand & Gewähr

Jede Antwort trägt provenance.data_version und built_at (Erstellungszeit der ausgelieferten Daten). Die Daten stammen aus dem österreichischen Firmenbuch (BMJ – Justiz, EU High Value Dataset, CC BY 4.0), werden automatisiert verarbeitet und ohne Gewähr auf Richtigkeit, Vollständigkeit und Aktualität bereitgestellt. Maßgeblich ist stets der amtliche Firmenbuchauszug.

Entwickler-Variante dieser Seite: FIELD_REFERENCE.md im Repo.