MCPcopy Index your code
hub / github.com/fal-ai/fal

github.com/fal-ai/fal @fal_v1.78.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release fal_v1.78.1 ↗ · + Follow
3,575 symbols 13,391 edges 250 files 750 documented · 21% 1 cross-repo links updated 2d agofal_v1.78.1 · 2026-07-05★ 93241 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

PyPI Tests

fal

fal is a serverless Python runtime that lets you run and scale code in the cloud with no infra management.

With fal, you can build pipelines, serve ML models and scale them up to many users. You scale down to 0 when you don't use any resources.

This repository contains the main Python packages for building on fal:

  • fal (in projects/fal): define, test, and deploy serverless apps on fal
  • fal-client (in projects/fal_client): call fal model APIs or your deployed endpoints from Python

For full product and platform documentation, see fal.ai/docs.

Which package should I use?

Use fal when you want to deploy Python code to fal

The fal package includes the Python SDK and CLI for building serverless apps, testing them with temporary URLs, and deploying them to production.

pip install fal
fal auth login

Create a minimal app:

import fal


class MyApp(fal.App):
    @fal.endpoint("/")
    def run(self) -> dict:
        return {"message": "Hello, World!"}

Run it on fal for testing:

fal run hello_world.py::MyApp

Deploy it to a persistent endpoint:

fal deploy hello_world.py::MyApp

Docs:

Use fal-client when you want to call models or deployed endpoints

The fal-client package is the simplest way to call model APIs on fal from Python.

pip install fal-client
export FAL_KEY="your-api-key"

Call a model:

import fal_client

result = fal_client.subscribe(
    "fal-ai/flux/schnell",
    arguments={
        "prompt": "a futuristic cityscape at sunset",
        "image_size": "landscape_16_9",
    },
)

print(result["images"][0]["url"])

You can also use fal-client to call your own deployed fal apps by passing your endpoint ID instead of a model ID.

Docs:

Install from source

From the repository root:

pip install -e 'projects/fal[dev]'
pip install -e 'projects/fal_client[dev]'
pip install -e 'projects/isolate_proto[dev]'

More resources

Core symbols most depended-on inside this repo

Shape

Function 1,703
Method 1,316
Class 433
Route 123

Languages

Python100%

Modules by API surface

projects/fal/tests/unit/test_app.py205 symbols
projects/fal/tests/e2e/test_apps.py169 symbols
projects/fal/tests/unit/cli/test_deploy.py161 symbols
projects/fal_client/src/fal_client/client.py155 symbols
projects/fal/src/fal/api/api.py141 symbols
projects/fal_client/tests/unit/test_client.py109 symbols
projects/fal/src/fal/sdk.py102 symbols
projects/fal/tests/unit/test_container.py81 symbols
projects/fal/src/fal/toolkit/file/providers/fal.py70 symbols
projects/fal/tests/integration/test_stability.py64 symbols
projects/fal/tests/unit/test_grpc_error_handling.py57 symbols
projects/isolate_proto/src/isolate_proto/controller_pb2_grpc.py55 symbols

Used by 1 indexed graphs manifest dependencies, hub-wide

For agents

$ claude mcp add fal \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page