Skip to main content
Glama
rollecode

Audiobookshelf MCP server

by rollecode

create_items_by_id_cover

Idempotent

Create or update cover art for an Audiobookshelf item by its ID. Send a request payload to set or replace the item's cover image.

Instructions

Create or act on items cover.

POST /api/items/{id}/cover

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
bodyYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already cover readOnly, destructive, and idempotent hints, so the description is not the only source. It adds the insight that the body fields must be discovered from a matching GET or /schema endpoint, and the POST path implies a mutation. It does not disclose auth requirements, failure modes, or what side effects occur beyond creating/acting on the cover, but no contradiction with the annotations exists.

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?

The definition is concise, front-loaded with the one-line purpose, then the exact endpoint, then parameter notes. Every sentence earns its place; there is no filler or repetition of the input schema.

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?

With an output schema and useful annotations, the description does not need to explain return values. However, it leaves the core action ambiguous ('create or act on') and does not say whether the cover payload is JSON, binary, or multipart; the pointer to /schema partially compensates. It is adequate but relies on the agent performing an extra discovery step.

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 0%, so this dimension needs weight. The description identifies id as a path parameter and body as a request payload, and importantly tells the agent to consult GET or /schema to see the actual fields. It does not describe specific body fields, but for an open additionalProperties object, the lookup instruction is a reasonable substitute.

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

Purpose3/5

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

The summary names a resource ('items cover') and a POST action, so it is more than a tautology. But 'Create or act on items cover' is vague: it does not say whether this uploads, replaces, or generates cover art, and it does not distinguish itself from patch_items_by_id_cover or delete_items_by_id_cover. The endpoint path adds clarity but does not define the exact operation.

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?

No when-to-use guidance is provided. The only instruction, 'Read the matching GET or the /schema endpoint first,' addresses body discovery, not tool selection or exclusion of related siblings. An agent gets no help choosing this over patch_items_by_id_cover or get_items_by_id_cover.

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

Deploy Server

Other Tools