# Fal.ai — MCP server on mcp.ai > Connect your Fal.ai account and use 12 tools for AI models straight from your AI agent. Connect with your own API key. The generative media platform for developers with 600+ AI models for image, video, voice, and audio generation. By: mcp.ai · official Page: https://mcp.ai/fal_ai ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_fal_ai?ms=1787291340000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/fal_ai/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/fal_ai/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/fal_ai/skill.md Postman collection (v2.1): https://mcp.ai/fal_ai/postman.json ## Tools - fal_ai_cancel_queue_request(model_id: string, request_id: string) — Tool to cancel a queued or in-progress request in fal.ai's queue system. Use when you need to stop a request before it completes. Note that cancellation only succeeds if the request hasn't started pro - fal_ai_estimate_pricing(endpoints: object, estimate_type: string) — Tool to estimate pricing for fal.ai model endpoints. Use when you need to calculate expected costs for API calls or unit-based usage across one or more endpoints. - fal_ai_get_jwks() — Tool to retrieve public keys for webhook signature verification. Returns a JSON Web Key Set containing ED25519 public keys. Use when you need to verify webhook signatures from fal.ai. The keys are cac - fal_ai_get_models(q?: string, limit?: integer, cursor?: string, expand?: string|string[], status?: string, category?: string, endpoint_id?: string|string[]) — Tool to discover and search fal.ai model endpoints. Use when you need to list all models, find specific models by ID, or search by category/query. Supports pagination and optional expansion of OpenAPI - fal_ai_get_pricing(endpoint_id: string|string[]) — Tool to retrieve unit pricing for model endpoints. Returns pricing information including unit price, billing unit, and currency. Use when you need to check costs for specific fal.ai models. - fal_ai_get_queue_request_result(model_id: string, request_id: string) — Tool to retrieve the final result of a completed queue request. Use when you need to get the output of a model request that was submitted to the queue and has finished processing. Only works after req - fal_ai_queue_get_status(logs?: integer, model_id: string, request_id: string) — Tool to check the status of a queued request in fal.ai. Use when you need to monitor the progress of an async request. Returns different information based on status: queue position when IN_QUEUE, logs - fal_ai_queue_get_status_stream(logs?: integer, model_id: string, request_id: string) — Tool to stream request status updates via SSE. Use when you need real-time updates on a queued request's processing state. - fal_ai_run_model_sync(input: object, model_id: string, runner_hint?: string, timeout_seconds?: integer) — Tool to invoke a fal.ai model synchronously via fal.run, generating new content (images, audio, video, or other model outputs) hosted at fal.ai CDN URLs in the response. Each call executes paid infere - fal_ai_submit_async_job(input: object, model_id: string, no_retry?: boolean, priority?: string, runner_hint?: string, webhook_url?: string, timeout_seconds?: integer) — Tool to submit an asynchronous inference job to fal.ai's queue (queue.fal.run). Use when you want to run a model without blocking — fal.ai persists the request, auto-scales runners, and you fetch the - fal_ai_subscribe_async_job(input: object, model_id: string, priority?: string, runner_hint?: string, include_logs?: boolean, timeout_seconds?: integer, max_wait_seconds?: number, poll_interval_seconds?: number) — Tool to submit a fal.ai inference job to the async queue and block until it completes (or a deadline is reached), returning the model's final result. Mirrors fal-js's `subscribe()` ergonomics: SUBMIT_ - fal_ai_upload_file(file: object) — Tool to upload an input media file (image, audio, or video) to fal.ai's CDN and return a public access_url that can be passed as a model input. Many fal.ai models accept a URL for inputs like 'image_u ## Example prompts - "What can I do in Fal.ai?" - "Show me a summary of my Fal.ai account" ## Links Docs: https://mcp.ai/docs/mcps/fal_ai Website: https://mcp.ai/mcps/fal_ai