This is the model-generation connection. The separate Platform MCP provides account operations and serverless debugging. The documentation MCP searches public documentation without accessing your account or generating media.
Setup
Connect with browser sign-in usinghttps://mcp.fal.ai/mcp-relay. Choose your MCP client for its dedicated setup guide.
ChatGPT
Install the fal plugin and connect your account
Claude
Add a connector and sign in through your browser
Claude Code
Add the remote server, then authenticate with /mcp
Codex CLI
Add the server and run codex mcp login fal
Cursor
Add the server URL and authorize the connection
Other tools
Copy the URL into a Streamable HTTP and OAuth client
genmedia CLI
A separate terminal connection using a local API key
Check the connection
Ask your assistant:Try your first generation
When fal tools are available, paste one of these prompts into your app:- Image
- Video
- Audio
Active MCP account
In MCP & connectors, select the Active MCP account. Uploads and new generations use this account and its credits across your connected apps. You can also open Account settings, open an account’s row menu, and choose Use for MCP. Your personal account is the default until you choose another. The preference applies to new operations across your OAuth MCP connections, including the plugin. No reconnect or plugin reinstall is needed. The website’s account switcher is separate. Existing jobs stay with the account that started them. If access to the selected account fails, operations stop instead of using personal credits. API-key connections, including genmedia, keep using the account that owns their key.How it works
Your client discovers OAuth through the relay, opens browser sign-in, and uses the authorized connection to call fal tools. The relay resolves your active MCP account for new operations. Credentials should stay in the client’s connection settings, outside prompts and project files. The tools cover model discovery, generation, queue management, and uploads. Tool availability can change; use your client’s tool list to see what is enabled.Documentation-only MCP
To search public guides and API references without connecting an account, use:Available tools
The model-generation server provides these tools:Tool Reference
search_models
Search fal’s model catalog by keyword, category, or both. Parameters:
Example response:
get_model_schema
Get the full input/output schema for a specific model. Use this beforerun_model to understand what parameters are accepted.
Parameters:
run_model
Run a fal model through the queue. The server waits up to 45 seconds by default. It returnscompleted with the result or processing with a request ID and URLs to check the job.
Parameters:
Example:
For long-running models (video, 3D, training), use
submit_job → check_job → get_job_result from the start.If run_model returns processing, keep its request_id and pass its status_url to check_job. Respect poll_after_seconds when present. Once check_job returns status: "COMPLETED", call get_job_result with the returned response_url. Do not resubmit to check progress: another run_model or submit_job call creates a new billable job.submit_job
Submit a job without waiting for the result. Returns immediately with arequest_id you can use with check_job.
Parameters:
Response recipe
Bothrun_model and submit_job return a recipe object with the endpoint ID
and submitted inputs. These response excerpts show how store_payload changes
that object.
store_payload: false, recipe.input is absent and recipe.input_omitted
is true.
check_job
Check a job’s status. Useget_job_result to fetch the output or cancel_job to cancel it.
Parameters:
get_job_result
Fetch the result of a completed job. Parameters:cancel_job
Cancel a queued or running job. Parameters:upload_file
Upload a file to fal’s CDN for use as model input. Choose a signed local upload withprepare_upload, a public url, or complete base64 data.
Parameters:
For a local file up to 90 MB, call
upload_file with prepare_upload: true, its basename as file_name, and its size as file_size. Upload the raw bytes from your client to the returned upload_url with HTTP PUT and the returned headers. Do not add an Authorization header or follow redirects; keep the signed upload URL private. Use file_url as model input only after the PUT succeeds. This flow uses your OAuth connection; no separate API key is needed.
Use base64 for small files (under 1 MB), or provide a public file URL. The hosted server cannot read a local path. An app must expose the attachment bytes or a URL before your assistant can upload it.
URL and base64 uploads return a cdn_url for model input (for example, image_url or audio_url). Prepared uploads return upload_url and file_url; use file_url only after a successful 2xx PUT.
get_pricing
Get model pricing before generation. Results can be cached for five minutes. If the response is throttled, respectretry_after_seconds before retrying.
Parameters:
recommend_model
Describe what you want to create and get curated starting recommendations and model candidates. Candidate rank follows Explore discovery order; it is not a quality or speed score. Parameters:search_docs
Search the fal documentation for guides, API references, and code examples. Parameters:FAQ
- My credits are on a team account
- What models can I use?
- Do I need an API key?
- Does it cost extra?
- What about rate limits?
Select the team as Active MCP account in MCP & connectors, or choose Use for MCP from its row menu in Account settings. The website account switcher is separate. API-key connections keep using the account that owns their key.