Create Talking Avatar Videos from Text or Audio
An MCP server that generates lipsynced avatar videos from audio or text via the Flyworks API, sync or async.
0.2.3Add to Favorites
Why it matters
Generate lip-sync videos for digital avatars using text-to-speech or audio input. Supports photorealistic and cartoon styles, enabling dynamic avatar communication without pre-training.
Outcomes
What it gets done
Animate digital avatars to lip-sync with provided audio.
Generate talking avatar videos from text input using TTS.
Create digital avatars from images or videos.
Integrate with MCP for seamless workflow automation.
Source
Get it from source
Spark does not host a copy of it.
Open sourceReports
Agent outcome reports
No reports yet
Capabilities
Tools your agent gets
Create lip-sync video with audio input, animating a digital avatar to match speech in sync.
Create lip-sync video with text input, generating audio from text and animating avatar.
Overview
An MCP server that wraps the Flyworks API to generate lipsynced digital avatar videos from an audio clip or from text via text-to-speech, in synchronous or asynchronous mode. Use it to add avatar or dubbing-style lipsync video generation to an assistant or pipeline; the free trial token is quota-limited, watermarked, and capped at 45 seconds.
What it does
An MCP server that provides a Model Context Protocol interface to the Flyworks API for fast, free lipsync video creation. It can animate a digital human avatar - built from a video or an image, in realistic or cartoon styles - to speak in sync with a supplied audio clip, or generate the audio itself from text via text-to-speech first.
When to use - and when NOT to
Use it when you need to produce a lipsynced avatar video from either an audio clip or plain text, as a one-off or inside an automated pipeline, since the tool supports both synchronous and asynchronous task modes. It requires a Flyworks API token; the free trial token has a limited daily quota and produces watermarked videos capped at 45 seconds, so it is not suited to production-length or unwatermarked output without a paid token from Flyworks. Video output URLs are temporary, so downstream systems must download and store results promptly rather than relying on the returned link.
Capabilities
create_lipsync_video_by_audio- animates a digital human avatar to speak in sync with a supplied audio file or URL; the avatar can come from an existing avatar ID or be created on the fly from a video or image (file or URL)create_lipsync_video_by_text- generates speech audio from text via TTS (with an optional specific voice ID, otherwise chosen automatically) and lipsyncs the avatar to it- Both tools support
async_mode(returns atask_idimmediately, the default) or synchronous mode, which waits and downloads the video directly, with a maximum wait of 10 minutes - Task status for async jobs can be checked via the Flyworks API's
/creation/taskendpoint using the returnedtask_id - Local video, image, and audio files are automatically uploaded to Flyworks servers; avatar creation from video generally yields better quality than from a still image, which is faster but lower quality
How to install
Requires Python 3.8+ and the httpx and mcp[cli] dependencies, plus a Flyworks API token. Install via Smithery:
npx -y @smithery/cli install @Flyworks-AI/flyworks-mcp --client claude
Or configure it directly in Claude Desktop's claude_desktop_config.json:
{
"mcpServers": {
"flyworks": {
"command": "uvx",
"args": ["flyworks-mcp", "-y"],
"env": {
"FLYWORKS_API_TOKEN": "your_api_token_here",
"FLYWORKS_API_BASE_URL": "https://hfw-api.hifly.cc/api/v2/hifly",
"FLYWORKS_MCP_BASE_PATH": "/path/to/your/output/directory"
}
}
}
}
The same configuration works in Cursor under Preferences > Cursor Settings > MCP > Add new global MCP Server. A free trial token is available for testing, with a limited daily quota, watermarked output, and a 45-second cap; contact Flyworks for a full-access token. If uvx cannot be found (spawn uvx ENOENT), locate it with which uvx and point command at the absolute path instead.
Who it's for
Developers building avatar, presenter, or dubbing features who need programmatic lipsync video generation from audio or text without running their own lipsync model.
Source README
Flyworks MCP: Free & Fast Zeroshot Lipsync Tool
Overview
The Flyworks MCP is a Model Context Protocol (MCP) server that provides a convenient interface for interacting with the Flyworks API. It facilitates fast and free lipsync video creation for a wide range of digital avatars, including realistic and cartoon styles.
Demo
Input avatar video (footage):
Audio clip with TTS saying 我是一个飞影数字人。Welcome to Flyworks MCP server demo. This tool enables fast and free lipsync video creation for a wide range of digital avatars, including realistic and cartoon styles.:
Generated lipsync video:
Features
- Create lipsynced videos using digital avatar video and audio as inputs
- Create lipsynced videos by text (with text-to-speech)
- Create digital human avatars from images or videos
- Support for both async and sync modes of operation
- More features coming soon...
Requirements
- Python 3.8+
- Dependencies:
httpx,mcp[cli]
Usage
Integration with Claude or Other MCP Clients
Using in Claude Desktop
Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json to include the following:
{
"mcpServers": {
"flyworks": {
"command": "uvx",
"args": [
"flyworks-mcp",
"-y"
],
"env": {
"FLYWORKS_API_TOKEN": "your_api_token_here",
"FLYWORKS_API_BASE_URL": "https://hfw-api.hifly.cc/api/v2/hifly",
"FLYWORKS_MCP_BASE_PATH": "/path/to/your/output/directory"
}
}
}
}
Using in Cursor
Go to Cursor -> Preferences -> Cursor Settings -> MCP -> Add new global MCP Server to add above config.
Make sure to replace your_api_token_here with your actual API token, and update the FLYWORKS_MCP_BASE_PATH to a valid directory on your system where output files will be saved.
Note: We offer free trial access to our tool with the token
2aeda3bcefac46a3. However, please be aware that the daily quota for this free access is limited. Additionally, the generated videos will be watermarked and restricted to a duration of 45 seconds. For full access, please contact us at bd@flyworks.ai to acquire your token.
Installing via Smithery
To install flyworks-mcp for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @Flyworks-AI/flyworks-mcp --client claude
Install locally
Clone this repository:
git clone https://github.com/yourusername/flyworks-mcp.git cd flyworks-mcpInstall dependencies:
pip install httpx "mcp[cli]>=1.6.0"Or using
uv:uv pip install httpx "mcp[cli]>=1.6.0"To avoid timeout issues during server startup, we recommend pre-installing all dependencies:
pip install pygments pydantic-core httpx "mcp[cli]>=1.6.0"Configuration
Set your Flyworks API token as an environment variable:
# Linux/macOS
export FLYWORKS_API_TOKEN="your_token_here"
# Windows (Command Prompt)
set FLYWORKS_API_TOKEN=your_token_here
# Windows (PowerShell)
$env:FLYWORKS_API_TOKEN="your_token_here"
Alternatively, you can create a .env file.
- Running the Server
Run the server.py file directly:
python server.py
spawn uvx ENOENT issue:
Please confirm its absolute path by running this command in your terminal:
which uvx
Once you obtain the absolute path (e.g., /usr/local/bin/uvx), update your configuration to use that path (e.g., "command": "/usr/local/bin/uvx").
Tool Description
1. Create Lipsync Video by Audio (create_lipsync_video_by_audio)
Create a lipsync video with audio input. Animates a digital human avatar to speak in sync with the provided audio.
Parameters:
avatar: Digital human avatar ID. Either this or avatar creation parameters must be provided.avatar_video_url: URL of a video to create the avatar from.avatar_image_url: URL of an image to create the avatar from.avatar_video_file: Local path to a video file to create the avatar from.avatar_image_file: Local path to an image file to create the avatar from.audio_url: Remote URL of the audio file. One of audio_url or audio_file must be provided.audio_file: Local path to the audio file. One of audio_url or audio_file must be provided.title: Optional title for the created video.async_mode: If true, returns task_id immediately. If false, waits for completion and downloads the video. Default is true.output_path: Where to save the downloaded video if async_mode is false. Default is "output.mp4".
Notes:
- For avatar creation, provide exactly ONE of avatar_video_url, avatar_image_url, avatar_video_file, or avatar_image_file.
- If avatar ID is directly provided, these parameters will be ignored.
Returns:
- If async_mode is true: task_id for checking status later and created_avatar (if a new avatar was created)
- If async_mode is false: downloaded video path, task result, and created_avatar (if applicable)
2. Create Lipsync Video by Text (create_lipsync_video_by_text)
Create a lipsync video with text input. Generates audio from the text and animates a digital human avatar to speak it.
Parameters:
avatar: Digital human avatar ID. Either this or avatar creation parameters must be provided.avatar_video_url: URL of a video to create the avatar from.avatar_image_url: URL of an image to create the avatar from.avatar_video_file: Local path to a video file to create the avatar from.avatar_image_file: Local path to an image file to create the avatar from.text: Text content to be spoken by the avatar. Required.voice: Voice ID to use for text-to-speech. If not provided, a random voice will be selected automatically.title: Optional title for the created video.async_mode: If true, returns task_id immediately. If false, waits for completion and downloads the video. Default is true.output_path: Where to save the downloaded video if async_mode is false. Default is "output.mp4".
Notes:
- For avatar creation, provide exactly ONE of avatar_video_url, avatar_image_url, avatar_video_file, or avatar_image_file.
- If avatar ID is directly provided, these parameters will be ignored.
Returns:
- If async_mode is true: task_id for checking status later, selected voice ID, and created_avatar (if applicable)
- If async_mode is false: downloaded video path, task result, selected voice ID, and created_avatar (if applicable)
Checking Task Status
For tasks run in async mode, you can check their status using the Flyworks API's /creation/task endpoint with the task_id returned by the tool.
Notes
- Job processing may take some time, please be patient
- Video file URLs are temporary, please download and save them promptly
- When using local files, the server will automatically upload them to Flyworks servers
- In sync mode, the tool will wait for the task to complete and automatically download the video
- Maximum allowed wait time for sync mode is 10 minutes (600 seconds)
- Avatar creation through videos usually provides better quality but takes longer
- For quick testing, avatar creation through images is faster but may have lower quality
Related Links
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.