Skip to main content
fal provides a second MCP server — the Platform API MCP — focused on operating and debugging your fal account. Where the Run MCP lets your assistant build with models (search, schemas, inference), this server lets it inspect your serverless apps: requests, logs, error analytics, deploy and revision history, runner state, queue depth, spend, and files. Connect it to Claude Code, Cursor, or any MCP-compatible client with your own API key, then ask things like “why did my last request to my-app fail?” — your assistant walks the same debugging steps you would: find the failing request, read its logs, check whether it’s widespread, correlate with recent deploys and runner state. The server is hosted at https://api.fal.ai/v1/mcp/platform and is read-only: it can observe your account but never change it.
You need a fal API key to connect. If you don’t have one yet, create one here.

Setup

Run this command in your terminal:
Note the auth scheme: this server uses Authorization: Key YOUR_FAL_KEY (the Platform API’s native scheme), not Bearer. You can connect both fal MCP servers side by side — they complement each other.

Available Tools

The server exposes 16 tools: twelve first-class serverless debugging tools, plus a four-tool discovery gateway that opens up the rest of the Platform API (compute, workflows, keys, account, organization, storage) without bloating your assistant’s context.

Serverless debugging

Discovery


Examples

Debug a failing endpoint

“My requests to my-app started failing about an hour ago — figure out why”
The assistant will:
  1. Use fetch_requests to find the failing requests and their request_ids
  2. Use fetch_request_logs with traceback: true to read the stack traces
  3. Use get_analytics to check whether the failures are widespread or isolated
  4. Use fetch_events to check whether a deploy or config change lines up with when the failures started
  5. Use get_current_state to see if runners are healthy right now

Judge the blast radius

“Is my-app having an incident or was that one bad request?”
The assistant calls get_analytics with the error-count metrics over the incident window and compares error rates against request volume.

Did a deploy break it?

“Errors on my-app jumped Tuesday afternoon — did that start with a deploy?”
The assistant uses list_revisions to see when each revision went out (and who deployed it), then lines those boundaries up against the error timeline from get_analytics.

Why is my queue growing?

“Requests to my-app are taking forever — are we capacity-bound?”
The assistant compares get_queue_history against get_runner_history over the same window: queue depth climbing while runner counts stay flat means undercapacity; queue climbing with traffic (from get_analytics) means a spike.

Watch spend

“How much did my serverless apps cost this week, and was any of it surge pricing?”
The assistant calls get_usage with a weekly window (admin-scoped key required).

Reach beyond serverless

“List my compute instances”
The assistant uses search_operations("compute instances")invoke_operation — no serverless-specific tool needed.

How It Works

The server runs inside the fal Platform API and is fully stateless:
  1. Your assistant sends a request to https://api.fal.ai/v1/mcp/platform with your API key
  2. Tool calls execute against the Platform API with that key — normal permissions and ownership scoping apply, so you can only ever see your own account
  3. Results are returned to your assistant
Your API key is sent per-request and never stored. Everything is read-only in the current version: write operations (like flushing a queue) are listed in the catalog but refuse to execute. A few things worth knowing:
  • Data freshness — request, analytics, and usage data are warehouse-backed and can lag real time by a few minutes. Responses carry an as_of marker, and the server instructs your assistant not to mistake ingestion lag for “no traffic” during a live incident.
  • Output limits — large responses are truncated with guidance to narrow the query, so a noisy log search won’t flood your assistant’s context.
  • Key scopes — most tools work with any valid key; get_usage requires an admin-scoped key.

FAQ

The Run MCP at mcp.fal.ai/mcp is for building with models: search the catalog, run inference, upload files. The Platform API MCP is for operating your account: debugging serverless apps, checking spend, inspecting infrastructure. Connect both — they don’t overlap.