Skip to main content
Glama

List project files

fastero_list_files
Read-only

List the files in a project: spreadsheets, CSVs, PDFs and other documents people uploaded, and files Fastero's assistant produced (workbooks, documents, PDFs, slides). Each comes with the fileId that fastero_read_file, fastero_rename_file and fastero_delete_file take, its name, its folder path (null at the top level), its type, its size in bytes, when it was last updated, and pathInNotebook: the path a notebook in this project opens it by, e.g. pd.read_csv(pathInNotebook) or pd.read_excel(pathInNotebook). A Python project's code is listed by fastero_list_python_files; notebooks, saved queries and dashboards have list tools of their own.

Input Schema

NameRequiredDescriptionDefault
projectIdYesThe project’s id, from fastero_list_projects.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior4/5

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

With annotations only declaring readOnlyHint/destructiveHint, the description carries the burden of return-value disclosure, and it does so richly: fileId, name, folder path (with the null-at-top-level semantics), type, size in bytes, last-updated, and pathInNotebook with concrete usage examples (pd.read_csv/pd.read_excel). It omits whether subfolders are traversed recursively, ordering, and any size/result limits, which are real behavioral gaps for a listing tool.

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?

A single dense paragraph that is front-loaded with what gets listed, then what comes back, then the sibling exclusions. Nearly every clause earns its place (pathInNotebook examples, folder-path null semantics), though the return-field enumeration is delivered as one long running clause that could be tightened.

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 read-only, single-parameter list tool with no output schema, the description is nearly sufficient: it names the resource scope, the return payload, and the alternatives. The remaining gap is behavioral detail on enumeration scope (recursive vs top-level only) and result limits, which an agent would otherwise have to discover by trial.

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?

Only one parameter, and the schema already documents it at 100% coverage, including its provenance ('from fastero_list_projects'). The description adds nothing beyond 'in a project' for that parameter. Baseline 3 applies since the schema does the heavy lifting.

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 ('List the files in a project') and immediately enumerates the resource types covered: uploaded spreadsheets, CSVs, PDFs, documents, plus assistant-produced workbooks, documents, PDFs and slides. It explicitly contrasts with sibling tools ('A Python project's code is listed by fastero_list_python_files; notebooks, saved queries and dashboards have list tools of their own'), so an agent can distinguish it from fastero_list_python_files, fastero_list_notebooks, fastero_list_queries and fastero_list_dashboards 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 Guidelines4/5

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

Explicitly routes away from this tool for Python code, notebooks, saved queries and dashboards, pointing to the correct alternatives. It also implies the reason to call it (to obtain the fileId consumed by fastero_read_file, fastero_rename_file, fastero_delete_file). It stops short of stating the positive trigger ('call this to find or open a file in a project') as a standalone instruction, but the context is clear.

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.