get_dubbing_info
Check the status and progress of a video dubbing task by providing its unique identifier. This tool returns current processing stage and completion details for previously submitted dubbing jobs.
Instructions
[AllVoiceLab Tool] Retrieve status and details of a video dubbing task.
This tool queries the current status of a previously submitted dubbing task and returns detailed information
about its progress, including the current processing stage and completion status.
Args:
dubbing_id: The unique identifier of the dubbing task to check. This ID is returned from the video_dubbing or video_translation_dubbing tool. Required.
Returns:
TextContent containing the status (e.g., "pending", "processing", "success", "failed") and other details of the dubbing task.
Limitations:
- The dubbing_id must be valid and properly formatted
- The task must have been previously submitted to the AllVoiceLab API
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dubbing_id | Yes |
Implementation Reference
- allvoicelab_mcp/tools/dubbing.py:435-484 (handler)The handler function that implements the core logic of the 'get_dubbing_info' tool. It validates input, calls the AllVoiceLab client API, formats the response, and returns it as TextContent.def get_dubbing_info(dubbing_id: str) -> TextContent: """ Retrieve status and details of a video dubbing task Args: dubbing_id: The unique identifier of the dubbing task to check. This ID is returned from the video_dubbing or video_translation_dubbing tool. Required. Returns: TextContent: Text content containing the status (e.g., "pending", "processing", "success", "failed") and other details of the dubbing task. """ all_voice_lab = get_client() logging.info(f"Tool called: get_dubbing_info") logging.info(f"Dubbing ID: {dubbing_id}") # Validate parameters if not dubbing_id: logging.warning("Dubbing ID parameter is empty") return TextContent( type="text", text="dubbing_id parameter cannot be empty" ) try: logging.info("Getting dubbing task information") dubbing_info = all_voice_lab.get_dubbing_info(dubbing_id) logging.info(f"Dubbing info retrieved successfully for ID: {dubbing_id}") # Format the result buffer = [] buffer.append(f"Dubbing ID: {dubbing_info.dubbing_id}\n") buffer.append(f"Status: {dubbing_info.status}\n") if dubbing_info.name: buffer.append(f"Project Name: {dubbing_info.name}\n") buffer.append( "Note: If the task has not been completed, you may need to explicitly inform the user of the task ID when responding.\n") # Join the list into a string result = "".join(buffer) return TextContent( type="text", text=result ) except Exception as e: logging.error(f"Failed to get dubbing information: {str(e)}") return TextContent( type="text", text=f"Failed to get dubbing information, tool temporarily unavailable" )
- allvoicelab_mcp/server.py:224-241 (registration)The MCP tool registration for 'get_dubbing_info', including name, description (which serves as input/output schema), and binding to the handler function.mcp.tool( name="get_dubbing_info", description="""[AllVoiceLab Tool] Retrieve status and details of a video dubbing task. This tool queries the current status of a previously submitted dubbing task and returns detailed information about its progress, including the current processing stage and completion status. Args: dubbing_id: The unique identifier of the dubbing task to check. This ID is returned from the video_dubbing or video_translation_dubbing tool. Required. Returns: TextContent containing the status (e.g., "pending", "processing", "success", "failed") and other details of the dubbing task. Limitations: - The dubbing_id must be valid and properly formatted - The task must have been previously submitted to the AllVoiceLab API """ )(get_dubbing_info)