Skip to main content
Glama

speechify_upload_text

Saves a UTF-8 text upload job for asynchronous processing by the serial uploader, so text files are queued and completed later.

Instructions

Persist a UTF-8 text upload job. The serial uploader completes it asynchronously.

Input Schema

NameRequiredDescriptionDefault
nameYes
textYes
folder_idNo
on_conflictNoerror
idempotency_keyYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.7/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden, and it does disclose one important trait: completion is asynchronous via a serial uploader, so the call returns before processing finishes. However, it says nothing about idempotency/retry semantics, what on_conflict does on duplicates, what errors surface (e.g. size limit), or what the caller receives back.

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?

Two tight sentences with the async completion fact front-loaded in the second sentence; nothing is padded. The only fault is that the terse phrasing ('Persist ... job') borders on jargon rather than plain description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 5-parameter mutation tool with no annotations and no output schema, the description omits too much: return value, whether polling is required, duplicate handling, and folder placement. An agent could call it, but it would be guessing about the response and retry behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across five parameters, so the description must compensate and largely does not. Only 'UTF-8 text' loosely maps to the text field; idempotency_key, folder_id (nullable), and the on_conflict enum (error/skip_identical/rename) are never explained in prose.

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 description says it will 'persist a UTF-8 text upload job,' which identifies the resource as an upload job but uses the vague verb 'persist' rather than stating plainly that it enqueues a text-to-speech upload. It does not distinguish itself from the close sibling speechify_upload_text_files, so an agent must infer which one handles single text versus files.

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?

There is no explicit when-to-use guidance and no mention of alternatives such as speechify_upload_text_files or the job-status tools. The async note implies the agent should later poll, but it never names speechify_get_job or speechify_session_status, leaving routing to inference.

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