# Lintelly HR Deutschland (npm · @lintelly/hr-deutschland)

German employment law for small companies: notice periods, costs, sick pay, contracts. No sign-in.

- Trust score: 85/100 (high trust)
- Change this week: +18
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `hr.lintelly.com`: 78/100, [markdown](https://verifymcp.io/servers/com-lintelly-hr-deutschland/hr.md), [page](https://verifymcp.io/servers/com-lintelly-hr-deutschland/hr)
- npm · `@lintelly/hr-deutschland`: 85/100 (this document), [markdown](https://verifymcp.io/servers/com-lintelly-hr-deutschland/lintelly-hr-deutschland.md), [page](https://verifymcp.io/servers/com-lintelly-hr-deutschland/lintelly-hr-deutschland)

## Channel facts

- Registry: `npm`
- Package: `@lintelly/hr-deutschland`
- Version: `0.3.3`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Supply Chain Security**: 98/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - 30 of 92 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 100/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to Lintelly/lintelly-hr-deutschland).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 1 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 76/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 10964 tokens (~223/item across 49 items; 38 tools + 11 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 28/100
  - Stability check failed: the tool surface changed between 0.2.0 and 0.3.3: 0 tool removals, 12 breaking changes, 0 additions.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 38 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 40 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Lintelly HR Deutschland MCP server?

Lintelly HR Deutschland runs locally as an npm package, launched with npx -y @lintelly/hr-deutschland. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add com-lintelly-hr-deutschland -- npx -y @lintelly/hr-deutschland
```

### Cursor

```json
{
  "mcpServers": {
    "com-lintelly-hr-deutschland": {
      "command": "npx",
      "args": [
        "-y",
        "@lintelly/hr-deutschland"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-lintelly-hr-deutschland": {
      "command": "npx",
      "args": [
        "-y",
        "@lintelly/hr-deutschland"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add com-lintelly-hr-deutschland -- npx -y @lintelly/hr-deutschland
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-lintelly-hr-deutschland": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@lintelly/hr-deutschland"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-lintelly-hr-deutschland --command npx --arg -y --arg @lintelly/hr-deutschland
```

### Hermes

```yaml
mcp_servers:
  com-lintelly-hr-deutschland:
    command: "npx"
    args: ["-y", "@lintelly/hr-deutschland"]
```

### Netclaw

```json
{
  "McpServers": {
    "com-lintelly-hr-deutschland": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@lintelly/hr-deutschland"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-lintelly-hr-deutschland -t stdio -c npx -a -y @lintelly/hr-deutschland
```

### Other

```json
{
  "mcpServers": {
    "com-lintelly-hr-deutschland": {
      "command": "npx",
      "args": [
        "-y",
        "@lintelly/hr-deutschland"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-05 (score 85, +1)

No change was recorded against any check on this day. Stability & Change Management went from 24 to 28.

### 2026-11-04 (score 84, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-11-03 (score 69, 0)

- [security improvement] Malware scan: unverified → pass
- [functional] Package version: 0.3.2 → 0.3.3

### 2026-11-02 (score 69, −14)

- [security regression] Malware scan: pass → unverified
- [security regression] Source repository: pass → fail
- [security] The attested source repository moved: NicksAdvisory/lintelly-hr-deutschland → Lintelly/lintelly-hr-deutschland
- [functional] Package version: 0.3.0 → 0.3.2

### 2026-10-31 (score 83, +1)

No change was recorded against any check on this day. Stability & Change Management went from 8 to 11.

### 2026-10-30 (score 82, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-10-29 (score 67, −16)

- [security regression] Malware scan: pass → unverified
- [security regression] Stability: 0.17 → fail
- [functional] First check of Tool coverage: 100
- [functional] Package version: 0.2.2 → 0.3.0

### 2026-10-27 (score 83, +1)

No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

## MCP tools (38)

### `ablauf` (~703 tokens)

HR-Ablauf mit Daten

German employment law, Germany only: a complete HR workflow (Ablauf) with dates, roles and legal norms for a situation, e.g. first hire (erste Einstellung), onboarding (Eintritt), leaving (Austritt), sick employee (Krankheit, Entgeltfortzahlung, U1, BEM), pregnancy (Mutterschutz), parental leave (Elternzeit), preparing a dismissal (Kündigung), end of probation, end of a fixed-term contract, monthly payroll (Lohn). Use it when a founder describes a situation such as a first hire, a sick employee, a pregnancy or a planned dismissal. Takes only dates, numbers and choices, never names.

Input parameters:

- `abgabetag` (string): Day the payroll input is due at the payroll office (monatsende_lohn) (YYYY-MM-DD)
- `art` (string, required): Which workflow
- `befristet` (boolean): Fixed-term contract (befristet), eintritt and erste_einstellung
- `beschaeftigte` (number): Employees in the business, part-time pro rata, apprentices not counted
- `beschaeftigungsart` (string): Type of employment (Beschäftigungsart)
- `betriebsrat` (boolean): A works council (Betriebsrat) exists
- `branche_sofortmeldung` (string): Sector with immediate registration duty (Sofortmeldung, § 28a Abs. 4 SGB IV) or keine
- `bundesland` (string): Federal state of the company for public holidays (Bundesland), e.g. HE
- `datum` (string): Anchor date, meaning per art: erste_einstellung = erster Arbeitstag; eintritt = erster Arbeitstag; austritt = letzter Arbeitstag; krankheit = erster Krankheitstag; mutterschutz = voraussichtlicher En…
- `drittstaat` (boolean): Person needs a residence and work permit (Drittstaat)
- `eintritt` (string): First working day of the person, for krankheit (waiting period) and kuendigung_vorbereiten (notice period) (YYYY-MM-DD)
- `grund` (string): Reason for leaving (Austrittsgrund), required for austritt; arbeitgeber = dismissal by the company
- `nach_drittem_geburtstag` (boolean): Parental leave lies between the 3rd and 8th birthday of the child (elternzeit)
- `probezeit_monate` (integer): Agreed probation in whole months (Probezeit), required for probezeit_ende
- `sonderkuendigungsschutz` (boolean): Person is pregnant, on parental leave or severely disabled (austritt with dismissal)
- `wettbewerbsverbot` (boolean): Contract has a post-contractual non-compete or customer protection clause (austritt, befristung_ende, kuendigung_vorbereiten)
- `zugang` (string): Day the notice or termination agreement was received (Zugang), austritt (YYYY-MM-DD)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `workflow_vorlage` (~115 tokens)

HR-Workflow

German employment law, Germany only: 11 follow-up workflows for HR tasks (HR-Workflows), e.g. payroll input deadline, missing onboarding documents, sick leave with eAU and BEM, maternity protection, probation decision, fixed-term contract signed before start. Each shows the chain 'when ... then ...' with default days and roles. Use it as a template for your own reminders. Without kennung it lists all.

Input parameters:

- `kennung` (string): Key of the workflow, leave out for the list

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `kuendigungsfrist_rechnen` (~347 tokens)

Kündigungsfrist rechnen

Germany only. Calculate the notice period (Kündigungsfrist) for a German employment contract under §§ 187, 188, 622 BGB: end of employment, latest day the notice must be received, the next three possible end dates, the rule applied and warnings (e.g. notice received on a Sunday). Covers probation, length of service, small businesses and longer contractual periods. Use it for dismissals by the employer and resignations.

Input parameters:

- `bundesland` (string): Federal state of the company for public holidays (Bundesland), e.g. HE
- `eintritt` (string, required): First day of employment (YYYY-MM-DD)
- `kleinbetrieb_vier_wochen` (boolean): Small business with at most 20 employees that agreed 4 weeks to any day (§ 622 Abs. 5 Nr. 2 BGB)
- `probezeit_monate` (integer): Agreed probation in whole months (Probezeit), 0 for none. If left out, no probation is assumed and the longer notice period applies
- `staffel_auch_arbeitnehmer` (boolean): Contract extends the longer statutory periods to resignations too
- `tarifvertrag` (boolean): A collective agreement applies (it may set other periods)
- `vertrag_monate` (integer): Longer notice period in the contract, whole months
- `vertrag_termin` (string): End date of the contractual period
- `wer_kuendigt` (string): Who gives notice, default arbeitgeber
- `zugang` (string, required): Day the notice is received by the other side, not the date of the letter (YYYY-MM-DD)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `klagefrist` (~138 tokens)

Klagefrist nach einer Kündigung

Germany only. Calculate the deadline for an unfair dismissal claim (Klagefrist, Kündigungsschutzklage) in Germany: 3 weeks after the written notice was received (§ 4 KSchG), moved to the next working day if it ends on a weekend or public holiday (§ 222 Abs. 2 ZPO). Applies in small businesses too. Use it to know from when a dismissal can be treated as final.

Input parameters:

- `bundesland` (string): Federal state of the company for public holidays (Bundesland), e.g. HE
- `zugang` (string, required): Day the written notice was received (YYYY-MM-DD)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `probezeit` (~267 tokens)

Probezeit-Rechner

German employment law, Germany only: end of the probation period (Probezeit) from the first working day, the last day a dismissal with 2 weeks notice can be delivered (§ 622 Abs. 3 BGB), when protection against dismissal (Kündigungsschutz, KSchG) starts and dates for the review meeting. Covers apprenticeships (Ausbildung, BBiG) and fixed-term contracts (Befristung). Use it when someone asks when a probation period ends or until when they can still dismiss with the short notice.

Input parameters:

- `ausbildung` (boolean): true for an apprenticeship (Ausbildung, BBiG): 1 to 4 months, dismissal without notice period
- `befristet_bis` (string): End date if the contract is fixed-term (Befristung) (YYYY-MM-DD)
- `beginn` (string, required): First working day according to the contract (YYYY-MM-DD)
- `beschaeftigte` (number): Employees in the business, part-time counted pro rata, apprentices not counted (§ 23 KSchG). Leave out if unknown
- `dauer` (integer, required): Length of the probation period as a whole number, unit see einheit
- `einheit` (string): Unit of dauer, default monate

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `befristung` (~377 tokens)

Befristungs-Rechner

German employment law, Germany only: checks a fixed-term contract without objective reason (sachgrundlose Befristung, § 14 TzBfG). Returns the latest allowed end date (2 years, 4 for new companies, 5 from age 52), extensions used and left, and a traffic light with findings on prior employment (Vorbeschäftigung), written form (Schriftform) and extensions (Verlängerung). Use it before signing or extending a fixed-term contract.

Input parameters:

- `ab52` (boolean): Special case: at least 52 at start and unemployed for at least 4 months before (§ 14 Abs. 3 TzBfG)
- `beginn` (string, required): Start of the first fixed-term contract (YYYY-MM-DD)
- `ende` (string): End of the first contract, without extensions (YYYY-MM-DD)
- `gruendung` (string): Founding date if the company is a new business (§ 14 Abs. 2a TzBfG) (YYYY-MM-DD)
- `regelaltersgrenze` (boolean): Person had reached the standard retirement age at contract start (§ 41 Abs. 2 SGB VI)
- `schriftform` (string): Signed on paper by both sides before the first working day: ja, nein, unklar. Default unklar
- `verlaengerungen` (array): Extensions in order
- `vorbeschaeftigung` (string): Employed before by the same employer: nein (never), arbeit (as employee, also mini-job or working student), azubi (only apprenticeship), praktikum (internship), leih (temp agency worker). Default nein
- `vorbeschaeftigung_ende` (string): End of the earlier employment, optional (YYYY-MM-DD)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `elternzeit_fristen` (~386 tokens)

Elternzeit-Fristen

German employment law, Germany only: deadlines for parental leave (Elternzeit, §§ 15 to 18 BEEG). Returns the last day the request must reach the employer (7 weeks, 13 weeks after the 3rd birthday), the required form, start and end of protection against dismissal (Kündigungsschutz), the end of maternity protection for the mother and the possible cut of annual leave (Urlaubskürzung). Use it when an employee announces parental leave or a request has arrived.

Input parameters:

- `antrag_zugang` (string): Day the request reached the employer, optional (YYYY-MM-DD)
- `beginn` (string, required): First day of parental leave (YYYY-MM-DD)
- `beschaeftigte` (number): Employees without apprentices, optional, decides the claim to part-time (more than 15)
- `elternteil` (string): Who takes the leave: mutter (mother) or anderer (father or other parent). Default anderer
- `ende` (string, required): Last day of parental leave (YYYY-MM-DD)
- `errechneter_termin` (string): Mother only, child born: expected date of delivery if the child came early, extends maternity protection (YYYY-MM-DD)
- `geburt` (string, required): Child's date of birth, or the expected date if not born yet (YYYY-MM-DD)
- `jahresurlaub` (number): Annual leave in days, optional, for the possible cut
- `mutterschutz_12_wochen` (boolean): Mother only: premature or multiple birth or disability, maternity protection 12 instead of 8 weeks after birth
- `noch_nicht_geboren` (boolean): true if the child is not born yet, geburt is then the expected date
- `teilzeit` (boolean): Employee works part-time for you during parental leave

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `mutterschutz` (~350 tokens)

Mutterschutz-Rechner

German employment law, Germany only: maternity protection periods (Mutterschutz, MuSchG) from the expected delivery date, protection before and after birth, extension after premature or multiple birth, the ban on dismissal (Kündigungsverbot) and the employer's duties: notify the supervisory authority (Aufsichtsbehörde) and get the maternity pay supplement refunded (Umlage U2). Also covers miscarriage and stillbirth (Fehlgeburt, Totgeburt). Use it when an employee is pregnant, has given birth or lost a pregnancy.

Input parameters:

- `ab_500_gramm` (boolean): Weight at least 500 grams, then it counts as stillbirth even before week 24
- `behinderung` (boolean): Disability of the child certified within 8 weeks, on request (12 weeks after birth)
- `errechneter_termin` (string): Expected date of delivery from the maternity record; for a stillbirth it extends the period (YYYY-MM-DD)
- `fall` (string): schwangerschaft (pregnancy or birth) or fehlgeburt (miscarriage or stillbirth). Default schwangerschaft
- `fehlgeburt_am` (string): Date of the miscarriage or stillbirth (YYYY-MM-DD)
- `fruehgeburt` (boolean): Premature birth as medically certified (12 weeks after birth)
- `geburt` (string): Actual date of birth, leave out while the child is not born (YYYY-MM-DD)
- `mehrlinge` (boolean): Twins or more (12 weeks after birth)
- `schwangerschaftswoche` (integer): Week of pregnancy at the miscarriage, the 13th week starts after 12 completed weeks

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `aufbewahrungsfristen` (~366 tokens)

Aufbewahrungsfristen

German employment law, Germany only: retention periods for HR documents (Aufbewahrungsfristen) and the earliest day to delete them: payslips, payroll account, social security pay records, time records, contract and personnel file after exit, rejected applications, warning letters. With modus austritt it returns a deletion plan (Löschplan) for the personnel file after an exit date. Use it when someone asks how long to keep employee documents or when they may or must be deleted.

Input parameters:

- `datum` (string): Start date: date of the document, last entry (lohnkonto), pay month (sv), rejection (bewerbung) or exit date (vertrag, akte, modus austritt). Not needed for abmahnung (YYYY-MM-DD)
- `dokument` (string): Document type: lohn (payslips, Lohnabrechnungen), reise (travel expense reports), lohnkonto (payroll account), sv (social security pay records, Entgeltunterlagen), arbeitszeit (time records), vertrag…
- `modus` (string): dokument (one document type) or austritt (deletion plan after exit). Default dokument
- `pruefung_am` (string): Only sv: day of that audit (YYYY-MM-DD)
- `pruefung_zeitraum_bis` (string): Only sv: end of the period covered by the last social security audit (Betriebsprüfung), from the audit notice (YYYY-MM-DD)
- `verfahren_laeuft` (boolean): A lawsuit or an audit about these documents is ongoing

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `pausen` (~209 tokens)

Pausen und Ruhezeit

German employment law, Germany only: checks shifts against the rules on breaks (Pausen), maximum daily and weekly working time (Höchstarbeitszeit) and rest between shifts (Ruhezeit) under the ArbZG, or the stricter JArbSchG for employees under 18. Returns working time, required and actual break per day, rest period and each violation. Use it to check a shift plan or a time sheet.

Input parameters:

- `branche_10_stunden_ruhezeit` (boolean): Industry that may shorten rest to 10 hours: hospital, care, restaurants, transport, broadcasting, agriculture (§ 5 Abs. 2 ArbZG)
- `jugendlich` (boolean): Person is under 18 (JArbSchG)
- `tage` (array, required): Shifts in order, one per day
- `vortag_ende` (string): End of the last shift on the day before the first day, optional (HH:MM, 24 h)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `arbeitgeberkosten` (~220 tokens)

Was kostet mich eine Person

Germany only. Employer costs (Arbeitgeberkosten) of one employee in Germany per month and year: gross pay plus the employer share of social security (Sozialversicherung) for full-time, part-time, working students (Werkstudent) and mini-jobs (Minijob), with rates, contribution ceilings and sources. In the transition zone (Midijob, Übergangsbereich) it calculates the exact employer share with the official factor F, or only the lower bound for years whose factor F is not yet published.

Input parameters:

- `art` (string, required): Type of employment
- `brutto_monat` (number, required): Gross pay per month in euro
- `gesetzlich_versichert` (boolean): Mini-job: person has statutory health insurance, default true
- `pauschsteuer` (boolean): Mini-job: employer pays the 2 % flat-rate tax, default true
- `stichtag` (string): Any day in the month the costs apply to; the rates valid on that day are used. Default today (YYYY-MM-DD)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `mindestlohn_check` (~123 tokens)

Mindestlohn prüfen

Germany only. Check a monthly salary and weekly hours against the German statutory minimum wage (Mindestlohn) on a given date: hourly wage, minimum wage, required monthly pay and the shortfall. Uses 13/3 weeks per month like payroll. Not for apprentices (they have a minimum training allowance).

Input parameters:

- `brutto_monat` (number, required): Gross pay per month in euro
- `stichtag` (string): Date to check, default today (YYYY-MM-DD)
- `wochenstunden` (number, required): Contractual hours per week

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `sofortmeldepflicht` (~95 tokens)

Sofortmeldung nötig?

Germany only. Check whether a German employer must file an immediate registration (Sofortmeldung) before the first working hour, by industry under § 28a Abs. 4 SGB IV: construction, hospitality, passenger transport, logistics and delivery, showmen, building cleaning, trade fair construction, meat industry, prostitution, security, hairdressing and cosmetics.

Input parameters:

- `branche` (string, required): Industry of the company

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `frist_merken` (~98 tokens)

Frist merken

Germany only. Remember an HR deadline without storing anything here: returns a calendar entry (iCalendar text the user can save) and a link to the matching calculator on lintelly.com, where the user can request an e-mail reminder (double opt-in). Lintelly HR has no memory and stores no personal data.

Input parameters:

- `datum` (string, required): The deadline (YYYY-MM-DD)
- `frist` (string, required): Kind of deadline

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `entgeltfortzahlung` (~187 tokens)

Entgeltfortzahlung bei Krankheit

Continued pay during sickness under German law (Entgeltfortzahlung, § 3 EFZG): up to 6 weeks per illness after a 4-week waiting period, with repeated sickness from the same illness (Fortsetzungserkrankung). Returns paid days, the last day of continued pay and when sickness benefit (Krankengeld) starts, the refund via the U1 levy (Umlage U1) and when a BEM is due. Use it when an employee is or was sick. Germany only.

Input parameters:

- `beginn` (string, required): First day of the employment relationship, starts the 4-week waiting period (YYYY-MM-DD)
- `zeitraeume` (array, required): Periods of incapacity to work (Arbeitsunfähigkeit) in date order, first and last day as on the sick note. Follow-up notes without a gap are one period.

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `urlaubsabgeltung` (~424 tokens)

Urlaubsabgeltung

Payment in lieu of untaken holiday when employment ends under German law (Urlaubsabgeltung, § 7 Abs. 4 and § 11 BUrlG). Calculates the holiday entitlement in the year of leaving (full or partial, Teilurlaub), adds carry-over, subtracts days taken and multiplies the open days by the daily rate from the last 13 weeks' pay. Use it when someone leaves with holiday left. Germany only.

Input parameters:

- `austritt` (string): Last day of employment (YYYY-MM-DD)
- `eintritt` (string): First day of employment (YYYY-MM-DD)
- `jahresurlaub` (number): Contractual annual holiday for full time in a 5-day week, in days (legal minimum 20)
- `mehrurlaub_gezwoelftelt` (boolean): True only if the contract expressly reduces holiday above the legal minimum pro rata (1/12 per month) when leaving
- `monatsgehalt_brutto` (number): Fixed gross monthly salary in euros
- `offene_tage` (number): Open holiday days if already known; then entry and exit dates are not needed
- `rest_vorjahr` (number): Holiday carried over from the previous year that has not lapsed. Leave out to add partial holiday from the year of entry automatically where it applies
- `schon_genommen` (number): Holiday days already taken in the year of leaving
- `schwerbehindert` (boolean): True if the person is severely disabled; the additional holiday (§ 208 SGB IX) is paid out too
- `tage_pro_woche` (number, required): Working days per week of the person, 0.5 to 6
- `variabel_13_wochen` (number): Variable pay (commission, allowances) in the last 13 weeks in euros, without overtime pay
- `verdienst_13_wochen` (number): Alternative to the monthly salary: gross pay of the last 13 weeks in euros, without overtime pay and one-off payments

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `abfindung_faustformel` (~294 tokens)

Abfindung nach Faustformel

Rule-of-thumb severance pay under German law (Abfindung, § 1a KSchG): monthly pay × factor × years of service, with the usual range of factors and the legal cap if a court dissolves the employment (§ 10 KSchG). There is usually no legal right to severance; use it to size an offer or a settlement. Germany only.

Input parameters:

- `alter` (integer): Age at leaving in whole years, only for the legal cap
- `austritt` (string, required): Last day of employment (YYYY-MM-DD)
- `eintritt` (string, required): First day of employment (YYYY-MM-DD)
- `faktor` (number): Monthly salaries per year of service, default 0.5 (statutory value), commonly up to 1.0
- `kleinbetrieb` (boolean): True for a small business with regularly 10 or fewer full-time employees (part-time counted pro rata)
- `monatsgehalt_brutto` (number, required): Gross monthly salary incl. regular allowances, in euros
- `sonderzahlungen_jahr` (number): Annual one-off payments such as Christmas or holiday bonus, in euros; added with 1/12
- `zugang_kuendigung` (string): Day the notice of termination was received; the 6-month waiting period of the KSchG counts to this day (YYYY-MM-DD)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `ausgleichsabgabe` (~209 tokens)

Ausgleichsabgabe

Compensatory levy for unfilled jobs for severely disabled people under German law (Ausgleichsabgabe, §§ 154, 160 SGB IX), years 2024 to 2026. Takes the jobs and the severely disabled employees per month (or one value for all months) and returns required places, employment rate, rate per place and month, the levy and the 31 March deadline. Only employers with 20 or more jobs on annual average are affected. Germany only.

Input parameters:

- `arbeitsplaetze` (array, required): Jobs (Arbeitsplätze) of 18 or more hours per week without apprentices and fixed terms up to 8 weeks: one value for every month or 12 values January to December
- `jahr` (integer): Calendar year of employment, default the current year
- `schwerbehinderte` (array): Severely disabled or equivalent employees as counted by the employment agency (angerechnet): one value or 12 monthly values, default 0

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `minijob` (~311 tokens)

Minijob: Stunden, Grenze und Kosten

Mini-job check under German law (Minijob, geringfügige Beschäftigung, § 8 SGB IV) for 2026 and 2027: maximum hours under the monthly earnings limit, minimum wage check (Mindestlohn), annual limit including one-off payments, and the employer's flat-rate contributions and levies (Pauschalabgaben) for the years whose rates are published. Use it before hiring a mini-jobber or changing hours or pay. Germany only.

Input parameters:

- `einmalzahlungen_jahr` (number): Promised one-off payments in the year in euros, e.g. Christmas bonus
- `gesetzlich_krankenversichert` (boolean): True (default) if the person has statutory health insurance; then the employer pays the health flat rate (Pauschale zur Krankenversicherung)
- `jahr` (integer): Year, default the current year
- `pauschsteuer` (boolean): True (default) for the usual 2 % flat-rate tax
- `stunden` (number): Planned working hours, leave out to get only the maximum hours
- `stunden_je` (string): Whether the hours are per week or per month, default week
- `stundenlohn` (number, required): Gross hourly wage in euros
- `unter_18_ohne_berufsabschluss` (boolean): True if the person is under 18 without vocational qualification; then the minimum wage does not apply (§ 22 Abs. 2 MiLoG)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `urlaubsanspruch` (~400 tokens)

Urlaubsanspruch

German employment law, Germany only: annual leave entitlement (Urlaubsanspruch, BUrlG) in working days, split into statutory minimum (gesetzlicher Mindesturlaub) and contractual extra leave (Mehrurlaub). Handles part-time (Teilzeit), alternating weeks, a change of working days during the year, entry or exit during the year (Teilurlaub) and extra leave for severe disability (§ 208 SGB IX). Use it when someone asks how many leave days an employee has.

Input parameters:

- `arbeitstage_pro_woche` (number, required): Days with work per week, each day counts fully however short; average for alternating weeks, e.g. 2.5
- `austritt` (string): Last day of employment if in the year, optional (YYYY-MM-DD)
- `bezugswoche` (string): Reference week of the contract: 5_tage (working days) or 6_tage (Werktage). Default 5_tage
- `eintritt` (string): Entry date if in or after the start of the year, optional (YYYY-MM-DD)
- `jahr` (integer): Leave year, default the current year
- `jahresurlaub` (number, required): Annual leave in the contract for full time, in days of the reference week
- `mehrurlaub` (string): Contract rule for extra leave on entry or exit in the year: wie-gesetz (contract says nothing, follows the law) or anteilig (contract cuts it pro rata). Default wie-gesetz
- `schwerbehindert` (boolean): Recognised severe disability (GdB from 50), not equal status
- `schwerbehindert_ab` (string): Recognised only from this date in the year, optional (YYYY-MM-DD)
- `wechsel_ab` (string): Day the number of working days changes, optional (YYYY-MM-DD)
- `wechsel_tage` (number): Working days per week from wechsel_ab

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `urlaubsverfall_hinweis` (~350 tokens)

Hinweis Urlaubsverfall

German employment law, Germany only: writes the notice an employer must give before unused leave can expire (Hinweis auf Urlaubsverfall, § 7 Abs. 3 BUrlG, BAG 9 AZR 423/16), as a finished letter with placeholders instead of names. Returns open days, expiry date, end of carry-over (Übertragung) and whether the letter comes too late. Use it at the start of the year or in autumn when someone asks how to stop leave from piling up or whether leave expires.

Input parameters:

- `ansprache` (string): Form of address in the letter: sie or du. Default sie
- `anspruch` (number, required): Leave entitlement of the year in working days
- `art` (string): jahresbeginn (start of year) or erinnerung (autumn reminder). Default by date: from July erinnerung
- `datum` (string): Date of the letter, must be in the leave year, default today (YYYY-MM-DD)
- `genommen` (number): Days already taken, default 0
- `geplant` (number): Days approved and planned, default 0
- `jahr` (integer): Leave year, default the year of datum
- `uebertragung` (string): Carry-over: gesetzlich (until 31 March) or vertraglich (contract allows longer). Default gesetzlich
- `uebertragung_bis` (string): Only vertraglich: carry-over end date in the following year, at the earliest 31 March (YYYY-MM-DD)
- `vorjahr` (number): Days left from the previous year that were carried over after a timely notice, default 0

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `schwellen_check` (~369 tokens)

Schwellenwerte: was gilt bei wie vielen Leuten

Size thresholds in German employment law (Schwellenwerte): which duties apply at how many employees, each counted the way its law counts (heads, part-time weighting, apprentices). Covers works council, unfair dismissal protection above 10 (KSchG), part-time claims, U1 levy, severely disabled quota, data protection officer, whistleblower channel and more, plus what changes at the next threshold. Use it when a founder asks what applies to a team of their size or what changes with the next hire. Germany only.

Input parameters:

- `arbeitsplaetze_ab_18_stunden` (integer): Jobs with 18 or more hours per week without apprentices, for the severely disabled quota; estimated if left out
- `azubis` (integer): Apprentices (Auszubildende)
- `betriebsrat` (boolean): True if there is a works council (Betriebsrat)
- `koepfe` (integer, required): Employees by head count without apprentices; part-time staff and mini-jobbers count, managing directors, freelancers and agency workers do not
- `personen_mit_personendaten` (integer): People who constantly process personal data by computer, incl. part-time, apprentices and freelancers; for the data protection officer
- `schwerbehinderte` (integer): Severely disabled employees without apprentices
- `teilzeit_11_bis_20_stunden` (integer): Of the employees, those with more than 10 up to 20 hours per week
- `teilzeit_21_bis_30_stunden` (integer): Of the employees, those with more than 20 up to 30 hours per week
- `teilzeit_bis_10_stunden` (integer): Of the employees, those with up to 10 regular hours per week

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `sonderkuendigungsschutz_check` (~777 tokens)

Sonderkündigungsschutz prüfen

Special protection against dismissal under German law (Sonderkündigungsschutz): checks 11 grounds such as pregnancy, parental leave, care leave, works council, severe disability, data protection officer, apprentices and whistleblowers. Returns a traffic light, the authority whose consent is needed, the protected period and the steps before giving notice. Use it before any dismissal, also in small businesses. Germany only.

Input parameters:

- `azubi` (string): Is the person an apprentice whose probation period is over? Answer ja, nein or unklar. Unanswered questions stay open, the result is then not green.
- `beauftragte` (string): Is the person an appointed officer for emission control, incidents, waste or water protection, or was removed from that role within the last 12 months? Answer ja, nein or unklar. Unanswered questions…
- `betriebsrat` (string): Is the person a member of the works council, the youth representation or representative of severely disabled employees, or left such office within the last 12 months? Answer ja, nein or unklar. Unans…
- `betriebsrat_vorhanden` (string): Is there a works council (Betriebsrat) in the business? Answer ja, nein or unklar. If left out, nein is assumed.
- `dsb` (string): Is the person your mandatory data protection officer, or was removed from that role within the last 12 months? Answer ja, nein or unklar. Unanswered questions stay open, the result is then not green.
- `elternzeit` (string): Has the person requested parental leave (Elternzeit) or is on it, or works part-time while receiving parental allowance? Answer ja, nein or unklar. Unanswered questions stay open, the result is then…
- `hinweisgeber` (string): Has the person recently reported a violation (whistleblowing), internally or to an external reporting channel? Answer ja, nein or unklar. Unanswered questions stay open, the result is then not green.
- `laenger_als_6_monate` (string): Only for severe disability: has the employment lasted more than 6 months without interruption? Answer ja, nein or unklar. If left out, ja is assumed.
- `mutterschutz` (string): Is the person pregnant, gave birth up to 4 months ago, still in the protection period after birth, or had a miscarriage after the 12th week of pregnancy? Answer ja, nein or unklar. Unanswered questio…
- `pflege` (string): Has the person announced or is taking short-term care leave, care leave or family care leave (Pflegezeit, Familienpflegezeit)? Answer ja, nein or unklar. Unanswered questions stay open, the result is…
- `schwerbehindert` (string): Is the person severely disabled (degree of disability 50 or more) or treated as equal (gleichgestellt)? Answer unklar if an application is pending or you do not know. Answer ja, nein or unklar. Unans…
- `wahl` (string): Is the person on the election board or a candidate, or did they invite to or prepare a works council election? Answer ja, nein or unklar. Unanswered questions stay open, the result is then not green.
- `wehrdienst` (string): Has the person received a call-up notice or is doing military service or a military exercise? Answer ja, nein or unklar. Unanswered questions stay open, the result is then not green.

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `bem_pflicht` (~182 tokens)

BEM-Pflicht prüfen

Checks whether an employer must offer occupational integration management under German law (betriebliches Eingliederungsmanagement, BEM, § 167 Abs. 2 SGB IX): more than 6 weeks of incapacity to work within the last 12 months, counted in calendar days and in working days, whatever the cause. Returns the counts, the day the limit was crossed and the next steps. Applies from the first employee. Germany only.

Input parameters:

- `arbeitstage` (array): Working days of the person, default Mo to Fr
- `stichtag` (string): Reference date, the 12 months before it are counted; default today (YYYY-MM-DD)
- `zeitraeume` (array, required): Periods of incapacity to work (Arbeitsunfähigkeit) of any cause, incl. partial incapacity. Follow-up notes as one period.

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `kuendigungsschreiben` (~559 tokens)

Kündigungsschreiben

German employment law, Germany only. Builds an employer's termination letter (Kündigungsschreiben, ordentliche Kündigung) in DIN 5008 form with the end date calculated under § 622 BGB from start date and day of receipt (Zugang), plus the checklist before sending (Schriftform § 623 BGB, Zugang, Vollmacht, Klagefrist). Names, addresses and signer stay placeholders in square brackets. Not for summary dismissal (fristlose Kündigung) or apprentices.

Input parameters:

- `anrede` (string): Form of address in the letter, default sie
- `ausbildung` (boolean): Apprenticeship (Ausbildungsverhältnis); the template does not fit then
- `betriebsrat` (string): Works council (Betriebsrat): none, already heard, or not yet heard; default keiner
- `briefdatum` (string): Date of the letter; placeholder if empty (YYYY-MM-DD)
- `eintritt` (string, required): First day of employment (Eintritt); apprenticeship in the same company counts (YYYY-MM-DD)
- `freistellung` (string): Release from work until the end (Freistellung), default keine
- `freistellung_ab` (string): First day of the release; placeholder if empty (YYYY-MM-DD)
- `kleinbetrieb_vier_wochen` (boolean): At most 20 employees and the contract agrees 4 weeks without a fixed end date (§ 622 Abs. 5 BGB)
- `probezeit_monate` (integer): Agreed probation in whole months (Probezeit), 0 for none. If left out, no probation is assumed and the longer notice period applies
- `resturlaub_tage` (number): Remaining holiday in working days, set off against an irrevocable release
- `rueckgabe` (boolean): Ask for return of work equipment, default true
- `tarifvertrag` (boolean): A collective agreement (Tarifvertrag) applies; its periods are not calculated
- `unterschrift` (string): Who signs: owner or managing director, Prokura (ppa.), in Vertretung (i. V.) or im Auftrag (i. A.); default geschaeftsfuehrung
- `vertragsfrist` (string): Longer notice period agreed in the contract (Vertrag), default keine
- `vertragsfrist_monate` (integer): Whole months of that contractual notice period, default 3
- `zugang` (string, required): Day the employee receives the signed original (Zugang), not the date of the letter (YYYY-MM-DD)
- `zustellung` (string): Delivery: personal handover or messenger (Bote), default persoenlich

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `abmahnung` (~290 tokens)

Abmahnung

German employment law, Germany only. Gives you what you need to write a formal warning letter (Abmahnung) yourself: the required parts (Rüge with date and time, verletzte Pflicht, Hinweis, Warnung vor Kündigung), a letter template with placeholders, writing rules, checklist and pitfalls. Use it when an employer wants to warn an employee about misconduct. The template uses roles instead of names of third parties. The facts themselves never go into this tool.

Input parameters:

- `anrede` (string): Form of address in the letter, default sie
- `briefdatum` (string): Date of the letter; placeholder if empty (YYYY-MM-DD)
- `datum_fruehere_abmahnung` (string): Date of the earlier warning, optional (YYYY-MM-DD)
- `datum_vorfall` (string, required): Day of the incident (Datum des Vorfalls) (YYYY-MM-DD)
- `fruehere_abmahnung` (string): Earlier warning (frühere Abmahnung): none, for the same kind of misconduct, or for a different kind; default nein
- `pflicht_aus` (string): Where the breached duty is written (Die verletzte Pflicht steht in), default Arbeitsvertrag
- `uhrzeit` (string): Time of the incident, HH:MM, optional
- `verstoss` (string, required): Kind of misconduct (Art des Verstoßes)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `kuendigung_pflichtangaben` (~164 tokens)

Kündigung: Formalien prüfen

German employment law, Germany only. Checklist of the formal requirements when an employer gives notice (Kündigung durch den Arbeitgeber), each item with its legal norm: written form, receipt (Zugang), notice period, works council hearing, special protection (Sonderkündigungsschutz), small business without the Kündigungsschutzgesetz up to 10 employees, 3-week deadline for a claim, Arbeitsbescheinigung, reference (Zeugnis), remaining holiday. Use it before a dismissal.

Input parameters:

- `beschaeftigte` (number, required): Number of employees counted under § 23 KSchG: apprentices not counted, part-time pro rata
- `betriebsrat` (boolean): There is a works council (Betriebsrat), default false

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `arbeitszeugnis` (~573 tokens)

Arbeitszeugnis: Aufbau und Zeugnissprache

German employment reference (Arbeitszeugnis, Zwischenzeugnis, Endzeugnis), Germany only. Use it when a founder wants a reference written: give the kind of reference and a grade from 1 to 5 per area, never names. Returns the structure with mandatory parts, the coded wording (Zeugnissprache) for each grade, the overall grade with its satisfaction formula, forbidden codes and traps, and the legal claim under § 109 GewO.

Input parameters:

- `art` (string): endzeugnis (final reference at the end of employment) or zwischenzeugnis (interim reference while employed), default endzeugnis
- `beginn` (string): First day of employment (YYYY-MM-DD)
- `ende` (string): Last day of employment, final reference only (YYYY-MM-DD)
- `fuehrungsverantwortung` (boolean): The person leads staff (Führungsverantwortung); then note_fuehrung counts toward the overall grade
- `grund` (string): Why the employment ends, final reference only, default ohne (no reason stated)
- `note_arbeitsbereitschaft` (integer): Grade for willingness to work (Arbeitsbereitschaft: commitment, initiative), 1 (sehr gut) to 5 (mangelhaft), default 2
- `note_arbeitserfolg` (integer): Grade for results (Arbeitserfolg: quality and quantity), 1 (sehr gut) to 5 (mangelhaft), default 2
- `note_arbeitsweise` (integer): Grade for way of working (Arbeitsweise: care, reliability, pace), 1 (sehr gut) to 5 (mangelhaft), default 2
- `note_fachwissen` (integer): Grade for expertise (Fachwissen), 1 (sehr gut) to 5 (mangelhaft), default 2
- `note_fuehrung` (integer): Grade for leadership (Führungsleistung), only with fuehrungsverantwortung, 1 (sehr gut) to 5 (mangelhaft), default 2
- `note_verhalten` (integer): Grade for conduct towards superiors, colleagues and customers (Verhalten), graded separately, 1 (sehr gut) to 5 (mangelhaft), default 2
- `schluss` (string): Closing formula: note (thanks, regret and wishes matching the grade, default), dank (thanks only), keine (none)
- `umfang` (string): qualifiziert (with performance and conduct, the usual case) or einfach (only kind and duration of work), default qualifiziert
- `zwischen_anlass` (string): Occasion of an interim reference, default wunsch (employee asked)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `stellenanzeige_check` (~126 tokens)

Stellenanzeige: AGG-Check

Checks a German job ad (Stellenanzeige) for discrimination traps under the AGG (Allgemeines Gleichbehandlungsgesetz), Germany only. Use it before a founder publishes a job ad or after you drafted one: pass the ad text. Returns each risky word with the protected characteristic (Merkmal), the reason and a better wording, plus the parts of a good ad; the text itself is neither stored nor returned.

Input parameters:

- `anzeigentext` (string, required): Full text of the job ad, at most 3000 characters, without names or contact details

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `interviewfragen_check` (~163 tokens)

Vorstellungsgespräch: erlaubte und verbotene Fragen

Checklist for job interviews in Germany (Vorstellungsgespräch, Interviewfragen), Germany only. Use it when a founder prepares an interview or asks whether a question is allowed, e.g. about pregnancy (Schwangerschaft), religion, health or age under the AGG. Returns forbidden and sensitive topics with the reason, allowed questions, the method for structured questions with rating anchors and the interview flow.

Input parameters:

- `form` (string): Interview setting: vor_ort (in person) or telefon_video (phone or video)
- `senioritaet` (string): Seniority of the role: ausbildung (apprenticeship or internship), berufseinstieg (entry level), berufserfahren (2 to 5 years), senior, fuehrungskraft (manager)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `mitarbeitergespraech_leitfaden` (~170 tokens)

Mitarbeitergespräch: Leitfaden

Guide for employee meetings in German companies (Mitarbeitergespräch), Germany only: critical feedback (Kritikgespräch), probation review (Probezeitgespräch), annual review (Jahresgespräch) or return after illness (Rückkehrgespräch). Use it when a founder has to hold such a meeting. Returns duration, preparation, phases with goal and open questions, difficult moments, a minutes template and legal traps such as BEM or works council rights.

Input parameters:

- `art` (string, required): Kind of meeting: kritik (critical feedback), probezeit (probation review), jahr (annual review), rueckkehr (return after illness)
- `betriebsrat` (boolean): The company has a works council (Betriebsrat), default false

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `nachweis_pflichtangaben` (~333 tokens)

Arbeitsvertrag-Check: Pflichtangaben nach NachwG

Checklist of the mandatory written terms of employment under § 2 Abs. 1 NachwG (Nachweisgesetz, Arbeitsvertrag-Check), Germany only. Use it when a founder hires someone or checks a contract: with the start date it gives the deadline for each of the 15 items (first working day, 7th calendar day, one month), with an answer per item it shows what is missing or overdue. It also checks the form: written form, text form since 2025 under conditions, paper-only industries and fixed-term contracts.

Input parameters:

- `angaben` (array): What the contract already contains, per item 1 to 15: drin (included), fehlt (missing), entfaellt (not applicable, only for items that apply only if agreed). Items without an answer count as open
- `befristet` (boolean): Fixed-term contract (befristet), default false
- `beginn` (string): Agreed first day of employment; deadlines count from it (YYYY-MM-DD)
- `empfangsbestaetigung` (boolean): With textform: the employee is asked to confirm receipt
- `form` (string): How the written statement is given: papier (signed paper), textform (PDF or e-mail), nichts (nothing in writing yet)
- `papierpflicht_branche` (boolean): Industry under § 2a SchwarzArbG (construction, hospitality, passenger transport, logistics, fairground, building cleaning, trade fair construction, meat industry, prostitution, security, hairdressing…

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `vertragsbausteine_suchen` (~134 tokens)

Vertragsbausteine suchen

Germany only. Search 127 German employment contract clauses (Vertragsbausteine), e.g. home office (Homeoffice), overtime (Überstunden), bonus, company car (Dienstwagen), non-compete (Wettbewerbsverbot), probation (Probezeit). Returns matching clauses with key and when they fit, and void clause types from the red list with the reason and the safe alternative.

Input parameters:

- `suchtext` (string, required): What the clause should cover, German works best, e.g. Homeoffice
- `vertragsart` (string): Type of contract, default arbeitsvertrag

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `vertragsbaustein` (~238 tokens)

Vertragsbaustein mit Text

Germany only. Get one German employment contract clause (Vertragsbaustein) by key, e.g. B3 (home office), C2 (overtime allowance), D18 (Christmas bonus). Returns when it fits, the inputs with limits and safe defaults, norms, court rulings, mandatory safeguards, what is blocked and the clause text in German with [Name] as placeholder. If required inputs are missing, it lists them instead of returning a text with gaps; call again with angaben.

Input parameters:

- `angaben` (array): Inputs of the clause as field and value, e.g. {feld: tage, wert: 2}. Numbers German style (4.500,50), options exactly as listed
- `eintritt` (string): Start of employment, only if the clause needs it (YYYY-MM-DD)
- `gehalt_monat` (number): Gross monthly salary in euro, only if the clause needs it
- `kennung` (string, required): Key of the clause, e.g. B3
- `wochenstunden` (number): Weekly working hours, only if the clause needs it

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `klausel_pruefen` (~110 tokens)

Klausel gegen die rote Liste lesen

Germany only. Read one clause of a German employment contract against 17 clause types that are void or prohibited under German law (rote Liste), e.g. all overtime paid with the salary, non-compete without compensation, cut-off periods without exceptions. Returns matches with reason, norm and the safe alternative clause. No match is not a legal review of validity. The text is only read, never stored.

Input parameters:

- `klausel` (string, required): Clause text, up to 3,000 characters

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `rechtswert` (~127 tokens)

Rechtswert mit Quelle

Germany only. Look up one German employment law value (Rechtswert) by its key, e.g. mindestlohn (minimum wage), minijobGrenze, bbgRv, urlaubMindest. Returns the value valid on the given date, all dated values, the legal norm, the official source link, the date it was last checked and its status.

Input parameters:

- `kennung` (string, required): Key of the value, e.g. mindestlohn
- `stichtag` (string): Date the value should apply to, default today (YYYY-MM-DD)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `rechtswerte_suchen` (~139 tokens)

Rechtswerte suchen

Germany only. Search the register of German employment law values (228 values with norm, official source and review date): minimum wage, mini-job limit, notice periods, probation, holiday, sick pay, maternity protection, retention periods, thresholds. Returns up to 20 matches with key, title, value on the date and status.

Input parameters:

- `gebiet` (string): Optional area of law
- `stichtag` (string): Date the values should apply to, default today (YYYY-MM-DD)
- `suchtext` (string): Words to search for, German or key, e.g. Mindestlohn, Urlaub, Aufbewahrung

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

### `rechtsaenderungen` (~110 tokens)

Was ändert sich wann

Germany only. Calendar of changes in German employment law values between two dates (Rechtsänderungen), e.g. what changes on 1 January: minimum wage, mini-job limit, contribution ceilings and rates. Lists each new value with the previous one and the source, and values that are not yet officially published.

Input parameters:

- `bis` (string): Last day, default one year after the first day (YYYY-MM-DD)
- `von` (string): First day, default today (YYYY-MM-DD)

Output parameters:

- `ergebnis`: Result of the tool; its fields differ per tool
- `fallen` (array)
- `herausgeber` (string)
- `hinweis` (string)
- `naechster_schritt` (array)
- `quellen` (array)
- `rechenweg` (array)
- `stand` (string)

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/com-lintelly-hr-deutschland/lintelly-hr-deutschland#diagnostics

## Score history

- 2026-11-05: 85
- 2026-11-04: 84
- 2026-11-03: 69
- 2026-11-02: 69
- 2026-11-01: 83
- 2026-10-31: 83
- 2026-10-30: 82
- 2026-10-29: 67
- 2026-10-28: 83
- 2026-10-27: 83
- 2026-10-26: 82
- 2026-10-25: 72
- 2026-10-24: 81
- 2026-10-23: 66

## Common questions

### What is the Lintelly HR Deutschland MCP server?

Lintelly HR Deutschland is an MCP server listed in the public MCP registry as com.lintelly/hr-deutschland. German employment law for small companies: notice periods, costs, sick pay, contracts. No sign-in. This page covers its npm package (@lintelly/hr-deutschland).

### Is the Lintelly HR Deutschland MCP server safe to use?

Lintelly HR Deutschland scores 85 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Lintelly HR Deutschland MCP server expose?

Lintelly HR Deutschland exposes 38 tools: ablauf, workflow_vorlage, kuendigungsfrist_rechnen, klagefrist, probezeit, and 33 more. Their descriptions and schemas cost roughly 10,533 tokens of context every time the server is loaded.

### Is the Lintelly HR Deutschland MCP server still maintained?

Lintelly HR Deutschland is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the Lintelly HR Deutschland MCP server under?

Lintelly HR Deutschland declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

### What did VerifyMCP test on the Lintelly HR Deutschland MCP server?

VerifyMCP ran 16 checks on Lintelly HR Deutschland, covering Malware scan, Known CVEs, Install scripts, Dependency health and 12 more. Endpoint Security and Transport & Reachability do not apply to an npm package, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- npm package: https://www.npmjs.com/package/@lintelly/hr-deutschland
- Socket report: https://socket.dev/npm/package/@lintelly/hr-deutschland
- Repository: https://github.com/Lintelly/lintelly-hr-deutschland
- Website: https://lintelly.com/hr
- Changelog RSS feed: https://verifymcp.io/servers/com-lintelly-hr-deutschland/lintelly-hr-deutschland.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-lintelly-hr-deutschland/lintelly-hr-deutschland/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/com-lintelly-hr-deutschland/lintelly-hr-deutschland.json
- HTML version of this page: https://verifymcp.io/servers/com-lintelly-hr-deutschland/lintelly-hr-deutschland
