Skip to main content
Glama

Contractor Foreman by Cotlet

List project files

list_project_files
Read-onlyIdempotent

Photos and documents on a project, with name, size and a download link.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_idYesThe project's numeric id (list_projects).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds genuinely new behavioral information by disclosing the shape of the result (name, size, download link), which matters because there is no output schema. It does not mention pagination, sorting, or result limits.

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 compact clause with zero filler, front-loading the resource and then the returned fields. It is a sentence fragment rather than a complete statement, but every word earns its place.

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 one-parameter, read-only list tool, the description covers the resource and the return contents, compensating for the absent output schema. Missing pagination/ordering notes and the prerequisite of obtaining project_id from list_projects keep it just short of complete.

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% and the single project_id parameter is documented in-schema with a pointer to list_projects. The description adds nothing about the parameter, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a clear resource scope — photos and documents attached to a project — and states the fields returned (name, size, download link). It lacks an explicit verb ('list'/'retrieve') and does not distinguish itself from siblings, but no sibling covers project files, so the intent is unambiguous.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no mention of alternatives (e.g., list_projects to obtain the project_id, or cotlet_upload_file for the inverse operation). Usage must be inferred entirely from the name and the phrase 'on a project'.

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.