list_ftp_users
Retrieve all FTP users configured on a 1Panel server. Use it to audit or manage FTP access.
Instructions
List FTP users
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Retrieve all FTP users configured on a 1Panel server. Use it to audit or manage FTP access.
List FTP users
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Changes observed during successful MCP inspections.
v1.0.0Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure, and it discloses almost nothing. 'List' implies a read-only operation, but there is no statement about permissions, whether pagination or filtering applies, or what happens if no FTP users exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three words with zero filler and the resource is front-loaded, which is efficient. However, this is brevity by omission rather than disciplined conciseness — there is simply nothing to trim and nothing substantive conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-argument list tool with no output schema and no annotations, the description is minimally sufficient to select and invoke it. It nonetheless omits the returned fields, ordering, and any precondition, which a sibling-dense FTP toolset would benefit from stating.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema is empty and there is nothing for the description to clarify. Baseline 4 applies for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is essentially the tool name with underscores removed ('list_ftp_users' → 'List FTP users'), so it restates the identifier rather than adding explanatory content. The verb+resource pairing is unambiguous, but it offers no differentiation from the many sibling FTP tools (create_ftp_user, update_ftp_user, delete_ftp_user, sync_ftp_users, get_ftp_logs).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool, what prerequisites exist (e.g. FTP service enabled), or how it relates to alternatives like get_ftp_base_info or sync_ftp_users. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.