Skip to main content
Glama

Server Details

Turn PDFs, Word, EPUB and X posts into narrated audio with word-level timestamps.

Ownership verified

The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.

If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.

Status
Unhealthy
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
narrador-io/narrador-mcp
GitHub Stars
0
ChatGPT
–
Claude
–

TDQS

A4.4/5.0

Scored across 7 tools

Disambiguation4/5

The files and X product lines are cleanly separated (files_job vs x_generation), and read-only vs write tools are distinguishable. The only real friction is the get_files_job/get_files_result pair, where the status-poll vs audio-fetch boundary must be inferred from descriptions rather than names alone.

Naming Consistency4/5

Nearly all tools follow a verb_noun pattern with a product scope (files/x), which is readable and predictable. The main deviation is the creation verbs: create_files_job vs generate_x_audio use different verbs for the same conceptual action, a minor inconsistency.

Tool Count5/5

Seven tools is well-scoped for a TTS API with two product lines. Each tool earns its place: two create paths, two retrieval paths, one poll, one voice catalog, and one account/credits check.

Completeness4/5

The core lifecycle is covered: create job, poll status, fetch result, plus X generation/retrieval, voice listing, and credit/account check. Minor gaps exist—no cancel/delete job, no job listing—but these are workaroundable and not central to the stated purpose.

Available Tools

7 tools
create_files_jobCreate Files TTS JobAInspect

Creates a narrador files TTS job and returns jobId (uuid). Accepts either plain text (up to 500,000 characters) or an uploaded file reference. When passing text, fileName is optional (defaults to document.txt). When passing fileId, fileName is required. The job processes asynchronously: poll get_files_job until status is 'completed', then fetch audio with get_files_result. Consumes user credits. Not idempotent (creates a new job each time). Requires narrador:files scope (OAuth) or nrd_files_* API key. Optional voiceId/accent (both or neither): when omitted, narrador detects document language and picks the first premium voice for that language (deterministic catalog order), else the first economy voice in the same language; if none, the job ends with failed_file_processing — pass voiceId and accent. Use list_voices to choose a voice explicitly.

NameRequiredDescriptionDefault
textNoPlain text content to convert to speech (1-500,000 characters). Mutually exclusive with fileId. If provided, fileName is optional.
accentNoOptional accent code (e.g. en-us, es-es). Must be provided together with voiceId, or omit both for same-language auto voice selection (see voiceId).
fileIdNoUUID of a previously uploaded file. Mutually exclusive with text. When provided, fileName is required.
voiceIdNoOptional TTS voice UUID from list_voices. Omit together with accent to auto-pick a voice for the detected language (deterministic catalog order), else the first economy voice in that language; uses en-us when language cannot be detected. Unsupported detected languages finish with failed_file_processing — pass voiceId and accent.
fileNameNoFile name for the job (1-200 characters). Required when using fileId. Optional when using text (defaults to document.txt).

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond annotations by disclosing credit consumption, OAuth scope / API key requirements, asynchronous processing, the non-idempotent behavior, and a concrete failure mode (failed_file_processing). It also explains the deterministic voice-selection fallback chain when voiceId/accent are omitted, which the annotations cannot convey.

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?

Front-loaded with purpose and return value, then the operational guidance, with no filler sentences. It is dense and packs multiple clauses per sentence, which slightly hurts scanability but every clause carries actionable information.

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

Completeness5/5

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

There is no output schema, but the description compensates by naming the returned jobId and describing the async follow-up calls needed to obtain results. Auth, credits, failure modes, and voice-selection behavior are all covered, leaving nothing essential for a correct invocation.

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 coverage is 100% and the parameter descriptions already restate the mutual-exclusivity, fileName-required-with-fileId, and both-or-neither accent/voiceId rules almost verbatim. The description thus adds little beyond the schema; a baseline 3 is appropriate for a fully documented schema.

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+resource ('Creates a narrador files TTS job') and immediately names the return value ('returns jobId (uuid)'). It is clearly distinguishable from the sibling read tools get_files_job and get_files_result, which it explicitly routes to.

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

Usage Guidelines5/5

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

Gives an explicit end-to-end workflow: poll get_files_job until status is 'completed', then fetch audio with get_files_result, and use list_voices to pick a voice explicitly. It also names the condition that selects each input mode (text vs fileId) and when to supply voiceId/accent.

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

generate_x_audioGenerate X Post AudioAInspect

Generates narrador X audio for a social media post (X/Twitter) and returns generationId (uuid), audioUrl, duration, and wordTimings. Accepts either postId (numeric X post id) or postUrl (full X post URL). Unlike narrador files, this typically returns the result immediately if already cached, or generates synchronously. If generation is slow, poll get_x_generation with the returned generationId. Consumes narrador credits (same as the narrador X app). Insufficient credits or wrong key scope returns 403. Not idempotent (may create new generation). Requires narrador:x scope (OAuth) or nrd_x_* API key. Use list_voices with product x for voiceId values.

NameRequiredDescriptionDefault
accentNoAccent/language code (e.g. 'en-us', 'es-es'). Defaults to 'en-us' if not provided. Must match a supported accent code.
postIdNoNumeric X/Twitter post id (e.g. '1234567890'). Mutually exclusive with postUrl.
postUrlNoFull X/Twitter post URL (e.g. 'https://x.com/user/status/1234567890'). Mutually exclusive with postId.
voiceIdYesTTS voice UUID from list_voices. Determines the speaker for audio generation.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations cover safety (readOnly=false, idempotent=false, destructive=false), and the description adds genuinely new behavior: credit consumption billed like the narrador X app, 403 on insufficient credits or wrong key scope, the cached-immediate vs synchronous generation model, and the required narration scope/API key form.

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?

Front-loaded with purpose and return values, then auth/credit/polling details. Every sentence carries information, though the density of parenthetical asides (four-tuple return list, scope formats) makes it slightly heavier than ideal.

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

Completeness5/5

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

With no output schema, the description compensates by naming the returned fields (generationId, audioUrl, duration, wordTimings) and explaining the async polling path, auth requirements, and credit model. An agent has everything needed to call it and handle the response.

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?

Schema description coverage is already 100%, so the baseline is 3; the description adds value by tying voiceId to list_voices with product `x`, which the schema does not state, and by reiterating the postId/postUrl mutual exclusivity. It adds modest but real guidance beyond the schema.

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 and resource ('Generates narrador X audio for a social media post') and enumerates the concrete outputs returned. It also distinguishes itself from the sibling tool set by contrasting with 'narrador files' and naming the follow-up tool get_x_generation.

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

Usage Guidelines5/5

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

Explicitly routes the agent: poll get_x_generation when generation is slow, and use list_voices with product `x` to obtain voiceId values. It also states the postId/postUrl alternative inputs and the credit/scope preconditions, so both when-to-use and how-to-follow-up are covered.

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

get_accountGet Account InfoA
Read-onlyIdempotent
Inspect

Returns authenticated user identity, products (files and/or x), nullable app for API keys, and credit balances (same shape as GET /v1/me). Read-only operation that does not consume credits. Requires OAuth or API key authentication. Check credit balance before creating jobs or generations.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered structurally; the description still adds real context by stating it does not consume credits and that OAuth or API key authentication is required. It does not cover error behavior or failure modes under missing auth, keeping it below 5.

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?

Four tight sentences with no filler: return contents first, then the read-only/no-credit-cost constraint, then auth requirements, then the actionable usage hint. It is front-loaded with what the agent most needs to know.

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?

With no output schema, the description carries the burden of describing returns and does so reasonably – identity, products, app, and credit balances – plus auth and credit-cost behavior. Minor gaps remain around error/auth-failure behavior and whether 'app' is null for user tokens versus populated for API keys is fully spelled out.

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, so the baseline is 4. The description stays focused on returned fields rather than inventing parameter semantics, which is appropriate for an argument-free call.

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+resource ('Returns authenticated user identity') and then enumerates the exact payload: products, nullable app for API keys, and credit balances. The response shape reference ('same shape as GET /v1/me') pins down semantics precisely, and none of the sibling tools (job/generation/voice tools) could be confused with an account lookup.

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?

Gives a clear usage context – 'Check credit balance before creating jobs or generations' – which ties this tool to the sibling job/generation tools in a meaningful workflow. It stops short of naming explicit alternatives or when-not-to-use conditions, so it is clear context rather than full routing guidance.

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

get_files_jobGet Files Job StatusA
Read-onlyIdempotent
Inspect

Returns narrador files job status and progress. Poll this endpoint after create_files_job until status is 'completed'. Returns jobId, status (e.g. 'processing', 'completed', 'failed'), progressPercentage (0-100), and audioId when ready. Read-only operation. Once status is 'completed' and audioId is present, fetch the final audio with get_files_result. Requires narrador:files scope (OAuth) or nrd_files_* API key.

NameRequiredDescriptionDefault
jobIdYesJob UUID returned by create_files_job. Also called snapshot id internally.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description's 'Read-only operation' is redundant, but it adds genuinely new context: the polling pattern, the concrete status values, the 0-100 progress range, and the required narrador:files scope or nrd_files_* API key. This is well beyond annotation coverage, though the auth detail could note failure behavior.

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?

Four front-loaded sentences where each earns its place: purpose, usage sequence, return fields, and auth requirement. No filler or repetition.

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

Completeness5/5

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

With no output schema, the description compensates by enumerating the return fields (jobId, status, progressPercentage, audioId), and it covers the polling lifecycle and auth prerequisites. An agent has everything needed to call and interpret this tool correctly.

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% and the single jobId param is fully documented in the schema (including the 'snapshot id' alias), so the description adds no parameter-level syntax beyond what the schema provides. Baseline 3 is appropriate.

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 and resource ('Returns narrador files job status and progress') and distinguishes itself from siblings by naming create_files_job and get_files_result in its workflow. An agent can immediately tell this is the polling status endpoint.

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

Usage Guidelines5/5

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

Explicitly says to poll after create_files_job until status is 'completed', and directs the agent to get_files_result once audioId is present. Both the when-to-use and the alternative/next step are named, so nothing is left to inference.

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

get_files_resultGet Files Job ResultA
Read-onlyIdempotent
Inspect

Fetches completed narrador files job audio and metadata. Returns jobId, audioUrl (signed URL for download), audioId (uuid), duration (seconds, may be null), and wordTimings array. Each word timing includes word (string), startTime (seconds), and endTime (seconds). Read-only operation. Only succeeds when job status is 'completed' and audio is ready; otherwise returns precondition error. Call get_files_job first to confirm the job is completed. Requires narrador:files scope (OAuth) or nrd_files_* API key.

NameRequiredDescriptionDefault
jobIdYesJob UUID from create_files_job, must have status 'completed'.

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, it discloses the failure mode (precondition error when audio is not ready), the auth requirements (narrador:files OAuth scope or nrd_files_* API key), and field-level nullability (duration may be null). This is real behavioral context an agent needs before calling.

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?

Front-loaded with purpose then return shape, with prerequisites and auth at the end. The enumeration of return fields is justified since no output schema exists, though 'Read-only operation' overlaps the annotations and is slightly redundant.

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

Completeness5/5

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

With no output schema, the description fully specifies the return payload (jobId, audioUrl, audioId, duration, wordTimings and their sub-fields), plus preconditions and auth. An agent has everything needed to call and interpret this tool correctly.

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% and there is only one parameter, so the schema already documents jobId fully. The description's mention of jobId comes in the context of return values rather than adding input semantics, 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 and resource ('Fetches completed narrador files job audio and metadata') and names the exact payload returned. It is clearly distinguishable from the sibling get_files_job, which only reports job state.

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

Usage Guidelines5/5

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

Gives an explicit precondition ('Only succeeds when job status is completed') and an explicit alternative to call first ('Call get_files_job first to confirm the job is completed'). Nothing is left to inference about when to invoke this tool.

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

get_x_generationGet X Generation ResultA
Read-onlyIdempotent
Inspect

Fetches narrador X generation audio and metadata. Returns generationId, audioUrl (signed URL for download), duration (seconds), and wordTimings array. Each word timing includes word (string), startTime (seconds), and endTime (seconds). Read-only operation. Use this to retrieve a generation if generate_x_audio was called earlier or to re-fetch audio. Only generations linked to your account are returned; other ids yield Generation not found. (404). Wrong API key scope returns 403. Requires narrador:x scope (OAuth) or nrd_x_* API key.

NameRequiredDescriptionDefault
generationIdYesGeneration UUID returned by generate_x_audio. References a specific X post audio generation.

TDQS

A4.4/5.0
Behavior5/5

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

With annotations already covering readOnly/idempotent/destructive, the description goes further: it discloses the ownership scoping rule ('only generations linked to your account'), the 404 and 403 failure modes, and the required scope/API key format. This is exactly the behavioral context annotations cannot express.

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?

Dense but front-loaded with the return shape before the operational caveats. Slightly redundant with 'Read-only operation,' which merely restates the readOnlyHint annotation, but overall every other sentence earns its place.

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

Completeness5/5

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

In the absence of an output schema, the description fully documents the return structure (generationId, audioUrl, duration, wordTimings and their sub-fields) and covers auth and error semantics. Nothing an agent needs to invoke and interpret this call is missing.

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 coverage is 100% and the single generationId parameter is fully documented in the schema, so the description need not repeat it. Baseline 3 applies; the description adds no format or syntax detail beyond the schema.

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?

Opens with a specific verb+resource ('Fetches narrador X generation audio and metadata') and immediately enumerates the returned fields. An agent can distinguish this from the sibling generate_x_audio without opening a 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?

Explicitly routes usage: 'retrieve a generation if generate_x_audio was called earlier or to re-fetch audio,' tying it to a named sibling tool. It gives clear context but no explicit when-not-to-use case or alternative retriever.

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

list_voicesList Available VoicesA
Read-onlyIdempotent
Inspect

Returns voices for narrador files or narrador X. Optional product (files | x) selects the catalog when your token has both products; missing product scope returns 403. Each voice includes id (uuid), name, tier (standard premium catalog or cheaper economy catalog), defaultAccent, isPublic, description, and sampleUrl (https://api.narrador.io/v1/voices/{id}/sample, public 302, no API key). Deprecated: provider mirrors tier — use tier, not provider. Read-only. Use a voice id when calling create_files_job or generate_x_audio.

NameRequiredDescriptionDefault
productNoOptional catalog to list: `files` (narrador files) or `x` (narrador X). Defaults to the authenticated API key product, or `files` when an OAuth token has both products.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare read-only/idempotent, and the description still adds real behavioral context beyond them: the 403 on missing product scope, sampleUrl auth behavior (public 302, no API key), and a deprecation notice for `provider`. This is materially more than the annotations provide.

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?

Front-loaded with purpose and the product-selection rule, then return fields, deprecation, and a usage pointer. Dense and mostly earning its space, though the product default is restated from the schema, adding slight redundancy.

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

Completeness5/5

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

No output schema exists, yet the description enumerates the returned fields (id, name, tier, defaultAccent, isPublic, description, sampleUrl) and their semantics, including the tier values. An agent has everything needed to call and interpret the result.

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?

Schema coverage is 100% and the enum is documented, so the schema does most of the work. The description nonetheless adds the failure condition (403) and reiterates the default resolution rule, which is useful but partly redundant with the schema's own description.

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 and resource ('returns voices for narrador files or narrador X') and immediately distinguishes the two catalogs. An agent can tell what it gets and how the two product variants differ without consulting 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 Guidelines5/5

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

Explains exactly when `product` matters ('when your token has both products'), what happens otherwise (403), and downstream usage ('Use a voice id when calling create_files_job or generate_x_audio'), naming concrete siblings. No inference required.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updates
    • Changedcreate_files_job5 fields changed
      • addedInput schema / properties / accent / description
        Added value: +"Accent/language code (e.g. 'en-us', 'es-mx', 'fr-fr'). Must match one of the supported accent codes. Use the voice's defaultAccent if unsure."
      • addedInput schema / properties / fileId / description
        Added value: +"UUID of a previously uploaded file. Mutually exclusive with text. When provided, fileName is required."
      • addedInput schema / properties / fileName / description
        Added value: +"File name for the job (1-200 characters). Required when using fileId. Optional when using text (defaults to document.txt)."
      • addedInput schema / properties / text / description
        Added value: +"Plain text content to convert to speech (1-500,000 characters). Mutually exclusive with fileId. If provided, fileName is optional."
      • addedInput schema / properties / voiceId / description
        Added value: +"TTS voice UUID from list_voices. Determines the speaker for audio generation."
    • Changedgenerate_x_audio4 fields changed
      • addedInput schema / properties / accent / description
        Added value: +"Accent/language code (e.g. 'en-us', 'es-es'). Defaults to 'en-us' if not provided. Must match a supported accent code."
      • addedInput schema / properties / postId / description
        Added value: +"Numeric X/Twitter post id (e.g. '1234567890'). Mutually exclusive with postUrl."
      • addedInput schema / properties / postUrl / description
        Added value: +"Full X/Twitter post URL (e.g. 'https://x.com/user/status/1234567890'). Mutually exclusive with postId."
      • addedInput schema / properties / voiceId / description
        Added value: +"TTS voice UUID from list_voices. Determines the speaker for audio generation."
    • Changedget_files_job1 field changed
      • changedInput schema / properties / jobId / description
        Previous value: -"Snapshot / job id returned by create_files_job"New value: +"Job UUID returned by create_files_job. Also called snapshot id internally."
    • Changedget_files_result1 field changed
      • addedInput schema / properties / jobId / description
        Added value: +"Job UUID from create_files_job, must have status 'completed'."
    • Changedget_x_generation1 field changed
      • changedInput schema / properties / generationId / description
        Previous value: -"Generation id returned by generate_x_audio"New value: +"Generation UUID returned by generate_x_audio. References a specific X post audio generation."
  2. 7 tool updates
    • First observedcreate_files_job
    • First observedgenerate_x_audio
    • First observedget_account
    • First observedget_files_job
    • First observedget_files_result
    • First observedget_x_generation
    • First observedlist_voices

Publisher details

Operator
narrador
Operator website
https://narrador.io
Vendor relationship
First-party
Trust center
Not applicable
Restrictions
Requires a narrador.io account. Audio and video generation consume prepaid credits.

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.