Skip to main content
Glama
cmeans

mcp-synology

tag_photos

Destructive

Add or remove tags on Synology Photos items to organize and filter photos; changes are written into original files and re-indexed, so file dates and sizes may change.

Instructions

Add or remove tags on Synology Photos items. Photos writes tags into the original files and re-indexes them, so file dates and sizes change. A tag disappears once no item has it, so to delete a tag remove it from every item that has it (list_photos tag=...); to rename, add the new name to those items, then remove the old one.

Input Schema

NameRequiredDescriptionDefault
idsYesItem IDs from list_photos, at most 1,000 per call.
tagsYesTag names, any case, such as `["beach", "2024"]`.
spaceNo`personal` (default) or `shared` (Shared Space). IDs belong to one space.personal
actionYes`add` (creates tags that don't exist) or `remove`.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.9.2

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing that tags are written into original files, that file dates and sizes change, and that items get re-indexed — material side effects an agent must know before calling. It also explains the tag lifecycle (a tag vanishes when unused), which is not inferable from destructiveHint alone.

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?

Three sentences, front-loaded with the core action, then the side-effect warning, then the lifecycle/workflow note. No filler; every sentence carries distinct information.

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?

For a mutation tool with no output schema, it covers side effects, batch limit context, and tag semantics thoroughly. It stops short of saying what a successful call returns (e.g., resulting tag set or status), which would close the last gap.

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 ids, tags, space, and action are already documented with formats and defaults. The description adds only the incidental hint of list_photos tag= filtering for sourcing ids, so the baseline 3 applies.

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 pair (add/remove) on a specific resource (tags on Synology Photos items), which cleanly separates it from siblings like edit_photo or rename. An agent can identify its role 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 Guidelines4/5

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

Provides concrete workflow guidance: to delete a tag, remove it from every item (routing to list_photos tag=...), and to rename, add the new name then remove the old. It lacks an explicit 'when not to use' or contrast with edit_photo, but the operational routing is clear.

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