Skip to main content
Glama

jellyfin_scan

Scan Jellyfin for new or changed files in one or all libraries, updating metadata and images for new items, with a dry run before applying.

Instructions

Scan Jellyfin for new/changed files: one library (metadata/images for new items only) or all libraries.

Input Schema

NameRequiredDescriptionDefault
hostYeshost name from the inventory that has apps.jellyfin / apps.tdarr
applyNofalse (default) = dry run: show what will happen on which hosts and a planHash. true = run it; needs planHash
libraryNodefault: all libraries
planHashNoplanHash from the dry run of the very same call, good for one apply; refused if targets or their state changed since

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must carry the full behavioral burden. It adds the useful nuance that single-library scans only pull metadata/images for new items, but says nothing about whether this mutates state, what permissions/host model it needs, or how dry-run/apply interact — those mechanics live only in the schema.

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?

A single front-loaded sentence with no filler. The parenthetical clarifying single-library behavior is slightly dense but earns its place.

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?

For a 4-parameter tool with a dry-run/planHash workflow, the schema covers the mechanics, but with zero annotations and no output schema the description leaves the safety profile and mutate-vs-read nature unstated. It is adequate but not complete for a mutation-triggering tool.

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 host, apply, library, and planHash are already documented. The description reinforces the library default (all libraries) and adds the metadata/images nuance, but adds no format or constraint details beyond the schema — baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Scan) and resource (Jellyfin files) plus the scope distinction of one library vs all libraries, and clarifies that single-library mode only handles metadata/images for new items. It does not explicitly contrast with siblings like jellyfin_task_run or tdarr_scan, but the purpose is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

The description implies when scanning is relevant ('new/changed files') but gives no explicit when-to-use, prerequisites, or routing to alternatives such as jellyfin_task_run or tdarr_scan. The library scope choice is described but framed as a parameter effect rather than usage guidance.

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