Skip to main content
Glama

Tavus MCP Server

A comprehensive Model Context Protocol (MCP) server for the Tavus API, enabling AI video generation, replica management, conversational AI, lipsync, and speech synthesis through MCP-compatible applications.

Features

🎭 Phoenix Replicas (5 tools)

  • create_replica - Create new AI replicas from training videos

  • get_replica - Get detailed information about a specific replica

  • list_replicas - List all replicas in your account

  • delete_replica - Delete a replica permanently

  • rename_replica - Rename an existing replica

🎬 Video Generation (5 tools)

  • generate_video - Generate videos using replicas with text scripts or audio files

  • get_video - Get details of a specific video

  • list_videos - List all videos in your account

  • delete_video - Delete a video permanently

  • rename_video - Rename an existing video

πŸ’¬ Conversational AI (5 tools)

  • create_conversation - Create interactive video conversations

  • get_conversation - Get details of a specific conversation

  • list_conversations - List all conversations in your account

  • end_conversation - End an active conversation

  • delete_conversation - Delete a conversation permanently

πŸ‘€ Personas (5 tools)

  • create_persona - Create new personas for conversational AI

  • get_persona - Get details of a specific persona

  • list_personas - List all personas in your account

  • patch_persona - Update a persona using JSON patch format

  • delete_persona - Delete a persona permanently

🎡 Lipsync (4 tools)

  • create_lipsync - Synchronize audio with existing videos

  • get_lipsync - Get details of a specific lipsync

  • list_lipsyncs - List all lipsyncs in your account

  • delete_lipsync - Delete a lipsync permanently

πŸ—£οΈ Speech Synthesis (5 tools)

  • generate_speech - Generate speech audio from text using replicas

  • get_speech - Get details of a specific speech

  • list_speeches - List all speeches in your account

  • delete_speech - Delete a speech permanently

  • rename_speech - Rename an existing speech

Related MCP server: HeyGen MCP Server

Prerequisites

Installation

Installing via Smithery

To install tavus-mcp for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @rakeshdavid/tavus-mcp --client claude
npm install -g tavus-mcp

Option 2: From Source

git clone https://github.com/rakeshdavid/Tavus-MCP.git
cd Tavus-MCP
npm install
npm run build

Configuration

Environment Variables

Set your Tavus API key as an environment variable:

export TAVUS_API_KEY="your_tavus_api_key_here"

MCP Client Configuration

Claude Desktop

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "tavus-mcp": {
      "command": "npx",
      "args": ["tavus-mcp"],
      "env": {
        "TAVUS_API_KEY": "your_tavus_api_key_here"
      }
    }
  }
}

Cline (VS Code Extension)

Add to your Cline MCP settings:

{
  "mcpServers": {
    "tavus-mcp": {
      "command": "npx",
      "args": ["tavus-mcp"],
      "env": {
        "TAVUS_API_KEY": "your_tavus_api_key_here"
      },
      "disabled": false
    }
  }
}

Other MCP Clients

For other MCP-compatible applications, use:

npx tavus-mcp

With the TAVUS_API_KEY environment variable set.

Usage Examples

Once configured, you can use the Tavus tools through your MCP client:

List Your Replicas

"Can you list my Tavus replicas?"

Generate a Video

"Generate a video using replica 'Luna' with the script: 'Hello, welcome to our product demo!'"

Create a Conversational AI

"Create a new conversational AI persona using my replica for customer support"

Lipsync Audio to Video

"Create a lipsync video using this video URL and this audio URL"

API Coverage

This MCP server provides complete coverage of the Tavus API v2, including:

  • Phoenix Replicas: Full CRUD operations for AI video replicas

  • Video Generation: Text-to-video and audio-to-video generation with advanced customization

  • Conversational AI: Interactive video conversations with persona management

  • Lipsync: Audio synchronization with existing videos

  • Speech Synthesis: Text-to-speech generation using replicas

Development

Setup

git clone https://github.com/rakeshdavid/Tavus-MCP.git
cd Tavus-MCP
npm install

Build

npm run build

Development with Auto-rebuild

npm run watch

Testing

Set your API key and test the server:

export TAVUS_API_KEY="your_api_key"
npm run inspector

The MCP Inspector will provide a URL to test the server in your browser.

Error Handling

The server includes comprehensive error handling:

  • Authentication errors: Invalid API key

  • Rate limiting: API rate limit exceeded

  • Payment errors: Insufficient credits (402 status)

  • Validation errors: Invalid parameters

  • Network errors: Connection issues

Contributing

  1. Fork the repository

  2. Create a feature branch (git checkout -b feature/amazing-feature)

  3. Commit your changes (git commit -m 'Add amazing feature')

  4. Push to the branch (git push origin feature/amazing-feature)

  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

Changelog

v0.1.0

  • Initial release

  • Complete Tavus API v2 coverage

  • 25 tools across 5 categories

  • TypeScript implementation

  • Comprehensive error handling

Available Tools

29 tools
create_conversationC

Create a new conversational video interface

ParametersJSON Schema
NameRequiredDescriptionDefault
replica_idNoReplica to use for the conversation
persona_idNoPersona to use for the conversation
conversation_nameNoName for the conversation
callback_urlNoURL to receive conversation events
conversational_contextNoContext for the conversation
custom_greetingNoCustom greeting message
enable_recordingNoEnable conversation recording

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. While 'create' implies a write operation, the description doesn't address important behavioral aspects like required permissions, whether this operation is idempotent, what happens on failure, or what the typical response looks like. For a creation tool with 7 parameters and no annotations, this is insufficient.

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?

The description is a single, efficient sentence that gets straight to the point. There's no wasted language or unnecessary elaboration. It's appropriately sized for a tool 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?

Given the complexity of a creation tool with 7 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what happens after creation, what the expected response looks like, or provide any context about the conversational video interface being created. The description should do more to compensate for the lack of structured metadata.

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?

The schema description coverage is 100%, so all parameters are documented in the schema. The description doesn't add any parameter-specific information beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.

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?

The description clearly states the action ('create') and resource ('conversational video interface'), providing a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'create_lipsync', 'create_persona', or 'create_replica', which all create different resources in the same domain.

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 provides no guidance on when to use this tool versus alternatives. There are multiple sibling tools for creating different resources (lipsync, persona, replica), but the description doesn't indicate when a conversational video interface is needed versus those other resources.

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

create_lipsyncC

Create a lipsync video by synchronizing audio with video

ParametersJSON Schema
NameRequiredDescriptionDefault
video_urlYesURL to the source video
audio_urlYesURL to the audio file to sync
callback_urlNoURL to receive completion callback

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While 'create' implies a write operation, the description lacks details on permissions, rate limits, whether the operation is asynchronous (implied by 'callback_url' but not stated), what happens on failure, or the nature of the output. This is inadequate for a creation tool with zero annotation coverage.

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?

The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part of the sentence ('Create a lipsync video by synchronizing audio with video') directly contributes to understanding the tool's function, making it appropriately sized and well-structured.

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?

Given the complexity of a creation tool with no annotations, no output schema, and behavioral gaps, the description is incomplete. It fails to address key aspects like asynchronous behavior (implied by callback_url but not explained), error handling, or what the tool returns. This leaves significant uncertainty for an agent trying to use the tool effectively.

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%, with all parameters documented in the schema. The description adds no parameter-specific information beyond what the schema provides (e.g., it doesn't explain format requirements for URLs or how the synchronization works). With high schema coverage, the baseline score of 3 is appropriate, as the description doesn't compensate with additional semantic context.

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?

The description clearly states the tool's purpose: 'Create a lipsync video by synchronizing audio with video'. It specifies the verb ('create'), resource ('lipsync video'), and core function ('synchronizing audio with video'). However, it doesn't explicitly differentiate from sibling tools like 'generate_video' or 'create_conversation', which could also involve media creation, leaving room for ambiguity in sibling tool selection.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, when-not-to-use scenarios, or comparisons with sibling tools like 'generate_video' or 'create_conversation'. The agent must infer usage solely from the tool name and basic description without explicit context.

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

create_personaC

Create a new persona for conversational AI

ParametersJSON Schema
NameRequiredDescriptionDefault
persona_nameNoName for the persona
replica_idNoReplica to use for this persona
contextNoContextual information for the LLM
system_promptNoSystem prompt for the LLM
layersNoConfiguration layers for the persona

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It states this is a creation operation, implying it's a write/mutation tool, but doesn't disclose any behavioral traits like required permissions, whether it's idempotent, what happens on duplicate names, rate limits, or what the response contains. For a creation tool with zero annotation coverage, this leaves significant gaps in understanding how it behaves.

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?

The description is a single, clear sentence that directly states the tool's purpose with zero wasted words. It's appropriately sized for a creation tool and front-loads the essential information without unnecessary elaboration.

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 creation tool with 5 parameters (including nested objects), no annotations, and no output schema, the description is insufficiently complete. It doesn't address what happens after creation, error conditions, or behavioral aspects like whether 'replica_id' must reference an existing replica. The agent lacks context about the tool's full operation despite the good schema coverage.

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?

The description adds no parameter-specific information beyond what's already in the schema, which has 100% coverage with detailed descriptions for all 5 parameters. The baseline score of 3 reflects that the schema adequately documents parameters, so the description doesn't need to compensate, but it also doesn't provide additional context like parameter relationships or usage examples.

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?

The description clearly states the action ('Create') and resource ('new persona for conversational AI'), making the purpose immediately understandable. It distinguishes this from other tools like 'create_conversation' or 'create_replica' by specifying it's for personas. However, it doesn't explicitly contrast with sibling tools like 'patch_persona' or 'get_persona' in the description text itself.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing replica), when not to use it, or how it differs from similar tools like 'patch_persona' for updates. The agent must infer usage from the tool name and context alone.

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

create_replicaB

Create a new AI replica from a training video

ParametersJSON Schema
NameRequiredDescriptionDefault
train_video_urlYesDirect link to training video (S3, etc.)
replica_nameNoName for the replica
consent_video_urlNoOptional separate consent video URL
callback_urlNoURL to receive training completion callback
model_nameNoPhoenix model version (phoenix-3 default)
propertiesNoAdditional replica properties

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure but only states the action ('Create') without details on permissions, rate limits, training time, or response format. It misses critical context like whether this is an async operation (implied by callback_url but not explicit) or what happens on failure.

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?

The description is a single, front-loaded sentence that directly states the tool's purpose with zero waste. It is appropriately sized for the complexity, avoiding unnecessary elaboration while being immediately clear.

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 creation tool with 6 parameters, no annotations, and no output schema, the description is incomplete. It lacks behavioral context (e.g., training process, async nature), does not explain the callback_url's role, and provides no guidance on usage versus siblings, leaving significant gaps for an AI agent.

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 the schema fully documents all 6 parameters. The description adds no parameter-specific information beyond what's in the schema, such as explaining the relationship between train_video_url and consent_video_url. Baseline 3 is appropriate as the schema does the heavy lifting.

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?

The description clearly states the specific action ('Create a new AI replica') and resource ('from a training video'), distinguishing it from siblings like 'create_conversation' or 'create_persona' which involve different resources. It precisely communicates the tool's function without ambiguity.

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 provides no guidance on when to use this tool versus alternatives like 'create_persona' or 'patch_persona', nor does it mention prerequisites or exclusions. It lacks context for distinguishing among creation tools in the sibling set, leaving usage decisions unclear.

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

delete_conversationB

Delete a conversation permanently

ParametersJSON Schema
NameRequiredDescriptionDefault
conversation_idYesUnique identifier for the conversation

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions 'permanently' which indicates irreversibility, but lacks critical details like required permissions, confirmation prompts, side effects on related data, error conditions, or what happens after deletion. For a destructive operation, this leaves significant behavioral gaps.

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?

The description is a single, efficient sentence that directly states the tool's purpose with zero wasted words. It's appropriately sized for a simple deletion operation and front-loads the essential information without unnecessary elaboration.

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 destructive tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'permanently' entails operationally, what verification occurs, whether deletion cascades to related resources, or what response to expect. Given the high-stakes nature of deletion and lack of structured safety indicators, more behavioral context is needed.

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?

With 100% schema description coverage and only one parameter, the schema already fully documents the conversation_id parameter. The description doesn't add parameter-specific information beyond what's in the schema, but with minimal parameters and complete schema coverage, a baseline of 4 is appropriate as the description doesn't need to compensate for schema gaps.

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?

The description clearly states the action ('Delete') and resource ('a conversation') with the qualifier 'permanently' indicating irreversible removal. It distinguishes from sibling 'end_conversation' by specifying deletion rather than termination, but doesn't explicitly contrast with other delete_* tools for different resource types.

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 guidance is provided on when to use this tool versus alternatives like 'end_conversation' or other deletion tools for different resources. The description doesn't mention prerequisites, recovery options, or contextual constraints for choosing this destructive operation.

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

delete_lipsyncC

Delete a lipsync permanently

ParametersJSON Schema
NameRequiredDescriptionDefault
lipsync_idYesUnique identifier for the lipsync

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action is 'permanent', which is a critical behavioral trait not obvious from the name alone. However, it lacks other important details: it doesn't specify if deletion requires specific permissions, what happens on success/failure, or any rate limits. For a destructive tool with zero annotation coverage, this is insufficient.

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?

The description is extremely conciseβ€”a single sentence with no wasted words. It front-loads the key action ('Delete') and resource, making it easy to parse. Every word earns its place by conveying essential information.

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?

Given the tool's complexity (a destructive deletion with no output schema and no annotations), the description is incomplete. It mentions permanence but omits critical context: error handling, confirmation requirements, or what the agent should expect after invocation. For a tool that permanently deletes data, more guidance is needed to ensure safe and correct usage.

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?

The schema description coverage is 100%, with the single parameter 'lipsync_id' fully documented in the schema as a 'Unique identifier for the lipsync'. The description adds no additional meaning about parameters beyond what the schema provides, so it meets the baseline of 3 for high schema coverage.

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?

The description clearly states the action ('Delete') and resource ('a lipsync'), making the purpose unambiguous. It distinguishes from siblings like 'delete_conversation' or 'delete_video' by specifying the resource type. However, it doesn't explicitly mention the permanent nature beyond what's implied by 'Delete', which could be slightly more specific.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing the lipsync_id from 'get_lipsync' or 'list_lipsyncs'), exclusions, or related tools. This leaves the agent without context for proper tool selection.

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

delete_personaC

Delete a persona permanently

ParametersJSON Schema
NameRequiredDescriptionDefault
persona_idYesUnique identifier for the persona

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action is permanent, which is crucial for a destructive operation, but lacks details on permissions required, error conditions (e.g., invalid persona_id), side effects, or confirmation prompts. This is a significant gap for a mutation tool.

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?

The description is a single, direct sentence with zero wasteβ€”'Delete a persona permanently'β€”front-loading the key action and critical detail (permanence) efficiently.

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 destructive mutation tool with no annotations and no output schema, the description is incomplete. It lacks essential context such as what 'permanently' entails (e.g., irreversible, no recovery), potential impacts, or response format, leaving the agent under-informed for safe use.

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%, with the single parameter 'persona_id' fully documented in the schema. The description adds no additional parameter details beyond implying persona_id is needed, so it meets the baseline of 3 where the schema does the heavy lifting.

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?

The description clearly states the action ('Delete') and resource ('a persona'), and specifies the permanence ('permanently'), which distinguishes it from potential soft-delete operations. However, it doesn't explicitly differentiate from sibling tools like delete_conversation or delete_replica, which follow the same pattern.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a persona_id from get_persona or list_personas), exclusions, or comparisons with related tools like patch_persona for updates.

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

delete_replicaC

Delete a replica permanently

ParametersJSON Schema
NameRequiredDescriptionDefault
replica_idYesUnique identifier for the replica

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It states the action is permanent ('permanently'), which is useful, but lacks critical details: whether authentication is required, if deletion is reversible, what happens to associated data, or error conditions. For a destructive operation, this leaves significant gaps in understanding the tool's 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?

The description is extremely concise at just three words, front-loading the key action ('Delete') and qualification ('permanently') with zero wasted language. Every word earns its place, making it easy to parse quickly.

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 destructive tool with no annotations and no output schema, the description is incomplete. It doesn't explain what a 'replica' is in this context, what the deletion entails, or what the response looks like (e.g., success confirmation or error). Given the complexity of permanent deletion, more context is needed for safe and effective use.

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?

The input schema has 100% description coverage, with replica_id clearly documented as a 'Unique identifier for the replica.' The description adds no additional parameter information beyond what the schema provides, so it meets the baseline score of 3 where the schema does the heavy lifting.

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?

The description clearly states the action ('Delete') and target resource ('a replica'), making the purpose immediately understandable. However, it doesn't differentiate this tool from other delete operations like delete_conversation or delete_persona, which would require mentioning what distinguishes a replica from other resources.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., replica must exist), exclusions (e.g., cannot delete active replicas), or relationships with sibling tools like create_replica or rename_replica, leaving the agent with insufficient context for appropriate selection.

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

delete_speechC

Delete a speech permanently

ParametersJSON Schema
NameRequiredDescriptionDefault
speech_idYesUnique identifier for the speech

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action is 'permanently' destructive, which is useful, but lacks details on permissions, error handling (e.g., what happens if speech_id is invalid), or side effects. This is a significant gap for a mutation tool with zero annotation coverage.

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?

The description is a single, efficient sentence with no wasted words, clearly front-loading the key action and resource. Every word earns its place by specifying the permanence of the deletion.

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 destructive tool with no annotations and no output schema, the description is incomplete. It lacks crucial context such as confirmation of deletion, return values, error conditions, or dependencies on other tools (e.g., get_speech). This leaves gaps that could hinder an AI agent's 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 description coverage is 100%, with the single parameter 'speech_id' documented as a unique identifier. The description does not add any meaning beyond this, such as format examples or sourcing instructions, so it meets the baseline of 3 where the schema handles the heavy lifting.

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?

The description clearly states the action ('Delete') and resource ('a speech'), with 'permanently' adding specificity about the nature of the deletion. However, it does not explicitly differentiate from sibling tools like delete_conversation or delete_video, which have similar structures but target different resources.

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 guidance is provided on when to use this tool versus alternatives. For example, it does not mention prerequisites (e.g., needing the speech_id from get_speech or list_speeches), nor does it clarify if it's irreversible or suggest when to use rename_speech instead for non-destructive changes.

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

delete_videoC

Delete a video permanently

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYesUnique identifier for the video

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While 'permanently' indicates irreversibility, it doesn't cover other critical aspects like required permissions, confirmation steps, error conditions (e.g., if video doesn't exist), or what happens to associated resources. For a destructive operation with zero annotation coverage, this is inadequate.

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?

The description is extremely concise at just three words, with zero wasted language. It's front-loaded with the core action and resource, making it easy to parse quickly. Every word earns its place by conveying essential information.

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 destructive tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'permanently' entails (e.g., no recovery options), what the tool returns (success/failure indicators), or how it interacts with sibling tools (e.g., if deleting a video affects related conversations or speeches). Given the complexity and risk of deletion, more context is needed.

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%, with the single parameter 'video_id' clearly documented in the schema. The description doesn't add any parameter-specific information beyond what the schema already provides, so it meets the baseline score of 3 for high schema coverage.

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?

The description clearly states the action ('Delete') and resource ('a video'), making the purpose immediately understandable. However, it doesn't differentiate this tool from other delete_* siblings (like delete_conversation, delete_lipsync, etc.), which would require specifying it's for video resources specifically.

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 provides no guidance on when to use this tool versus alternatives. There's no mention of prerequisites (e.g., needing the video_id), when not to use it (e.g., for temporary deletion), or what happens after deletion. With multiple delete_* siblings available, this lack of differentiation is a significant gap.

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

end_conversationC

End an active conversation

ParametersJSON Schema
NameRequiredDescriptionDefault
conversation_idYesUnique identifier for the conversation

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. 'End' suggests a mutation operation that changes conversation state, but it doesn't specify whether this is reversible, what 'ended' means (e.g., archived, closed, terminated), or any side effects. It lacks details on permissions, rate limits, or error conditions.

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?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core action and resource, making it immediately understandable. Every word earns its place, achieving optimal conciseness.

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?

Given the tool's complexity (a mutation operation with no annotations and no output schema), the description is incomplete. It doesn't explain what 'ending' entails, the result of the operation, or error handling. For a tool that likely changes system state, more context is needed to guide an agent effectively.

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?

The input schema has 100% description coverage, with the single parameter 'conversation_id' well-documented in the schema. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline of 3 for high schema coverage without extra value.

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?

The description 'End an active conversation' clearly states the action (end) and target resource (active conversation). It distinguishes from siblings like delete_conversation by implying a state transition rather than permanent deletion, though it doesn't explicitly contrast them. The purpose is specific but could be more differentiated.

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 provides no guidance on when to use this tool versus alternatives like delete_conversation or other conversation-related tools. It doesn't mention prerequisites (e.g., conversation must be active), exclusions, or contextual cues. Usage is implied but not articulated.

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

generate_speechC

Generate speech audio from text using a replica

ParametersJSON Schema
NameRequiredDescriptionDefault
replica_idYesReplica to use for speech generation
scriptYesText script to convert to speech
speech_nameNoName for the generated speech
callback_urlNoURL to receive completion callback

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates speech audio but doesn't cover critical aspects like whether this is a read-only or mutating operation, authentication requirements, rate limits, or what happens after generation (e.g., storage, retrieval via 'get_speech'). This leaves significant gaps in understanding the tool's 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?

The description is a single, efficient sentence that directly states the tool's function without any wasted words. It is front-loaded with the core purpose, making it easy to parse quickly. This level of conciseness is ideal for tool descriptions.

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?

Given the complexity of a generation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., a speech ID, audio file, or status), how to handle the callback URL, or behavioral traits like side effects. This leaves the agent with insufficient information to use the tool effectively.

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 the schema fully documents all parameters. The description adds no additional meaning beyond the schema, such as explaining parameter interactions or constraints. However, since the schema provides complete coverage, the baseline score of 3 is appropriate, as the description doesn't need to compensate but also doesn't enhance parameter understanding.

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?

The description clearly states the tool's purpose: generating speech audio from text using a replica. It specifies the verb ('generate'), resource ('speech audio'), and method ('using a replica'), making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'generate_video' or 'create_lipsync', which might involve similar text-to-media processes, so it doesn't reach a perfect score.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'generate_video' for video generation or 'create_lipsync' for lip-syncing, nor does it specify prerequisites such as needing an existing replica. This lack of context leaves the agent without clear usage instructions.

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

generate_videoC

Generate a video using a replica and script or audio

ParametersJSON Schema
NameRequiredDescriptionDefault
replica_idYesUnique identifier for the replica
scriptNoText script for the video (alternative to audio_url)
audio_urlNoURL to audio file (.wav/.mp3) (alternative to script)
video_nameNoName for the generated video
background_urlNoWebsite URL to use as background
background_source_urlNoDirect video URL to use as background
callback_urlNoURL to receive completion callback
fastNoUse fast rendering (limited features)
transparent_backgroundNoGenerate with transparent background (.webm)
watermark_image_urlNoURL to watermark image (png/jpeg)
propertiesNoAdditional video properties

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but reveals little behavioral context. 'Generate' implies a creation/mutation operation, but it doesn't disclose whether this is synchronous/asynchronous (callback_url hints at async), what permissions are needed, rate limits, or what happens to existing videos. It mentions 'fast rendering (limited features)' in the schema but not in the description itself.

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?

The description is a single, efficient sentence that front-loads the core action ('generate a video') and key inputs ('using a replica and script or audio'). There is zero wasted text, and it immediately communicates the essential purpose without redundancy.

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 complex mutation tool with 11 parameters, nested objects, no annotations, and no output schema, the description is inadequate. It doesn't explain the video generation process, output format, error handling, or how parameters like background_url and properties interact. The lack of behavioral context and output details leaves significant gaps for an AI agent.

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 parameters are well-documented in the schema. The description adds minimal value beyond the schema by mentioning 'replica and script or audio', which aligns with replica_id and the script/audio_url alternatives. However, it doesn't explain parameter interactions (e.g., script vs audio_url exclusivity) or provide additional context beyond what's in schema descriptions.

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?

The description clearly states the verb 'generate' and resource 'video', specifying it uses a 'replica and script or audio'. It distinguishes from siblings like generate_speech (audio only) and create_lipsync (different process). However, it doesn't explicitly contrast with get_video or list_videos, which are retrieval operations.

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 provides no guidance on when to use this tool versus alternatives like generate_speech (for audio only) or create_lipsync (for syncing existing audio). It doesn't mention prerequisites (e.g., needing an existing replica) or exclusions (e.g., not for editing existing videos). The only implied usage is generating new videos from replicas.

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

get_conversationC

Get details of a specific conversation

ParametersJSON Schema
NameRequiredDescriptionDefault
conversation_idYesUnique identifier for the conversation

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states this is a read operation ('Get'), implying it is likely safe and non-destructive, but does not address permissions, rate limits, error handling, or response format. For a tool with zero annotation coverage, this leaves significant gaps in understanding its 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?

The description is a single, clear sentence with no wasted words. It is front-loaded with the core action and resource, making it easy to parse quickly. Every part of the sentence contributes directly to understanding the tool's purpose.

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?

Given the tool's complexity (a read operation with one parameter) and the absence of annotations and output schema, the description is insufficient. It does not explain what details are returned, potential errors, or how it differs from sibling tools. For a tool in a server with multiple conversation-related operations, more context is needed to ensure proper use.

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?

The input schema has 100% description coverage, with 'conversation_id' documented as a 'Unique identifier for the conversation'. The description adds no additional meaning beyond this, such as format examples or sourcing instructions. With high schema coverage, the baseline score of 3 is appropriate, as the schema handles the parameter documentation adequately.

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 'Get details of a specific conversation' clearly states the verb ('Get') and resource ('conversation'), making the purpose understandable. However, it lacks specificity about what details are retrieved (e.g., metadata, messages, participants) and does not differentiate from sibling tools like 'list_conversations', which is a similar read operation. This vagueness prevents a higher score.

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 provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., needing a conversation_id), exclusions, or comparisons to siblings like 'list_conversations' for broader queries. Without any usage context, the agent must infer when this tool is appropriate.

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

get_lipsyncC

Get details of a specific lipsync

ParametersJSON Schema
NameRequiredDescriptionDefault
lipsync_idYesUnique identifier for the lipsync

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a read-only operation ('Get details'), but doesn't specify if it requires authentication, has rate limits, returns structured data or raw content, or handles errors. For a tool with zero annotation coverage, this leaves critical behavioral traits undocumented.

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?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core action and resource, making it easy to parse quickly. Every word earns its place, achieving optimal conciseness.

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?

Given the lack of annotations and output schema, the description is incomplete for a tool that presumably returns detailed lipsync information. It doesn't hint at the response structure, data types, or any behavioral aspects like idempotency or side effects. For a 'get' operation with no structured output documentation, more context is needed to be fully helpful.

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?

The input schema has 100% description coverage, with 'lipsync_id' clearly documented as a 'Unique identifier for the lipsync'. The description adds no additional meaning beyond this, such as format examples or sourcing instructions. Since the schema does the heavy lifting, the baseline score of 3 is appropriate.

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 'Get details of a specific lipsync' clearly states the action (get) and resource (lipsync), but it's vague about what 'details' entail and doesn't differentiate from sibling tools like 'get_conversation' or 'get_persona' beyond the resource name. It's functional but lacks specificity about the scope of information returned.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a lipsync_id), compare to 'list_lipsyncs' for browsing, or specify use cases like retrieving metadata versus content. Without such context, users must infer usage from the tool name alone.

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

get_personaC

Get details of a specific persona

ParametersJSON Schema
NameRequiredDescriptionDefault
persona_idYesUnique identifier for the persona

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It only states what the tool does ('Get details') without describing what 'details' include, whether it's a read-only operation, error conditions, or any performance characteristics. For a retrieval tool with zero annotation coverage, this leaves significant gaps in understanding its 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?

The description is extremely concise (5 words) and front-loaded with the essential information. Every word earns its place - 'Get' (action), 'details' (what's retrieved), 'specific persona' (target resource). There's no wasted verbiage or unnecessary elaboration.

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 retrieval tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what 'details' are returned, the format of the response, or any error scenarios. Given the server context with multiple similar tools, more differentiation and behavioral context would be helpful for an agent to use this tool effectively.

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 the parameter 'persona_id' is fully documented in the schema. The description doesn't add any meaningful parameter semantics beyond what's already in the schema (e.g., it doesn't explain what constitutes a valid persona_id or where to find one). This meets the baseline expectation when schema coverage is high.

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?

The description clearly states the tool's purpose with a specific verb ('Get') and resource ('details of a specific persona'), making it immediately understandable. However, it doesn't distinguish this tool from its sibling 'list_personas' (which presumably lists multiple personas), leaving some ambiguity about when to use one versus the other.

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 provides no guidance on when to use this tool versus alternatives like 'list_personas' or other get_* siblings. It doesn't mention prerequisites (e.g., needing a persona_id) or contextual factors that would help an agent choose between similar retrieval tools.

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

get_replicaC

Get details of a specific replica

ParametersJSON Schema
NameRequiredDescriptionDefault
replica_idYesUnique identifier for the replica
verboseNoInclude additional replica data

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get details' implies a read-only operation, but it doesn't specify permissions needed, rate limits, error handling, or what details are returned. For a tool with no annotation coverage, this is insufficient.

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?

The description is a single, efficient sentence with zero waste. It's front-loaded and appropriately sized for its purpose, earning a top score for conciseness.

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?

Given no annotations and no output schema, the description is incomplete. It doesn't explain what details are returned, error conditions, or behavioral traits. For a tool with 2 parameters and no structured output, more context is needed to be fully helpful.

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 the input schema fully documents the parameters. The description doesn't add any meaning beyond what the schema provides, such as explaining the 'verbose' parameter's effect. Baseline 3 is appropriate when the schema does the heavy lifting.

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?

The description 'Get details of a specific replica' clearly states the verb ('Get details') and resource ('a specific replica'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'get_conversation' or 'get_persona' beyond specifying the resource type, which keeps it from a perfect score.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context, or exclusions, such as how it differs from 'list_replicas' or when to use the 'verbose' parameter. This lack of usage instructions is a significant gap.

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

get_speechC

Get details of a specific speech

ParametersJSON Schema
NameRequiredDescriptionDefault
speech_idYesUnique identifier for the speech

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states 'Get details' which implies a read operation, but doesn't disclose behavioral traits like authentication needs, rate limits, error conditions, or what 'details' specifically includes. For a tool with no annotation coverage, this is inadequate.

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?

The description is a single, efficient sentence with zero waste. It's front-loaded with the core purpose and appropriately sized for a simple retrieval tool, making it easy to parse quickly.

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?

Given no annotations and no output schema, the description is incomplete. It doesn't explain what 'details' are returned, potential side effects, or error handling. For a tool in a context with many sibling operations, more context about its role and behavior is needed.

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%, with the single parameter 'speech_id' clearly documented in the schema. The description adds no additional meaning about the parameter beyond implying it identifies 'a specific speech', which aligns with but doesn't enhance the schema. Baseline 3 is appropriate when schema does the heavy lifting.

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?

The description clearly states the action ('Get details') and resource ('a specific speech'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'list_speeches' or 'get_conversation' which have similar 'get' patterns, missing an opportunity for clearer distinction.

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 guidance is provided on when to use this tool versus alternatives. With siblings like 'list_speeches' (for multiple items) and 'get_conversation' (for different resource types), the description offers no context about prerequisites, appropriate scenarios, or exclusions.

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

get_videoC

Get details of a specific video

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYesUnique identifier for the video

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states it 'gets details' without disclosing behavioral traits like read-only nature, error handling, authentication needs, or rate limits. It implies a safe read operation but doesn't confirm it explicitly, leaving gaps in transparency.

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?

The description is a single, efficient sentence with zero waste, front-loaded with the core action. It's appropriately sized for a simple tool, making it easy to parse without unnecessary elaboration.

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?

Given the tool's simplicity (1 parameter, no output schema, no annotations), the description is incomplete. It doesn't explain what 'details' include, potential return values, or error cases, leaving the agent under-informed for a tool that likely returns structured data.

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?

The description adds no meaning beyond the input schema, which has 100% coverage for the single parameter 'video_id'. Since schema coverage is high, the baseline score is 3, as the description doesn't compensate with additional context like format examples or sourcing hints.

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?

The description clearly states the verb 'Get' and resource 'details of a specific video', making the purpose unambiguous. However, it doesn't differentiate from sibling tools like 'get_conversation' or 'get_speech' beyond the resource name, missing explicit distinction in functionality scope.

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 guidance is provided on when to use this tool versus alternatives. The description lacks context such as prerequisites (e.g., needing a video_id from list_videos), exclusions, or comparisons to other get_* tools, leaving the agent without usage direction.

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

list_conversationsB

List all conversations in your account

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states it's a list operation, implying read-only behavior, but doesn't disclose pagination, sorting, filtering capabilities, rate limits, or authentication requirements. For a tool with zero annotation coverage, this leaves significant behavioral gaps unaddressed.

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?

The description is a single, clear sentence with zero wasted words. It's front-loaded with the core action and resource, making it immediately understandable. Every word earns its place without unnecessary elaboration.

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?

Given the tool's simplicity (0 parameters, no output schema), the description is minimally adequate. However, without annotations or output schema, it should ideally mention what the list returns (e.g., conversation IDs, metadata) or any limitations. It's complete enough for basic understanding but lacks depth for optimal agent use.

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 input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately doesn't discuss parameters, maintaining focus on the tool's purpose. This meets the baseline for tools with no parameters.

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?

The description clearly states the action ('List') and resource ('all conversations in your account'), making the tool's purpose immediately understandable. It distinguishes from siblings like 'get_conversation' (singular) and 'end_conversation' (different action). However, it doesn't specify if this includes archived or deleted conversations, leaving some ambiguity.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention when to prefer 'list_conversations' over 'get_conversation' for individual conversations, or how it relates to other list tools like 'list_personas'. No prerequisites, exclusions, or contextual advice are included.

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

list_lipsyncsB

List all lipsyncs in your account

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states it's a list operation but doesn't describe what 'list' entailsβ€”e.g., whether it returns all lipsyncs at once, supports pagination, includes metadata, or has rate limits. For a tool with zero annotation coverage, this is a significant gap in transparency.

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?

The description is a single, efficient sentence with zero waste. It's front-loaded with the core action ('List all lipsyncs') and specifies scope ('in your account'), making it easy to parse quickly. Every word earns its place.

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?

Given the lack of annotations and output schema, the description is incomplete for a list operation. It doesn't explain what information is returned (e.g., IDs, names, statuses), how results are structured, or any limitations (e.g., maximum items). For a tool in a server with many siblings, more context is needed to guide effective use.

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 has 0 parameters, and the schema description coverage is 100% (empty schema). The description doesn't need to add parameter semantics, as there are none to document. It appropriately avoids unnecessary details, meeting the baseline for a parameterless tool.

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?

The description clearly states the verb ('List') and resource ('all lipsyncs in your account'), making the purpose immediately understandable. It distinguishes itself from siblings like 'get_lipsync' (singular retrieval) and 'create_lipsync' (creation), though it doesn't explicitly differentiate from other list tools (e.g., 'list_conversations').

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing existing lipsyncs), exclusions, or comparisons to other list tools (e.g., 'list_videos'), leaving the agent to infer usage from the tool name alone.

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

list_personasB

List all personas in your account

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states the basic action without behavioral details. It doesn't disclose if this is read-only, paginated, rate-limited, or what the output format might be, which is insufficient for a tool with zero annotation coverage.

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?

The description is a single, efficient sentence that directly states the tool's purpose with zero wasted words. It's appropriately sized and front-loaded, making it easy to parse quickly.

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?

Given no annotations and no output schema, the description is incomplete. It lacks details on behavioral traits, output format, or usage context, which are crucial for an agent to understand how to properly invoke and interpret results from this tool.

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 has 0 parameters with 100% schema coverage, so no parameter documentation is needed. The description appropriately doesn't discuss parameters, earning a baseline high score for not adding unnecessary information.

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?

The description clearly states the action ('List') and resource ('all personas in your account'), making the purpose immediately understandable. However, it doesn't differentiate from sibling list tools like 'list_conversations' or 'list_replicas' beyond the resource name, missing explicit sibling distinction.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, exclusions, or comparisons with other list tools or 'get_persona', leaving usage context unclear.

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

list_replicasB

List all replicas in your account

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states the basic action without behavioral details. It doesn't cover aspects like pagination, sorting, authentication needs, rate limits, or what 'all replicas' entails (e.g., active vs. deleted). This leaves significant gaps for a tool that likely returns a list.

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?

The description is a single, efficient sentence with no wasted words, making it easy to parse and front-loaded. It directly conveys the core functionality without unnecessary elaboration.

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?

Given the tool's simplicity (0 parameters, no output schema) and lack of annotations, the description is minimally adequate but incomplete. It covers the basic purpose but misses behavioral context like return format or operational constraints, which are important for a list operation.

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 has 0 parameters with 100% schema description coverage, so no parameter documentation is needed. The description doesn't add parameter details, but that's appropriate here, warranting a baseline score above 3 due to the lack of parameters.

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?

The description clearly states the action ('List') and resource ('all replicas in your account'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'get_replica' or explain what 'replicas' are in this context, preventing a perfect score.

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 guidance is provided on when to use this tool versus alternatives like 'get_replica' (for a specific replica) or other list tools. The description implies it's for listing all replicas, but lacks explicit usage context or exclusions.

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

list_speechesB

List all speeches in your account

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states the basic action. It doesn't disclose behavioral traits like pagination, sorting, rate limits, authentication needs, or what 'all' means in practice (e.g., whether it includes deleted items). This leaves significant gaps for an agent to understand how to use it effectively.

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?

The description is a single, efficient sentence with zero waste. It's appropriately sized for a simple list operation and front-loads the core purpose without unnecessary elaboration.

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 simple list tool with no parameters and no output schema, the description is minimally adequate. However, without annotations or output schema, it should ideally provide more context about what 'list all speeches' returns (e.g., format, fields, limitations). The current description meets basic requirements but leaves room for improvement.

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 has 0 parameters with 100% schema description coverage, so no parameter documentation is needed. The description appropriately doesn't mention parameters, which is correct for this case. A baseline of 4 is assigned since it doesn't need to compensate for any schema gaps.

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?

The description clearly states the verb 'list' and resource 'speeches' with scope 'all in your account', making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'list_conversations' or 'list_videos' beyond the resource type, which prevents a perfect score.

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 guidance is provided on when to use this tool versus alternatives like 'get_speech' or other list tools. The description only states what it does, not when it's appropriate or how it differs from similar operations in the sibling set.

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

list_videosB

List all videos in your account

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It states it lists videos but doesn't disclose behavioral traits like pagination, sorting, rate limits, authentication needs, or what 'all videos' entails (e.g., if it includes deleted ones). This is a significant gap for a tool with potential complexity.

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?

The description is a single, efficient sentence that directly states the tool's purpose without any fluff. It's appropriately sized and front-loaded, making it easy for an agent to parse quickly.

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?

Given no annotations, no output schema, and a list operation that could involve behavioral nuances (like pagination or filtering), the description is incomplete. It lacks details on return format, error handling, or scope, which are crucial for effective tool use by an agent.

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 input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, but that's acceptable here. A baseline of 4 is appropriate as it doesn't mislead or omit required param info.

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?

The description clearly states the action ('List') and target resource ('videos in your account'), making the purpose immediately understandable. However, it doesn't differentiate from sibling list tools like list_conversations or list_lipsyncs, which follow the same pattern, so it lacks sibling differentiation for a perfect score.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context, or exclusions, such as how it differs from get_video for retrieving a single video, leaving the agent to infer usage from the name alone.

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

patch_personaC

Update a persona using JSON patch format

ParametersJSON Schema
NameRequiredDescriptionDefault
persona_idYesUnique identifier for the persona
patchYesJSON patch operations (RFC 6902)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'Update' implying mutation, but doesn't cover critical aspects like required permissions, whether changes are reversible, error handling, or rate limits. The mention of 'JSON patch format' adds some technical context, but overall behavioral traits are insufficiently described for a mutation tool.

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?

The description is a single, efficient sentence that directly states the tool's purpose without redundancy. It's appropriately sized and front-loaded, with every word contributing essential information (update action, target resource, and method). No extraneous details are included.

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?

Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It lacks information on behavioral aspects (e.g., side effects, error cases), output format, or usage context. While the schema covers parameters well, the overall context for safe and effective use is insufficient.

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 the schema fully documents both parameters ('persona_id' and 'patch'). The description adds minimal value by specifying 'JSON patch format', which hints at the 'patch' parameter's structure but doesn't provide additional semantics beyond what the schema already covers. This meets the baseline for high schema coverage.

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?

The description clearly states the action ('Update') and resource ('a persona'), and specifies the method ('using JSON patch format'). It distinguishes from siblings like 'create_persona' or 'delete_persona' by focusing on partial updates. However, it doesn't explicitly contrast with 'get_persona' or other update-related tools, keeping it from a perfect score.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing persona), compare to other update methods, or specify scenarios where JSON patch is preferred over full updates. This lack of context leaves the agent without usage direction.

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

rename_replicaC

Rename an existing replica

ParametersJSON Schema
NameRequiredDescriptionDefault
replica_idYesUnique identifier for the replica
replica_nameYesNew name for the replica

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. 'Rename an existing replica' implies a mutation operation but doesn't disclose behavioral traits such as required permissions, whether the change is reversible, potential side effects, or error conditions. This leaves significant gaps for an agent to understand the tool's 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?

The description is a single, efficient sentence with zero waste. It's front-loaded and gets straight to the point, making it easy for an agent to parse quickly without unnecessary elaboration.

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?

Given the complexity of a mutation tool with no annotations and no output schema, the description is incomplete. It lacks information on what happens after renaming (e.g., success response, error handling), and the behavioral gaps make it insufficient for an agent to use the tool confidently without additional context.

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?

The input schema has 100% description coverage, with clear documentation for both parameters (replica_id and replica_name). The description adds no additional meaning beyond what the schema provides, so it meets the baseline of 3 for high schema coverage without compensating with extra details.

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?

The description 'Rename an existing replica' clearly states the verb ('rename') and resource ('replica'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like rename_speech or rename_video, which follow the same pattern for different resource types.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., that a replica must exist), when not to use it, or how it relates to other replica operations like create_replica or delete_replica among the siblings.

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

rename_speechC

Rename an existing speech

ParametersJSON Schema
NameRequiredDescriptionDefault
speech_idYesUnique identifier for the speech
speech_nameYesNew name for the speech

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. While 'Rename' implies a mutation operation, it doesn't specify whether this requires special permissions, if the change is reversible, what happens on failure, or any rate limits. This leaves significant behavioral gaps for a mutation tool.

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?

The description is a single, efficient sentence that gets straight to the point with zero wasted words. It's appropriately sized for a simple rename operation and front-loads the essential information.

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 mutation tool with no annotations and no output schema, the description is incomplete. It doesn't address behavioral aspects like permissions, side effects, or error handling. While the purpose is clear, the description doesn't provide enough context for safe and effective tool 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?

The input schema has 100% description coverage, with both parameters clearly documented. The description adds no additional parameter information beyond what's in the schema (speech_id and speech_name). According to scoring rules, when schema_description_coverage is high (>80%), the baseline is 3 even with no param info in the description.

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?

The description clearly states the verb ('Rename') and resource ('an existing speech'), making the purpose immediately understandable. However, it doesn't distinguish this tool from sibling tools like rename_replica or rename_video, which perform similar rename operations on different resource types.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing speech), exclusions, or comparisons with other rename tools in the sibling list. The agent must infer usage from the tool name alone.

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

rename_videoC

Rename an existing video

ParametersJSON Schema
NameRequiredDescriptionDefault
video_idYesUnique identifier for the video
video_nameYesNew name for the video

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. 'Rename an existing video' implies a mutation operation but lacks details on permissions, side effects (e.g., whether renaming affects other references), error handling, or response format. This is inadequate for a tool that modifies data.

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?

The description is a single, efficient sentence with zero wasted words. It's front-loaded and directly communicates the core action without unnecessary elaboration, making it easy for an agent to parse quickly.

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?

Given the tool's mutation nature, lack of annotations, and no output schema, the description is incomplete. It doesn't address behavioral aspects like success/error responses or operational constraints, leaving significant gaps for an agent to invoke it correctly in complex scenarios.

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%, with clear parameter descriptions in the input schema. The description adds no additional meaning beyond implying 'video_id' identifies the target and 'video_name' is the new name, which the schema already covers. This meets the baseline for high schema coverage.

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?

The description 'Rename an existing video' clearly states the verb (rename) and resource (video), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'rename_replica' or 'rename_speech' beyond the resource type, which prevents a perfect score.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., video must exist), exclusions, or comparisons to other video-related tools like 'get_video' or 'delete_video', leaving the agent with minimal context for decision-making.

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

TDQS

B3.4/5.0
Disambiguation5/5

Every tool has a clearly distinct purpose with no ambiguity. Tools are organized by resource type (conversation, lipsync, persona, replica, speech, video) and action (create, delete, get, list, etc.), making it easy for an agent to select the correct one. For example, 'create_conversation' and 'end_conversation' serve different lifecycle stages without overlap.

Naming Consistency5/5

Tool names follow a consistent verb_noun pattern throughout, with verbs like create, delete, get, list, patch, and rename paired with specific nouns. All names use snake_case uniformly, and the pattern is predictable across all 29 tools, enhancing readability and agent usability.

Tool Count3/5

With 29 tools, the count is borderline high for the domain of AI video and conversational interfaces, which might feel heavy but is still manageable. The tools cover multiple resource types comprehensively, but the number could be optimized by grouping similar operations, making it slightly over the ideal 3-15 range for well-scoped servers.

Completeness5/5

The tool surface provides complete CRUD/lifecycle coverage for all key resources (conversation, lipsync, persona, replica, speech, video), including create, get, list, delete, and update operations (via patch or rename). There are no obvious gaps; agents can perform full workflows from creation to deletion without dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rakeshdavid/Tavus-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server