filesfm_search_files
Search authenticated user visible files and folders using the central Files.fm search engine.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| results | Yes |
Search authenticated user visible files and folders using the central Files.fm search engine.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
| Name | Required | Description | Default |
|---|---|---|---|
| results | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered by structured data. The description adds the useful permission scoping ('authenticated user visible'), but says nothing about matching semantics (name vs content), result ordering, or how the limit bounds results — behavior an agent would want before calling a search tool.
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?
A single well-formed sentence with the scope front-loaded and no filler. It is efficient, though its brevity comes at the cost of the missing guidance noted elsewhere rather than from deliberate prioritization.
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?
An output schema exists, so return values need not be explained. However, for a search tool the critical missing pieces are matching semantics and how the limit interacts with results, plus a pointer to the sibling browse/search tools; with only two simple parameters this is close to adequate but still gaps.
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?
Schema description coverage is 0%, so the description must carry the burden and it does not: it never explains whether 'query' matches file names, content, or both, nor that 'limit' caps the number of returned results (max 50). The parameter names are largely self-evident, which keeps this above a 1, but no real meaning is added.
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 gives a specific verb plus resource ('Search ... files and folders') and scopes it to the authenticated user's visible content. It implicitly distinguishes itself from filesfm_search_docs by naming files and folders, but never states that separation explicitly, so the sibling differentiation is only inferable.
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?
It states a scope ('authenticated user visible files and folders') but gives no when-to-use guidance, no exclusions, and never points to alternatives such as filesfm_list_folder for browsing a known folder or filesfm_search_docs for documents. An agent must guess which search/browse tool to pick.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.