Skip to main content
Glama
elster-mcp-server
by kegelmeier

elster_form_attach

Attach local PDF or XML files to an ELSTER form upload group, creating one row per file without submitting the form. Supports up to 20 files at 10 MB each.

Instructions

Attaches local files to a form's upload group, e.g. the Einspruch page "5 - Anhänge" (group "anhang_mzb"). PDF or XML, max 10 MB each, up to 20 files. Uploads each file the way the portal page does and creates one row per file. Submits nothing.

Input Schema

NameRequiredDescriptionDefault
ridNoPage with the upload, e.g. "FormData://einspruch-23-v_23/Startseite[0]/Anhaenge[0]".
filesYesAbsolute paths.
groupYesUpload group, e.g. "anhang_mzb".

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does substantial work: it names accepted formats (PDF or XML), per-file size (max 10 MB), file-count cap (20), the side effect (one row per file), and explicitly states it submits nothing — a useful non-terminal mutation signal. Gaps remain around failure behavior (partial upload of a batch) and whether attached files can be removed afterward.

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 sentences, front-loaded with the action and scope, then constraints, then the crucial "Submits nothing" caveat last. Dense with facts and free of filler.

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

Completeness4/5

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

For a 3-parameter mutation with no annotations and no output schema, the description covers purpose, accepted inputs, limits, and side effects, which is most of what an agent needs to call it safely. It falls short on error/partial-failure semantics and on confirming what the created rows look like afterward.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3; the schema already documents rid, files, and group with matching examples. The description adds only the format/size/count constraints on `files`, which is real but modest added meaning.

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?

"Attaches local files to a form's upload group" states a specific verb and resource, and the concrete example (Einspruch page "5 - Anhänge", group "anhang_mzb") removes ambiguity. An agent can distinguish this from row-manipulation siblings like elster_form_add_row or elster_beleg_upload without opening the schema.

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?

Usage is implied by "a form's upload group" and by the closing note "Submits nothing", which tells the agent this is a step within a form workflow rather than a final action. However, no explicit when-to-use or when-not-to-use guidance is given, and the nearest alternative (elster_beleg_upload) is never named or contrasted.

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