Skip to main content
Glama
KI4JLU

mcp-blanko

by KI4JLU

JLU Salary & Budget Calculator (MCP Server)

This tool allows your AI assistant to calculate estimated salaries and total employer costs for project staff at Justus Liebig University (JLU) Giessen.

It automatically handles the university's official salary tables, compounding tariff increases, and complex German social security and taxation rules.


What It Calculates

The calculator supports three types of university staff:

  1. Student Assistants (Hilfskräfte)

    • Calculates monthly hourly wages based on education level.

    • Handles student social security rules (including Minijobs and Midijob pension contributions).

    • Computes the total cost to the university.

  2. Employees Covered by Collective Agreements (Tarifbeschäftigte - TV-H)

    • Looks up official TV-H salary grades (E1 to E16) and stages.

    • Tracks stage progression (getting raises automatically over time).

    • Computes full employer contributions (Health, Pension, Unemployment, and Care insurance).

    • Includes VBL additional pension, U2 levies, and the November Christmas bonus (Jahressonderzahlung).

  3. Civil Servants (Beamtinnen und Beamte)

    • Looks up Besoldungsgruppen (A6 to A16) and stages.

    • Computes family allowances for spouses and children (including multi-child rules).

    • Includes annual special payments and holiday bonuses (Sonderzahlung/Urlaubsgeld).


Related MCP server: MCP TypeScript Starter

How to Use It with an AI Assistant

Once connected, you can ask your AI assistant questions in plain language, such as:

  • "How much will it cost to hire a student assistant for 40 hours a month from March 2026 to February 2027?"

  • "What are the monthly and total employer costs for a TV-H E13 staff member starting at Stage 2 for a 2-year contract?"

  • "Compute the budget for a civil servant in grade A12, stage 3, with 2 children, working 50% time for all of 2027."

The AI will use the calculator tools in the background to provide 100% accurate, spreadsheet-validated calculations.


Quick Start (For Administrators / Developers)

Requirements

  • Node.js (version 18 or higher)

Setup & Run

  1. Install dependencies:

    npm install
  2. Build the application:

    npm run build
  3. Start the server:

    npm start

Connecting to Claude Desktop

Add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "jlu-salary-calculator": {
      "command": "node",
      "args": ["/absolute/path/to/Entgeltrechner-MCP/dist/index.js"]
    }
  }
}

(Replace /absolute/path/to/ with the actual path to where this folder is saved on your computer).

Available Tools

5 tools
fetch_dataD

Placeholder for a tool that calls an external API. Replace the handler with your own API logic.

ParametersJSON Schema
NameRequiredDescriptionDefault
methodNoHTTP methodGET
endpointYesAPI endpoint path (e.g., /users/123)

TDQS

D1.9/5.0
Behavior1/5

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

No annotations provided, and description only says it calls an external API without disclosing side effects, permissions, or idempotency. Completely insufficient.

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

Conciseness3/5

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

Very short but not informative. It is concise but the content is a placeholder message, not valuable instructions.

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

Completeness1/5

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

Tool has no output schema and only 2 parameters; yet description fails to explain what the tool does operationally. Inadequate for agent use.

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 covers both parameters (method and endpoint) with descriptions. Description adds no additional meaning, so baseline score of 3 is appropriate.

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

Purpose2/5

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

Description is vague: 'Placeholder for a tool that calls an external API.' It does not specify what data is fetched, from which source, or the tool's actual role. No differentiation from siblings.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives. No mention of context or exclusions.

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

hello_worldA

A simple greeting tool. Takes a name and returns a personalized greeting.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe name to greet

TDQS

A4.1/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that it returns a personalized greeting, but does not specify if it has side effects, idempotency, or other behavioral traits. For a simple greeting tool, this is acceptable but minimal.

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?

Two concise sentences front-load the purpose and action. No unnecessary words, every sentence is relevant.

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

Completeness5/5

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

Given the tool's simplicity (one required parameter, no output schema, no complex behavior), the description adequately covers input and output. It is complete for its level.

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

Parameters4/5

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

Schema coverage is 100% for one parameter, so baseline is 3. The description adds value by clarifying the output behavior (returns a personalized greeting), which goes beyond the schema's parameter description.

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 the tool is a greeting tool that takes a name and returns a personalized greeting. This verb+resource specification distinguishes it from sibling tools like fetch_data or long_running_task.

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 usage by stating its function, but does not explicitly state when to use it over alternatives or provide any conditions. It is adequate but lacks guidance for an agent to choose between siblings.

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

long_running_taskB

Demonstrates an async tool that simulates a long-running operation (e.g., data processing, report generation).

ParametersJSON Schema
NameRequiredDescriptionDefault
taskNameYesName of the task to run
durationMsNoSimulated duration in milliseconds (100-5000)

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It only mentions 'async' and 'simulates' but does not disclose critical behavioral traits such as cancellation behavior, error handling, resource consumption, or whether the task runs in the background or blocks.

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

Conciseness4/5

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

Single sentence that effectively conveys the core purpose. Could be slightly more structured (e.g., separating purpose from behavior), but it is concise and front-loaded with the key idea.

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

Completeness3/5

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

Tool is simple (2 params, no output schema). The description mentions async behavior but lacks details on return values, error responses, or how the result is retrieved. Given the demo nature, it is adequate but not fully complete.

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 covers both parameters with descriptions (100% coverage). The description adds no extra semantics beyond 'simulates long-running operation'—it neither explains how taskName relates to the simulation nor provides additional context for durationMs beyond the schema's min/max/default.

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 the tool is an async simulation of a long-running operation, with concrete examples like data processing and report generation. It distinguishes itself from siblings by focusing on async behavior and duration simulation.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like fetch_data or process_order. The description does not specify prerequisites, ideal contexts, or situations where this tool should be avoided.

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

manage_fileC

Demonstrates reading and writing local files. Operates within a configurable base directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesWhether to read or write
contentNoContent to write (required for write action)
filePathYesRelative file path within the working directory

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It states read/write capability and a configurable base directory, but fails to mention whether operations are destructive, reversible, or require specific permissions. No side effects or safety details are provided.

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

Conciseness4/5

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

The description is a single concise sentence that front-loads the purpose. However, the word 'demonstrates' is filler and the phrase 'configurable base directory' could be clearer.

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

Completeness2/5

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

For a tool with 3 parameters, no output schema, and no annotations, the description is insufficient. It does not explain how to use the action/content dependent parameters, nor does it describe the return value. The mention of a configurable base directory is ambiguous and not resolved in the schema.

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 coverage is 100%, so the baseline is 3. The description adds little beyond the schema: 'reading and writing' and 'configurable base directory' do not clarify parameter semantics like the relationship between content and write action, or what 'relative' means for filePath.

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

Purpose4/5

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

The description clearly states the tool reads and writes local files within a configurable base directory, distinguishing it from unrelated sibling tools like fetch_data or hello_world. However, the word 'demonstrates' slightly undermines confidence, and the mention of a configurable base directory is not reflected in the schema parameters.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, scenarios, or exclusions. Sibling tools are available but without any comparative context.

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

process_orderC

Demonstrates a tool with a rich input schema: nested objects, enums, optional fields, and error handling.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemsYesList of items to order
notesNoOptional order notes
customerYes
priorityNoOrder priority levelnormal

TDQS

C2.3/5.0
Behavior2/5

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

With no annotations, the description should disclose behaviors like idempotency, side effects, and error specifics. It only mentions 'error handling' without details, leaving the agent uninformed about consequences.

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

Conciseness3/5

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

The description is concise but lacks essential content. It is not verbose, but its brevity sacrifices clarity, earning a mid-range score.

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

Completeness2/5

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

Given the tool's complexity (4 params, nested objects, no output schema), the description is insufficient. It omits the tool's purpose, expected output, and error handling specifics, leaving the agent underinformed.

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 coverage is 75%, with most parameters already described. The description adds no extra meaning beyond what the schema provides, so it meets the baseline but doesn't compensate for the 25% gap.

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

Purpose2/5

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

The description only highlights schema features (nested objects, enums) but fails to state the tool's action—processing an order. This is vague and does not help an agent understand the tool's primary function.

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

Usage Guidelines2/5

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

No usage context or alternatives are provided. The description does not indicate when to use this tool over siblings like 'fetch_data' or 'manage_file'.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv1.0.0
    • First observedfetch_data
    • First observedhello_world
    • First observedlong_running_task
    • First observedmanage_file
    • First observedprocess_order

TDQS

B3/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: external API call, greeting, async simulation, file management, and order processing. No two tools overlap in functionality.

Naming Consistency4/5

All tool names use consistent snake_case, but 'hello_world' deviates from the verb_noun pattern as it is noun_noun. Otherwise, naming is predictable.

Tool Count5/5

With 5 tools, the count is within the well-scoped range. The server appears to be a demonstration or utility set, so the number is appropriate.

Completeness3/5

The tool set covers several common patterns (API, greeting, async, file I/O, complex schema) but lacks a cohesive domain, making it unclear what operations are missing. For a demo, it is moderately complete.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A TypeScript-based template for rapidly developing MCP servers with modular tool architecture, built-in validation using Zod schemas, and comprehensive error handling.
    8
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides a starting template for building MCP servers with TypeScript, including examples of tools and resources to accelerate development.
    -
  • F
    license
    C
    quality
    D
    maintenance
    A TypeScript template for building MCP servers with placeholder tools and dual transport support (stdio + SSE).
    5
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/KI4JLU/Entgeltrechner-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server