Falai Server
FreeNot checkedA FastMCP server that exposes core fal.ai model API operations, enabling model catalogue browsing, search, schema retrieval, inference, queue management, and CD
About
A FastMCP server that exposes core fal.ai model API operations, enabling model catalogue browsing, search, schema retrieval, inference, queue management, and CDN uploads through natural language.
README
A FastMCP server that exposes core fal.ai model API operations (model catalogue, search, schema retrieval, inference, queue management, CDN uploads). The server can run locally over STDIO or remotely via the Streamable HTTP transport, and now ships with Docker support for easier deployment.
Quick Start
PyPI Installation (Recommended)
pip install falai-mcp-tools
After installation, you can run the server with:
falai-mcp
Manual Installation
Clone the repository:
git clone https://github.com/berkbirkan/falai-mcp.git cd falai-mcpCreate and activate a virtual environment:
python3 -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activateInstall the project in editable mode:
pip install -e .
Requirements
- Python 3.10 or newer
- A fal.ai API key: either
FAL_KEYor theFAL_KEY_ID/FAL_KEY_SECRETpair - Docker (optional, only if you prefer containerized execution)
Configuration
Environment variables (prefixed with FALAI_) control runtime behaviour:
| Variable | Description |
|---|---|
FAL_KEY or FAL_KEY_ID/FAL_KEY_SECRET |
fal.ai credentials (required for live API calls) |
FALAI_ALLOWED_MODELS |
Comma-separated list of explicit model IDs to expose |
FALAI_MODEL_KEYWORDS |
Comma-separated keywords to pre-filter models when no explicit list is provided |
FALAI_REQUEST_TIMEOUT |
HTTP timeout (seconds) for fal.ai requests (default: 120) |
FALAI_ENABLE_HTTP |
Set to true to run the server with the Streamable HTTP transport |
FALAI_HTTP_HOST / FALAI_HTTP_PORT |
Bind address and port when HTTP transport is enabled (defaults: 0.0.0.0 / 8080) |
If you prefer a .env file, place it next to the project root (or mount it into the container) and load it before running the server.
Clients can override credentials and model filters per MCP session through the
configuretool. Environment variables supply defaults when the client does not set overrides.
Usage
Local STDIO usage
Ensure your virtual environment is active and credentials are exported:
export FAL_KEY=sk_live_...Run the server with the default STDIO transport:
falai-mcpLeave the process running; configure your MCP client (Claude, Cursor, etc.) to launch this command via STDIO (see the client integration section).
Remote HTTP usage
Export credentials and enable the HTTP transport:
export FAL_KEY=sk_live_... export FALAI_ENABLE_HTTP=true export FALAI_HTTP_PORT=8080 # optional overrideStart the server so it listens on the configured host/port:
falai-mcpConfirm the HTTP transport is reachable (for example with
curl -I http://localhost:8080/mcp/). Clients should connect tohttp://<host>:<port>/mcp/.
Docker Usage
Build the container image:
docker build -t falai-mcp .Run the container with HTTP enabled and publish the port:
docker run \ --rm \ -e FAL_KEY=sk_live_... \ -e FALAI_ENABLE_HTTP=true \ -e FALAI_HTTP_PORT=8080 \ -p 8080:8080 \ falai-mcpThe MCP endpoint is now available at
http://localhost:8080/mcp/.
Client integrations
Below are example configurations for popular MCP clients. Adjust paths, environment variables, and identifiers to match your setup.
Claude Desktop
Claude Desktop keeps its configuration in ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent path on your platform.
STDIO (local process)
{ "mcpServers": { "falai-local": { "command": "falai-mcp", "args": [], "env": { "FAL_KEY": "sk_live_..." } } } }Restart Claude Desktop after saving changes. Claude will spawn
falai-mcpand communicate over STDIO.Remote HTTP server
{ "mcpServers": { "falai-remote": { "transport": { "type": "http", "url": "http://localhost:8080/mcp/" } } } }
Cursor
Cursor reads MCP configuration from ~/.cursor/mcp.json.
STDIO (local process)
{ "clients": { "falai-local": { "command": "falai-mcp", "args": [], "env": { "FAL_KEY": "sk_live_..." } } } }Remote HTTP server
{ "clients": { "falai-remote": { "transport": { "type": "http", "url": "http://localhost:8080/mcp/" } } } }
After editing mcp.json, restart Cursor (or reload MCP connections) to pick up the new configuration.
Available tools
| Tool | Description |
|---|---|
configure(api_key=None, allowed_models=None, model_keywords=None) |
Override credentials and access scope for the active session |
models(page=None, total=None) |
List available models with optional pagination |
search(keywords) |
Search the model catalogue using space-separated keywords |
schema(model_id) |
Retrieve the OpenAPI schema for a model |
generate(model, parameters, queue=False) |
Run synchronous or queued inference |
result(url) |
Fetch the result of a queued request |
status(url) |
Check the status (optionally with logs) of a queued request |
cancel(url) |
Cancel a queued request |
upload(path) |
Upload a local file to fal.ai CDN |
All tools enforce any configured allow-list and respect per-session overrides from the configure tool.
Development
Building for PyPI
Install build tools:
pip install build twineBuild the package:
python -m buildUpload to PyPI (test first with TestPyPI):
# Test upload python -m twine upload --repository testpypi dist/* # Production upload python -m twine upload dist/*
Notes
- Schema retrieval and queue inspection require valid fal.ai credentials; errors appear as MCP tool errors if credentials are missing or invalid.
- Model discovery falls back to the bundled
fal-clientendpoint catalogue when fal.ai's public APIs are unavailable. - When running remotely, ensure network access between the client and the MCP server (open firewall ports, configure TLS or reverse proxies if needed).
License
This project is licensed under the MIT License - see the LICENSE file for details.
Install Falai Server in Claude Desktop, Claude Code & Cursor
unyly install falai-mcp-serverInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add falai-mcp-server -- uvx falai-mcp-toolsFAQ
Is Falai Server MCP free?
Yes, Falai Server MCP is free — one-click install via Unyly at no cost.
Does Falai Server need an API key?
No, Falai Server runs without API keys or environment variables.
Is Falai Server hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Falai Server in Claude Desktop, Claude Code or Cursor?
Open Falai Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare Falai Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
