About Fal
An MCP server for exploring fal.ai models and generating content through direct or queued execution. It also supports queue control, file uploads, and streaming over HTTP.
Key features
- 01List and search fal.ai models
- 02Retrieve model schemas
- 03Generate content with models
- 04Manage queued requests
- 05Upload files to fal.ai CDN
- 06Stream over HTTP
Use cases
- 01Find a suitable fal.ai model by keyword
- 02Generate content through a selected model
- 03Check or cancel queued generation jobs
MCP support
Exposes model discovery, schema lookup, generation, queue management, and upload tools to MCP clients. Supports streaming via HTTP transport.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
http://127.0.0.1:6274/mcp/claude mcp add --transport http fal http://127.0.0.1:6274/mcp/{"mcpServers":{"fal":{"type":"http","url":"http://127.0.0.1:6274/mcp/"}}}Open in Cursor{"servers":{"fal":{"type":"http","url":"http://127.0.0.1:6274/mcp/"}}}Open in VS Code{"mcpServers":{"fal":{"type":"http","url":"http://127.0.0.1:6274/mcp/"}}}{"mcpServers":{"fal":{"serverUrl":"http://127.0.0.1:6274/mcp/"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMEfal MCP Server
A Model Context Protocol (MCP) server for interacting with fal.ai models and services. This project was inspired by am0y's MCP server, but updated to use the latest streaming MCP support.
Features
- List all available fal.ai models
- Search for specific models by keywords
- Get model schemas
- Generate content using any fal.ai model
- Support for both direct and queued model execution
- Queue management (status checking, getting results, cancelling requests)
- File upload to fal.ai CDN
- Full streaming support via HTTP transport
Requirements
- Python 3.12+
- fastmcp
- httpx
- aiofiles
- A fal.ai API key
Installation
- Clone this repository:
git clone https://github.com/derekalia/fal.git
cd fal
- Install the required packages:
# Using uv (recommended)
uv sync
# Or using pip
pip install fastmcp httpx aiofiles
Usage
Running the Server Locally
-
Get your fal.ai API key from fal.ai
-
Start the MCP server with HTTP transport:
./run_http.sh YOUR_FAL_API_KEY
The server will start and display connection information in your terminal.
- Connect to it from your LLM IDE (Claude Code or Cursor) by adding to your configuration:
{
"Fal": {
"url": "http://127.0.0.1:6274/mcp/"
}
}
Development Mode (with MCP Inspector)
For testing and debugging, you can run the server in development mode:
fastmcp dev main.py
This will:
- Start the server on a random port
- Launch the MCP Inspector web interface in your browser
- Allow you to test all tools interactively with a web UI
The Inspector URL will be displayed in the terminal (typically http://localhost:PORT).
Environment Variables
The run_http.sh script automatically handles all environment variables for you. If you need to customize:
PORT: Server port for HTTP transport (default: 6274)
Setting API Key Permanently
If you prefer to set your API key permanently instead of passing it each time:
- Create a
.envfile in the project root:
echo 'FAL_KEY="YOUR_FAL_API_KEY_HERE"' > .env
- Then run the server without the API key argument:
./run_http.sh
For manual setup:
FAL_KEY: Your fal.ai API key (required)MCP_TRANSPORT: Transport mode -stdio(default) orhttp
Available Tools
models(page=None, total=None)- List available models with optional paginationsearch(keywords)- Search for models by keywordsschema(model_id)- Get OpenAPI schema for a specific modelgenerate(model, parameters, queue=False)- Generate content using a modelresult(url)- Get result from a queued requeststatus(url)- Check status of a queued requestcancel(url)- Cancel a queued requestupload(path)- Upload a file to fal.ai CDN
License
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.