Skip to main content
Glama

Datei anfordern

datei_anfordern

Fordert eine Datei vom Menschen an und gibt einen Link zurück, über den er sie in Meistron hochlädt. Für Preisdateien von Lieferanten (DATANORM), PDFs, Belege und Fotos.

Die Anforderung selbst verarbeitet noch nichts. Nach dem späteren Upload wird eine DATANORM-Datei automatisch geprüft und als Importvorschau vorbereitet; Einkaufspreise oder Artikel werden dabei NICHT angewendet. Das Anwenden startet ein Mensch danach in Meistron. Belege werden nur abgelegt, Bilder können dem genannten Auftrag als Foto zugeordnet werden.

Eine Datei lässt sich NICHT durch den Chat schicken — auch nicht als Text oder Base64. Das ist keine Einschränkung, sondern Absicht: Bei einer Preisdatei mit zehntausenden Artikeln zählt jedes Zeichen, und ein durchgereichter Text verliert oder erfindet welche.

Den Link dem Menschen zeigen. Er muss in Meistron angemeldet sein — ohne Anmeldung führt der Link nirgendwohin. Danach mit „datei_stand" nachsehen, ob sie da ist.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
zweckYesdatanorm = Preisdatei eines Lieferanten · dokument = PDF (Ausschreibung, Plan) · beleg = Eingangsrechnung oder Quittung · bild = Foto.
hinweisNoWas genau gebraucht wird — steht dem Menschen auf der Upload-Seite.
lieferant_idNoPFLICHT bei zweck=datanorm: von welchem Lieferanten die Preisdatei kommt. Ohne gültige Kennung wird keine Anforderung angelegt. „lieferanten_auflisten" nennt die Kennungen.
idempotency_keyNoIm vollautonomen Betrieb erforderlich. Beim ersten Aufruf weglassen: Der Server liefert dann einen UUID-Key, ohne die Aktion auszuführen. Den Aufruf mit diesem Key wiederholen und bei Retry/Reconnect denselben Key verwenden. Eine neue beabsichtigte Aktion braucht einen neuen Key.
gehoert_zu_auftragNoKennung des Auftrags, zu dem die Datei gehört. Der Vermerk am Auftrag wird gesetzt; eine Ansicht, die dort abgelegte Dateien anzeigt, gibt es zurzeit noch nicht — nur ein Bild (zweck=bild) erscheint sichtbar in den Fotos des Auftrags. Sag dem Nutzer nichts anderes zu.

TDQS

A4.4/5.0
Behavior5/5

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

The description discloses far more than the sparse annotations (all false hints): the request itself processes nothing, DATANORM uploads get auto-checked but prices are never applied, receipts are only stored, images can be attached to an order, the link requires a Meistron login to work, and files cannot be passed through chat as text or Base64 — with the rationale that character fidelity matters. These are exactly the behavioral traits that would otherwise cause an agent to promise the user the wrong outcome.

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 longer than average (four paragraphs), but every sentence earns its place: purpose first, then post-upload behavior, then the chat constraint with justification, then the direct action commands (show the link, require login, check with datei_stand). The rationale sentence about character loss is slightly verbose but helps an agent explain the constraint to a user. Front-loaded structure is excellent.

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?

For a tool with 5 parameters, a two-phase idempotency protocol, and differentiated post-upload behavior, the description plus 100%-covered schema form a complete picture: the returned link is mentioned, the login prerequisite is stated, the follow-up tool is named, and per-file-type outcomes are specified. The behavior that only images appear in the order's photos is documented in both schema and description. No critical gap remains for correct invocation.

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 of 3 applies. The schema already documents the zweck enum values, the lieferant_id requirement for datanorm (including the lieferanten_auflisten pointer), the two-phase idempotency_key protocol, and the gehoert_zu_auftrag caveat about no file view existing yet. The description's mention of 'Preisdateien von Lieferanten (DATANORM), PDFs, Belege und Fotos' reinforces the enum mapping but adds no new per-parameter 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?

The first sentence states a specific verb+resource+outcome: 'Fordert eine Datei vom Menschen an und gibt einen Link zurück, über den er sie in Meistron hochlädt.' It lists the exact file types (DATANORM, PDFs, Belege, Fotos) and clearly differentiates from the sibling datei_stand by describing request-vs-check roles in one workflow.

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

Usage Guidelines4/5

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

The description gives clear context for when to use the tool (needing a file from a human, with the chat-upload path explicitly ruled out) and names datei_stand as the follow-up step. It also explains what the tool does NOT do — it does not apply prices or articles, which prevents misuse. It never explicitly names an alternative tool for a given condition, but the workflow and exclusions are concrete enough that an agent can route correctly.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation5/5

Each tool name clearly identifies a distinct resource (Angebot, Auftrag, Rechnung, Material, etc.) and action. Even potentially similar pairs like material_buchen and material_zuweisen are explicitly differentiated in their descriptions, so an agent can reliably select the correct tool.

Naming Consistency5/5

All tool names follow a consistent resource_action pattern in lowercase with underscores (e.g., kunde_anlegen, material_suchen). A few status/query tools like betrieb_ueberblick and datei_stand use noun compounds, but these are consistently used for state queries and do not break the overall convention.

Tool Count3/5

With 23 tools, the server falls into the 'heavy' range of 16-25. While the breadth of a handwerker management system justifies many operations, the count is high and some areas (like customer management) are underrepresented, making the set feel larger than necessary.

Completeness3/5

The core order-to-invoice workflow is well covered, but there are notable gaps: no customer search or update, no conversion from Angebot to Rechnung, and no ability to change order status. These are significant omissions that agents must work around, even though the descriptions clearly state these limitations.

Resources