{
  "info": {
    "name": "Fal.ai — mcp.ai",
    "description": "REST API for the Fal.ai MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/fal_ai",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "fal_ai_cancel_queue_request",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/cancel/queue/request",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "cancel",
            "queue",
            "request"
          ]
        },
        "description": "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",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"model_id\": \"\",\n  \"request_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_estimate_pricing",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/estimate/pricing",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "estimate",
            "pricing"
          ]
        },
        "description": "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.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"endpoints\": {},\n  \"estimate_type\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_get_jwks",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/jwks",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "jwks"
          ]
        },
        "description": "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",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_get_models",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/models",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "models"
          ]
        },
        "description": "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",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"q\": \"\",\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"expand\": \"\",\n  \"status\": \"\",\n  \"category\": \"\",\n  \"endpoint_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_get_pricing",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/pricing",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "pricing"
          ]
        },
        "description": "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.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"endpoint_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_get_queue_request_result",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/queue/request/result",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "queue",
            "request",
            "result"
          ]
        },
        "description": "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",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"model_id\": \"\",\n  \"request_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_queue_get_status",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/queue/get/status",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "queue",
            "get",
            "status"
          ]
        },
        "description": "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",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"logs\": 0,\n  \"model_id\": \"\",\n  \"request_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_queue_get_status_stream",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/queue/get/status/stream",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "queue",
            "get",
            "status",
            "stream"
          ]
        },
        "description": "Tool to stream request status updates via SSE. Use when you need real-time updates on a queued request's processing state.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"logs\": 0,\n  \"model_id\": \"\",\n  \"request_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_run_model_sync",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/run/model/sync",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "run",
            "model",
            "sync"
          ]
        },
        "description": "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",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"input\": {},\n  \"model_id\": \"\",\n  \"runner_hint\": \"\",\n  \"timeout_seconds\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_submit_async_job",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/submit/async/job",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "submit",
            "async",
            "job"
          ]
        },
        "description": "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 ",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"input\": {},\n  \"model_id\": \"\",\n  \"no_retry\": false,\n  \"priority\": \"\",\n  \"runner_hint\": \"\",\n  \"webhook_url\": \"\",\n  \"timeout_seconds\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_subscribe_async_job",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/subscribe/async/job",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "subscribe",
            "async",
            "job"
          ]
        },
        "description": "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_",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"input\": {},\n  \"model_id\": \"\",\n  \"priority\": \"\",\n  \"runner_hint\": \"\",\n  \"include_logs\": false,\n  \"timeout_seconds\": 0,\n  \"max_wait_seconds\": 0,\n  \"poll_interval_seconds\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "fal_ai_upload_file",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/upload/file",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "upload",
            "file"
          ]
        },
        "description": "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",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"file\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}