Skip to main content
Glama

FTP-Zugang löschen

delete_ftp_account
Destructive

Löscht EINEN zusätzlichen FTP-Zugang einer Domain — der Weg zurück zu create_ftp_account, etwa wenn ein Zugang für einen Dienstleister nicht mehr gebraucht wird. Der Login muss aus get_ftp_accounts stammen und wird serverseitig gegen die Zugangsliste genau dieser Domain geprüft; ein geratener oder fremder Login wird abgewiesen, bevor irgendetwas gelöscht wird. Den HAUPTZUGANG (in get_ftp_accounts als "main_account" ausgewiesen) kann dieses Werkzeug nicht löschen: Er ist zugleich der SSH-Zugang des Hosting-Pakets und gehört fest dazu — eine Anfrage danach wird mit dieser Begründung abgewiesen. Nenne dem Kunden vor dem Löschen den Login UND sein Startverzeichnis (get_ftp_accounts zeigt beides): Ein Zugang mit Startverzeichnis "/" sieht alle Dateien des Hostings, nicht nur die dieser Domain. Ein gelöschter Zugang ist weg, nicht gesperrt — die alten Zugangsdaten funktionieren nicht mehr, und ein gleichnamiger neuer Zugang bekommt ein neues Passwort; das alte lebt nicht wieder auf. Die Antwort sagt ausdrücklich, ob der Zugang danach wirklich aus der Liste verschwunden ist; war die Liste danach nicht abrufbar, meldet sie das als ungeprüft statt als Erfolg. War die Liste schon vorher nicht abrufbar, wird nichts gelöscht — das heißt dann NICHT, dass es den Zugang nicht gibt.

Input Schema

NameRequiredDescriptionDefault
loginYesLogin des zu löschenden FTP-Zugangs, genau wie von get_ftp_accounts geliefert — kein geratener Name, und nicht der Hauptzugang
domainYesDie Domain, z. B. example.de

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, and the description goes well beyond them: server-side validation rejects guessed/foreign logins before any deletion, deletion is irreversible (old credentials dead, same-named re-creation gets a new password), and the response distinguishes verified deletion from an 'unprüft' outcome when the list could not be re-read.

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 purpose is front-loaded in the first clause and every subsequent sentence carries operational content (rejection rules, irreversibility, response semantics). It is a single dense block with no headers or line breaks, which makes it heavier to parse than necessary, but there is no filler.

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?

With no output schema, the description carries the return-value burden and does so: it explains that the response states whether the account actually vanished, that an unreadable post-delete list is reported as unverified rather than success, and that a pre-existing list failure means nothing was deleted. Prerequisites, guard rails, and failure modes are all covered.

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%, so the baseline is 3, but the description adds genuine meaning: the login is validated server-side against exactly this domain's access list, and a rejected login aborts before deletion. The domain parameter itself adds nothing beyond the schema's 'example.de' example.

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?

States a specific verb and resource ('Löscht EINEN zusätzlichen FTP-Zugang einer Domain') and immediately differentiates scope from its sibling by naming create_ftp_account as the inverse and ruling out the main account. An agent can distinguish this from reset_ftp_password or delete_email_account without opening any schema.

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

Usage Guidelines5/5

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

Explicit when-to-use (a contractor's access is no longer needed), when-not (the 'main_account' marked in get_ftp_accounts, which is also the SSH access), and the required prerequisite that the login come from get_ftp_accounts. It even tells the agent to relay the login and home directory to the customer before deleting.

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.

Resources