Skip to main content
Glama
cmeans

mcp-synology

photo_task

Destructive

Check progress, stop running, list, or clear finished Synology Photos copy, move, and delete tasks.

Instructions

Follow up on a Synology Photos copy, move or delete that is still running. With a handle (photos:): action=status shows progress; action=stop stops it (it may then be partly done). Without a handle: lists this user's copy, move and delete tasks. action=clear removes finished tasks from that list. Don't poll in a loop: check when the user asks, or before doing something that depends on the result.

Input Schema

NameRequiredDescriptionDefault
actionNo`status` (default; progress, or the task list), `stop` (needs `handle`; what's done stays done) or `clear` (removes every finished task from the list).status
handleNoThe handle a reply gave, such as `photos:14`; omit to list the tasks.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.9.2

TDQS

A4.3/5.0
Behavior4/5

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

Annotations only flag destructiveHint=true and readOnlyHint=false globally, but the description differentiates the actions themselves: status is a read, stop may leave the task 'partly done', clear removes only finished tasks. That partial-completion caveat is the key behavioral fact an agent needs and it is not in the annotations. Missing only permission/auth notes and what a handle looks like when stale.

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?

Four compact sentences, front-loaded with the primary use case and with the anti-polling warning placed last as a guardrail. There is mild duplication of the schema's action enumeration, which is the only waste.

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?

No output schema, yet the description says what status yields (progress for a handle, otherwise this user's task list), which covers the return-value gap adequately for a 2-parameter tool. It stops short of describing task fields or how finished vs running tasks are distinguished in the 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 coverage is 100%, and the schema already documents `action` (with its default and per-value meaning) and `handle` (including the `photos:14` example). The description largely restates that, adding only the 'handle a reply gave' provenance cue and the 'stop needs a handle' dependency.

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?

Names the precise resource (a running Synology Photos copy/move/delete task) and the three operations keyed off the presence of a handle. An agent can distinguish it from copy_photos, move_photos, delete_photos and file_task 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 Guidelines5/5

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

Explicitly splits behavior on the `handle` parameter (with handle -> status/stop on that task; without -> list this user's tasks) and explicitly states when NOT to poll: 'check when the user asks, or before doing something that depends on the result.' That is a real usage constraint, not an inference.

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