Skip to main content
Glama
Attacktive

claude-projects-mcp-server

by Attacktive

list_documents

Read-only

List a project's text documents and uploaded files, showing knowledge size and duplicate file names to identify issues.

Instructions

List the text documents in a project, and under uploaded_files the files uploaded through the web UI, such as PDFs, which count toward knowledge but are not documents: pull_documents copies them, push_documents sends a PDF, PNG, JPEG, GIF, or WebP file up as one, and delete_project backs them up, but nothing here can compact one. knowledge reports the project's size against its search threshold and its maximum. duplicate_file_names flags names held by more than one document, which happens when a save is interrupted; the next write_document with overwrite=true cleans them up. Relay any warning in the result to the user verbatim.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=true, and the description adds substantial behavioral detail: uploaded_files count toward knowledge but are not documents, knowledge reports size against thresholds, duplicate_file_names flags interrupted saves, and warnings should be relayed verbatim. This goes far beyond what structured annotations already provide.

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?

The description is dense and packs several non-obvious behaviors into one run-on paragraph, but it is front-loaded with the primary purpose and every sentence contributes useful information about return fields or edge-case behavior. It could be tightened into clearer sections, but none of it is filler.

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?

There is no output schema, so the description carries the burden of explaining return values; it covers uploaded_files, knowledge, duplicate_file_names, and warning. It does not describe the exact per-document shape or pagination, but for a list operation with a single clear ID parameter this is a fairly complete picture.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero schema description coverage and only one parameter, the description should explain or contextualize project_id, but it never mentions it. The parameter name is self-evident, so the gap is not severe, but the description adds no parameter-level meaning beyond the schema's name and type.

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?

The description opens with a specific verb and resource: 'List the text documents in a project' and then clarifies that uploaded_files are distinct from documents. It differentiates from sibling tools by referencing pull_documents, push_documents, delete_project, and write_document, so an agent can tell exactly what this tool covers.

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?

The description gives clear context about when the tool is relevant, especially for inspecting both documents and uploaded files, and it relates other siblings to those uploaded files. It does not lay out an explicit 'use this tool instead of X' rule, but the distinctions it makes are enough to route an agent correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.