Skip to main content
Glama

get_speech_entitlements

Retrieve speech character balances, universal credits, and TTS permission from membership APIs before generating audio. Voice-specific limits are checked during estimates.

Instructions

Read speech characters, universal credits and full TTS generation permission from existing membership APIs. Voice-specific characters and multipliers are checked during a TTS estimate.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.2/5.0
Behavior3/5

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

Annotations declare openWorldHint=true and destructiveHint=false, so safety is mostly covered, and the description usefully clarifies that this is a read of existing membership APIs (i.e. a lookup, not a generation or mutation) and that no per-voice data is returned. It does not disclose auth/membership prerequisites, caching or freshness of the entitlement values, or what the response shape looks like, which matters since there is no output schema. The readOnlyHint=false sits in mild tension with the 'Read' wording, though it reads as an unset default rather than an affirmative claim.

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?

Two sentences, no filler, and the primary answer (what entitlements are read) is front-loaded ahead of the scope caveat. Every clause carries information an agent can act on.

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 zero-parameter lookup with no output schema and thin annotations, the description conveys the returned data at a high level and explicitly rules out voice-level figures, which prevents a foreseeable misuse. It could say slightly more about when in a workflow to call it, but nothing essential is missing to invoke it correctly.

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

Parameters4/5

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

The tool takes zero parameters and the schema is a closed empty object, so there is nothing for the description to disambiguate. Baseline of 4 applies; no parameter-level detail is needed or missing.

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?

Specific verb (Read) plus a precise resource list — speech characters, universal credits, and full TTS generation permission — pulled from membership APIs. It is immediately distinguishable from siblings like get_music_entitlements and get_video_entitlements by the 'speech' scope, and the second sentence draws the boundary around what this tool does not cover.

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?

The description effectively routes the agent: voice-specific characters and multipliers are not answered here and are instead resolved during a TTS estimate, which points at estimate_tts_cost. It stops short of saying when to call this (e.g. before generate_tts) or how it relates to get_balance/get_generation_capabilities, so it is clear but not exhaustive.

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