cancel_job
ChatGPTCancel a running fal.ai queue job. Only use this when the user explicitly asks to cancel a specific request_id.
check_job
ChatGPTCheck the status of a running fal.ai job. Use this for long-running jobs (video generation, training, etc.) or when run_model returns status "processing".
get_job_result
ChatGPTFetch the result for a completed fal.ai queue job. Use check_job first when you are not sure the request has completed.
get_model_schema
ChatGPTGet the full input/output schema for a specific fal.ai model. Returns all parameters the model accepts and what it returns. Use this before run_model to understand what inputs are needed.
get_pricing
ChatGPTGet pricing information for a fal.ai model. Returns cost per run or per second. Use this before running expensive models (video, training) to estimate costs.
recommend_model
ChatGPTGet model recommendations based on what you want to create. Searches the live fal.ai catalog and returns the best models for your use case. Models are ranked by platform popularity (most-used models appear first).
run_model
ChatGPTRun a fal.ai model: submits to the queue and waits a short, bounded time for the result. IMPORTANT: If the user does NOT specify a model by name, you MUST call recommend_model first to find the best trending model. Never pick a model from your own knowledge — always use recommend_model to get the current best option. Only skip recommend_model if the user explicitly asks for a specific model (e.g. "use FLUX" or "use Kling"). This tool returns one of two statuses: - "completed": the result is included. - "processing": the wait budget elapsed but the job is still running. This is NORMAL for video, 3D, training, or a busy queue. A request_id, status_url, and response_url are returned. Poll check_job, then call get_job_result when queue_status is COMPLETED. Do NOT call run_model again for the same request — that starts a new, billable job. For video, 3D, or training (long-running by nature), prefer submit_job + check_job + get_job_result from the start. For image URLs in the output, present them directly to the user.
search_docs
ChatGPTSearch the fal.ai documentation for guides, API references, code examples, and implementation details. Use this when you need to understand how fal.ai works, find specific API docs, or get code snippets.
search_models
ChatGPTSearch fal.ai's model catalog. Use this to discover available models. Categories: text-to-image, image-to-video, text-to-video, text-to-speech, speech-to-text, text-to-music, image-to-3d, text-to-3d, image-editing, llm, and more. Returns model IDs you can pass to get_model_schema or run_model.
submit_job
ChatGPTSubmit a job to the queue WITHOUT waiting for completion. Returns immediately with a request_id. Use this instead of run_model for long-running tasks (video generation, 3D, training). Then use check_job to poll status and get_job_result to retrieve the result when ready.
upload_file
ChatGPTUpload a file to fal.ai's CDN so it can be used as input to models. Returns a fal.ai CDN URL. HOW TO USE: - PUBLIC URL → pass it as 'url'. Easiest option. - LOCAL FILE (recommended for any size) → upload it yourself directly to fal REST API: 1. POST https://rest.alpha.fal.ai/storage/upload/initiate with header "Authorization: Key $FAL_KEY" and body {"file_name":"...","content_type":"..."} 2. PUT the file bytes to the returned upload_url 3. Use the returned file_url as the CDN URL This avoids token/size limits from passing file content through MCP. - LOCAL FILE (small, <1MB) → read the file, base64-encode it, and pass as 'data' with 'file_name'. - Do NOT use file_path — it will always fail on hosted MCP servers.