
Fal Ai Media
- 1.4k installs
- 238k repo stars
- Updated August 5, 2026
- affaan-m/ecc
This is a copy of fal-ai-media by affaan-m - installs and ranking accrue to the original listing.
fal-ai-media is an agent skill that generates images, videos, and audio assets from natural language prompts via fal.ai MCP for developers working inside Claude Code or Cursor.
About
fal-ai-media in affaan-m/ecc provides unified media generation through fal.ai MCP covering image, video, and audio workflows. Supported models include text-to-image Nano Banana, text and image-to-video with Seedance, Kling, and Veo 3, text-to-speech via CSM-1B, and video-to-audio with ThinkSound. Developers reach for fal-ai-media when users ask to generate images, create videos from text or images, produce speech or sound effects, or make thumbnails without leaving the agent environment. The skill activates on phrases like generate image, create video, text to speech, or make a thumbnail. MCP configuration is required to reach fal.ai endpoints from Claude Code or Cursor. Triggers span marketing assets, prototype media, and app placeholder content generated directly from prompts rather than stock libraries.
- Unified access to text-to-image, text-to-video, image-to-video, text-to-speech, and video-to-audio models
- 7 MCP tools including search, find, generate, result, status, cancel and estimate_cost
- Works with Nano Banana, Seedance, Kling, Veo 3, CSM-1B and ThinkSound
- Drift-prone skill: always search or fetch current model metadata before promising specifics
- Requires fal.ai MCP server configured with FAL_KEY
Fal Ai Media by the numbers
- 1,423 all-time installs (skills.sh)
- +100 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/affaan-m/ecc --skill fal-ai-mediaAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 1.4k |
|---|---|
| repo stars | ★ 238k |
| Last updated | August 5, 2026 |
| Repository | affaan-m/ecc ↗ |
How do you generate images and video with fal.ai?
Generate images, videos, and audio assets directly from natural language prompts inside Claude Code or Cursor.
Who is it for?
Developers in Claude Code or Cursor who need fal.ai MCP integration for text-to-image, video, and audio generation without switching to separate media tools.
Skip if: Local Stable Diffusion installs without fal.ai, video editing timelines, or production CDN hosting and delivery pipelines.
When should I use this skill?
User asks to generate an image, create a video from text or image, run text-to-speech, or produce audio with fal.ai models.
What you get
AI-generated images, videos, speech audio, and sound-effect assets from fal.ai model outputs.
- Generated image files
- Generated video or audio assets
By the numbers
- Covers 6 named fal.ai model families: Nano Banana, Seedance, Kling, Veo 3, CSM-1B, ThinkSound
Files
fal.ai Media Generation
Generate images, videos, and audio using fal.ai models via MCP.
When to Activate
- User wants to generate images from text prompts
- Creating videos from text or images
- Generating speech, music, or sound effects
- Any media generation task
- User says "generate image", "create video", "text to speech", "make a thumbnail", or similar
MCP Requirement
fal.ai MCP server must be configured. Add to ~/.claude.json:
"fal-ai": {
"command": "npx",
"args": ["-y", "fal-ai-mcp-server"],
"env": { "FAL_KEY": "YOUR_FAL_KEY_HERE" }
}Get an API key at fal.ai.
MCP Tools
The fal.ai MCP provides these tools:
search— Find available models by keywordfind— Get model details and parametersgenerate— Run a model with parametersresult— Check async generation statusstatus— Check job statuscancel— Cancel a running jobestimate_cost— Estimate generation costmodels— List popular modelsupload— Upload files for use as inputs
---
Image Generation
Nano Banana 2 (Fast)
Best for: quick iterations, drafts, text-to-image, image editing.
generate(
model_name: "fal-ai/nano-banana-2",
input: {
"prompt": "a futuristic cityscape at sunset, cyberpunk style",
"image_size": "landscape_16_9",
"num_images": 1,
"seed": 42
}
)Nano Banana Pro (High Fidelity)
Best for: production images, realism, typography, detailed prompts.
generate(
model_name: "fal-ai/nano-banana-pro",
input: {
"prompt": "professional product photo of wireless headphones on marble surface, studio lighting",
"image_size": "square",
"num_images": 1,
"guidance_scale": 7.5
}
)Common Image Parameters
| Param | Type | Options | Notes |
|---|---|---|---|
prompt | string | required | Describe what you want |
image_size | string | square, portrait_4_3, landscape_16_9, portrait_16_9, landscape_4_3 | Aspect ratio |
num_images | number | 1-4 | How many to generate |
seed | number | any integer | Reproducibility |
guidance_scale | number | 1-20 | How closely to follow the prompt (higher = more literal) |
Image Editing
Use Nano Banana 2 with an input image for inpainting, outpainting, or style transfer:
# First upload the source image
upload(file_path: "/path/to/image.png")
# Then generate with image input
generate(
model_name: "fal-ai/nano-banana-2",
input: {
"prompt": "same scene but in watercolor style",
"image_url": "<uploaded_url>",
"image_size": "landscape_16_9"
}
)---
Video Generation
Seedance 1.0 Pro (ByteDance)
Best for: text-to-video, image-to-video with high motion quality.
generate(
model_name: "fal-ai/seedance-1-0-pro",
input: {
"prompt": "a drone flyover of a mountain lake at golden hour, cinematic",
"duration": "5s",
"aspect_ratio": "16:9",
"seed": 42
}
)Kling Video v3 Pro
Best for: text/image-to-video with native audio generation.
generate(
model_name: "fal-ai/kling-video/v3/pro",
input: {
"prompt": "ocean waves crashing on a rocky coast, dramatic clouds",
"duration": "5s",
"aspect_ratio": "16:9"
}
)Veo 3 (Google DeepMind)
Best for: video with generated sound, high visual quality.
generate(
model_name: "fal-ai/veo-3",
input: {
"prompt": "a bustling Tokyo street market at night, neon signs, crowd noise",
"aspect_ratio": "16:9"
}
)Image-to-Video
Start from an existing image:
generate(
model_name: "fal-ai/seedance-1-0-pro",
input: {
"prompt": "camera slowly zooms out, gentle wind moves the trees",
"image_url": "<uploaded_image_url>",
"duration": "5s"
}
)Video Parameters
| Param | Type | Options | Notes |
|---|---|---|---|
prompt | string | required | Describe the video |
duration | string | "5s", "10s" | Video length |
aspect_ratio | string | "16:9", "9:16", "1:1" | Frame ratio |
seed | number | any integer | Reproducibility |
image_url | string | URL | Source image for image-to-video |
---
Audio Generation
CSM-1B (Conversational Speech)
Text-to-speech with natural, conversational quality.
generate(
model_name: "fal-ai/csm-1b",
input: {
"text": "Hello, welcome to the demo. Let me show you how this works.",
"speaker_id": 0
}
)ThinkSound (Video-to-Audio)
Generate matching audio from video content.
generate(
model_name: "fal-ai/thinksound",
input: {
"video_url": "<video_url>",
"prompt": "ambient forest sounds with birds chirping"
}
)ElevenLabs (via API, no MCP)
For professional voice synthesis, use ElevenLabs directly:
import os
import requests
resp = requests.post(
"https://api.elevenlabs.io/v1/text-to-speech/<voice_id>",
headers={
"xi-api-key": os.environ["ELEVENLABS_API_KEY"],
"Content-Type": "application/json"
},
json={
"text": "Your text here",
"model_id": "eleven_turbo_v2_5",
"voice_settings": {"stability": 0.5, "similarity_boost": 0.75}
}
)
with open("output.mp3", "wb") as f:
f.write(resp.content)VideoDB Generative Audio
If VideoDB is configured, use its generative audio:
# Voice generation
audio = coll.generate_voice(text="Your narration here", voice="alloy")
# Music generation
music = coll.generate_music(prompt="upbeat electronic background music", duration=30)
# Sound effects
sfx = coll.generate_sound_effect(prompt="thunder crack followed by rain")---
Cost Estimation
Before generating, check estimated cost:
estimate_cost(model_name: "fal-ai/nano-banana-pro", input: {...})Model Discovery
Find models for specific tasks:
search(query: "text to video")
find(model_name: "fal-ai/seedance-1-0-pro")
models()Tips
- Use
seedfor reproducible results when iterating on prompts - Start with lower-cost models (Nano Banana 2) for prompt iteration, then switch to Pro for finals
- For video, keep prompts descriptive but concise — focus on motion and scene
- Image-to-video produces more controlled results than pure text-to-video
- Check
estimate_costbefore running expensive video generations
Related Skills
videodb— Video processing, editing, and streamingvideo-editing— AI-powered video editing workflowscontent-engine— Content creation for social platforms
interface:
display_name: "fal.ai Media"
short_description: "AI media generation via fal.ai"
brand_color: "#F43F5E"
default_prompt: "Use $fal-ai-media to generate image, video, or audio assets with fal.ai."
policy:
allow_implicit_invocation: true
Related skills
How it compares
Pick fal-ai-media for fal.ai MCP multimodal generation in agents; pick local diffusion skills when workflows must run fully offline without external APIs.
FAQ
Which fal.ai models does fal-ai-media support?
fal-ai-media covers text-to-image Nano Banana, text and image-to-video Seedance, Kling, and Veo 3, text-to-speech CSM-1B, and video-to-audio ThinkSound through unified fal.ai MCP.
Where does fal-ai-media run?
fal-ai-media runs inside Claude Code or Cursor after fal.ai MCP is configured, letting developers generate images, videos, and audio from natural language prompts without leaving the agent.