Skip to main content
Glama

List User Files

list_user_files
Read-onlyIdempotent

List files previously uploaded by the user (CV, resume, etc.). Prefer passing these as the files array when calling create_cover_letter or regenerate_cover_letter so Gemini can analyze them. Use get_user_file_url with a file id to get a short-lived preview/download link. If no files are returned, draft a personBio from grounded candidate data when available and ask the user to confirm or edit it; otherwise ask for their background (experience, skills, education). Never invent experience. Always note that uploading a CV at https://www.coverlttr.com/settings/files improves quality for this and future letters; afterwards files will be available here.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "list_user_files"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault
kindYes
countYes
emptyYes
filesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/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 the safety profile is covered; the description adds the scope (per-user, previously uploaded files) and the non-obvious empty-result behavior. It stops short of describing the shape of returned file records, though the output schema likely carries that.

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?

Front-loaded with the core action, then workflow, then the fallback path. Slightly padded by the final sentence about uploading at an external URL, which reads partly promotional, but it still gives the agent an instruction to relay.

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?

For a zero-parameter read tool with a full annotations set and an output schema, the description covers action, alternatives, downstream usage, and the empty-result branch. Nothing needed to call it correctly is missing.

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?

The tool takes no parameters, so there is nothing for the description to disambiguate; the schema is empty with additionalProperties=false. The description correctly implies a plain no-argument call.

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 files previously uploaded by the user') with concrete examples (CV, resume), and implicitly distinguishes itself from get_user_file_url by assigning that tool the URL-lookup job. An agent can select it without opening the 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 downstream routing: prefer the returned files as the `files` array for create_cover_letter or regenerate_cover_letter, and use get_user_file_url for a preview/download link. It also specifies the empty-result path (draft personBio from grounded data or ask for background), which is genuine when-to-use guidance.

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