Skip to main content
Glama
EasyModeOnly

@ezquill/mcp-server

by EasyModeOnly

list_projects

Read-only

Find and select writing projects by title, status, or ownership. Use this to obtain a project ID, which is required for all other tools.

Instructions

List the writer's projects. Start here: every other tool needs a projectId.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoDefault 50.
searchNoMatch against the title.
sharedNoList projects shared WITH the writer instead of ones they own.
statusNoFilter by project status.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, and the description's 'List' is consistent with that. The description adds the valuable workflow context that this tool is the starting point and that other tools depend on its output (projectId). This is beyond the annotation and helps an agent understand its role in a multi-step process.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly packed sentence that leads with the core purpose and immediately follows with the critical usage note. There is zero redundancy; every word earns its place. It is optimally concise and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose and the entry-point role, but it does not mention the return format or that the response contains project IDs, which is essential for an agent to proceed with other tools. Since there is no output schema, the description carries the burden of describing the result, and it does not. For a simple list tool this is a gap, though the name hints at a list.

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%, so each parameter (limit, search, shared, status) already has an explanatory description. The tool description adds no parameter-specific details, so the baseline of 3 is appropriate—the schema carries the semantic weight.

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 states a specific verb 'List' and resource 'the writer's projects', and crucially adds 'Start here: every other tool needs a projectId.' This clearly distinguishes it from siblings like get_project and search_project by positioning it as the entry point. It leaves no ambiguity about what the tool does.

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 phrase 'Start here' gives explicit when-to-use guidance, and the statement 'every other tool needs a projectId' implies that this tool is the prerequisite for others. It does not explicitly mention alternatives like search_project for filtered discovery, but the context is strong. It lacks an explicit 'when not to use' clause, hence a 4.

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