Skip to main content
Glama

List Compose projects

nas_docker_projects
Read-only

List Docker Compose projects with status, path, container counts, and image update availability; filter by kind, name, state, or updates to find projects needing attention.

Instructions

List Docker Compose projects (data.projects[]) with status, path, container counts and whether image updates are available. Projects that carry an application_id are managed by the app center: they cannot be deleted here and must be uninstalled with nas_app_manage. update_available is three-state: omit it for no filter, true for projects with updates, false for projects without. A status ending in _OPERATING means an operation is still in progress. data.original_total is the unfiltered project count.

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": "nas_docker_projects"
  }
}

Input Schema

NameRequiredDescriptionDefault
kindNoOnly app-center projects, or only user-created ones.
nameNoOnly projects whose name contains this text.
orderNoSort direction.
statusNoOnly projects in these states.
sort_byNoSort key.
update_availableNotrue: only with image updates; false: only without.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered; the description adds real value beyond that by disclosing the app-center ownership constraint (cannot be deleted here), the meaning of a trailing _OPERATING status, and that data.original_total is the unfiltered count. It does not mention pagination or result-size limits, which is the only notable gap 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.

Conciseness5/5

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

Four tightly packed sentences, each carrying distinct information with no restatement of the name or title. The output shape is front-loaded and the constraint/format notes follow in a logical order.

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?

With no output schema, the description correctly compensates by describing the response envelope (data.projects[], data.original_total) and the per-project fields. Remaining gaps are minor: no indication of pagination, ordering defaults, or what the path/status values look like beyond the _OPERATING convention.

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 the schema already documents kind, name, order, status, sort_by and update_available; baseline is 3. The description adds only modest meaning on top – the 'omit it for no filter' tri-state for update_available and the semantics of _OPERATING statuses – but does not clarify sort defaults, name matching behavior, or how multiple status values combine.

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?

Opens with a specific verb+resource ('List Docker Compose projects') and immediately names the returned fields (status, path, container counts, update availability). It also distinguishes the managed subset by naming nas_app_manage as the tool that owns uninstall, so an agent can separate this from container/image listing tools without opening a 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?

Gives concrete filtering guidance ('update_available is three-state: omit it for no filter, true for..., false for...') and a clear when-not/where-else rule for app-center projects that must be uninstalled via nas_app_manage. It stops short of explicitly routing between this and nas_docker_containers/nas_docker_app_usage, so not a full 5.

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