{
  "data": {
    "category": {
      "area": "content",
      "capabilities": [
        "image.generate",
        "image.edit",
        "image.upscale",
        "image.vector"
      ],
      "description": "Text-to-image and image editing models behind an API, from the labs that train them and the model platforms that host many of them. Compared on price per image, resolution, edit and reference-image support, text rendering, licence of the output and content rules.",
      "indexed": [
        {
          "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/agentbrush-mcp-server.json",
          "kind": "mcp",
          "name": "agentbrush.dev MCP server",
          "slug": "agentbrush-mcp-server",
          "url": "https://www.anchorterminal.com/tools/agentbrush-mcp-server"
        },
        {
          "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/fluxdots-mcp.json",
          "kind": "mcp",
          "name": "fluxdots.com MCP server",
          "slug": "fluxdots-mcp",
          "url": "https://www.anchorterminal.com/tools/fluxdots-mcp"
        },
        {
          "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/gency-mcp.json",
          "kind": "mcp",
          "name": "gency-mcp",
          "slug": "gency-mcp",
          "url": "https://www.anchorterminal.com/tools/gency-mcp"
        },
        {
          "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/alderflux-msgmesh.json",
          "kind": "mcp",
          "name": "MsgMesh",
          "slug": "alderflux-msgmesh",
          "url": "https://www.anchorterminal.com/tools/alderflux-msgmesh"
        },
        {
          "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/tradallo-reputation.json",
          "kind": "mcp",
          "name": "reputation",
          "slug": "tradallo-reputation",
          "url": "https://www.anchorterminal.com/tools/tradallo-reputation"
        },
        {
          "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/vidofy-mcp.json",
          "kind": "mcp",
          "name": "Vidofy",
          "slug": "vidofy-mcp",
          "url": "https://www.anchorterminal.com/tools/vidofy-mcp"
        }
      ],
      "indexedCount": 6,
      "json": "https://www.anchorterminal.com/categories/image-generation.json",
      "name": "Image generation",
      "slug": "image-generation",
      "test": "",
      "title": "Image generation for AI agents",
      "toolCount": 10,
      "tools": [
        "openai-image-api",
        "fal-image",
        "black-forest-labs",
        "recraft",
        "ideogram",
        "replicate-image",
        "adobe-firefly",
        "stability-ai-image",
        "leonardo-ai",
        "google-imagen"
      ],
      "url": "https://www.anchorterminal.com/categories/image-generation"
    },
    "tools": [
      {
        "slug": "openai-image-api",
        "name": "OpenAI Image API",
        "vendor": "OpenAI",
        "vendorUrl": "https://developers.openai.com",
        "kind": "model",
        "category": "image-generation",
        "summary": "OpenAI's image generation and editing endpoints (/v1/images/generations and /v1/images/edits), also callable as a tool inside the Responses API.",
        "url": "https://www.anchorterminal.com/tools/openai-image-api",
        "markdownUrl": "https://www.anchorterminal.com/tools/openai-image-api.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/openai-image-api.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/openai-image-api.json",
        "repo": "https://github.com/openai/openai-python",
        "license": "Apache-2.0 (SDKs)",
        "transports": [
          "http"
        ],
        "remoteUrl": "https://api.openai.com/v1",
        "packages": [
          {
            "registry": "pypi",
            "name": "openai"
          },
          {
            "registry": "npm",
            "name": "openai"
          }
        ],
        "auth": "api-key",
        "authNotes": "`Authorization: Bearer` with a project key. GPT Image models may need API organisation verification before the first call.",
        "pricing": "usage",
        "pricingNotes": "Prepaid, $5 minimum. GPT Image 2 and 2.5 bill per token, $5 per million text input, $8 per million image input and $30 per million image output, with image output at $15 per million through Batch. OpenAI publishes per-image figures only for earlier models, e.g. GPT Image 2 at 1024x1024 costs $0.006 low, $0.053 medium, $0.211 high. The GPT Image 2 cost calculator doesn't estimate GPT Image 2.5. Streaming partial images add 100 output tokens each (https://developers.openai.com/api/docs/pricing).",
        "priceSummary": "Pay per use",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "No machine payment. Access needs an account with prepaid credit.",
          "endpoints": []
        },
        "toolCount": null,
        "popularity": {
          "githubStars": 31300,
          "npmWeekly": null,
          "pypiWeekly": null,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://developers.openai.com/api/docs/guides/image-generation",
        "llmsTxt": "https://developers.openai.com/llms.txt",
        "openapi": "https://github.com/openai/openai-openapi",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "card-required",
          "closed-source",
          "python",
          "typescript",
          "openapi",
          "llms-txt",
          "c2pa",
          "watermark",
          "commercial-licence"
        ],
        "lastRelease": "2026-09-22",
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 72.7,
          "grade": "BB",
          "agentReady": true,
          "rank": 67,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 1,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 72,
            "maintenance": 79,
            "payments": 20,
            "reliability": 80,
            "schema": 90,
            "security": 85,
            "transparency": 92
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "high",
            "date": "2026-10-01"
          },
          "negative": -2,
          "negativeNotes": [
            "On 2025-11-26 OpenAI disclosed that its analytics vendor Mixpanel was breached, exposing names, emails, rough location and IDs of API platform users. No API keys, prompts or outputs. Mixpanel was removed and the incident documented (https://openai.com/index/mixpanel-incident/). -2 because it touched every API account, decayed because it's fixed and disclosed."
          ],
          "verdict": "Generation, mask edits and multi-reference edits on the same models, via the Image API or the Responses tool. No per-image price for GPT Image 2.5, and the cost calculator doesn't cover it.",
          "strengths": [
            "Generation, mask edits and multi-reference edits on the same models, via the Image API or the Responses tool",
            "Restricted keys can be limited to the image endpoints, with per-project spend limits",
            "No training on API data by default, 30-day abuse logs and Zero Data Retention eligibility for GPT Image models",
            "Typed parameters, an OpenAPI spec, llms.txt and a dated changelog",
            "Batch halves the image output price, including on GPT Image 2.5 Flare"
          ],
          "weaknesses": [
            "No per-image price for GPT Image 2.5, and the cost calculator doesn't cover it",
            "Tier 1 accounts get 5 images a minute on GPT Image 2.5 Flare",
            "Base64-only responses put the whole image in the payload",
            "Six image models removed or scheduled for removal between 2026-05-12 and 2026-12-01",
            "Three API image incidents in the last 90 days, the longest about 53 minutes of elevated errors"
          ],
          "agentNotes": [
            "Pin `quality` and `size`. `auto` makes cost and latency vary per call",
            "Read `usage` in the response to track image tokens, it's the only cost signal for GPT Image 2.5",
            "Don't retry `moderation_blocked` or `image_generation_user_error`. Change the prompt first",
            "Honour `Retry-After` on 429 and add jitter, image limits are per minute and low at tier 1",
            "Move off gpt-image-1 before 2026-10-23 and off 1-mini, 1.5 and chatgpt-image-latest before 2026-12-01"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 3.5,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "high",
              "grade": "BB",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 72.7
            }
          ],
          "editorialScores": {
            "ergonomics": 72,
            "maintenance": 79,
            "payments": 20,
            "reliability": 80,
            "schema": 90,
            "security": 85,
            "transparency": 83
          },
          "provenanceScore": 100
        },
        "connect": {
          "install": "pip install openai   # or: npm i openai",
          "http": "curl https://api.openai.com/v1/images/generations \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\" -H \"content-type: application/json\" \\\n  -d '{\"model\":\"gpt-image-2.5-flare\",\"prompt\":\"A beige coffee mug on a wooden table\",\"size\":\"1024x1024\",\"quality\":\"medium\"}'"
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/openai-image-api"
        },
        "sameCompany": [
          "openai-api",
          "openai-embeddings",
          "openai-moderation",
          "openai-sora",
          "openai-agents-sdk",
          "openai-codex"
        ],
        "area": "content",
        "unitPrices": [
          {
            "item": "gpt-image-2",
            "unit": "image",
            "usd": 0.053,
            "note": "medium quality, 1024x1024, output tokens only"
          },
          {
            "item": "gpt-image-2 low",
            "unit": "image",
            "usd": 0.006,
            "note": "low quality, 1024x1024"
          },
          {
            "item": "gpt-image-2 high",
            "unit": "image",
            "usd": 0.211,
            "note": "high quality, 1024x1024"
          },
          {
            "item": "gpt-image-1.5",
            "unit": "image",
            "usd": 0.034,
            "note": "medium quality, 1024x1024. Removal on 2026-12-01"
          },
          {
            "item": "gpt-image-1-mini",
            "unit": "image",
            "usd": 0.011,
            "note": "medium quality, 1024x1024. Removal on 2026-12-01"
          }
        ],
        "provenance": {
          "legalEntity": "OpenAI OpCo, LLC",
          "domain": "openai.com",
          "domainRegistered": "2007-01-19",
          "domainNote": "openai.com was registered in 2007, before OpenAI existed.",
          "endpointOnVendorDomain": true,
          "terms": "https://openai.com/policies/services-agreement/",
          "privacy": "https://openai.com/policies/privacy-policy/",
          "statusPage": "https://status.openai.com",
          "changelog": "https://developers.openai.com/api/docs/changelog",
          "securityTxt": "valid",
          "checked": "2026-09-30",
          "score": 100
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/openai-image-api.json",
        "live": {
          "slug": "openai-image-api",
          "probe": {
            "target": "https://api.openai.com/v1",
            "method": "get",
            "lastAt": "2026-10-05T02:29:59.869300177Z",
            "lastOk": true,
            "lastStatus": 404,
            "lastMs": 138,
            "authRequired": false,
            "uptime24h": 100,
            "uptime30d": 100,
            "p50ms24h": 133,
            "p95ms24h": 154,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 248
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "vendorStatus": {
            "page": "https://status.openai.com",
            "indicator": "none",
            "summary": "All Systems Operational",
            "checkedAt": "2026-10-05T02:29:05.28755453Z"
          },
          "versions": [
            {
              "registry": "github",
              "name": "openai/openai-python",
              "version": "v3.24.0",
              "released": "2026-10-02",
              "seenAt": "2026-10-04T16:35:35.318975574Z"
            },
            {
              "registry": "npm",
              "name": "openai",
              "version": "7.27.0",
              "seenAt": "2026-10-04T16:35:35.251915172Z"
            },
            {
              "registry": "pypi",
              "name": "openai",
              "version": "3.24.0",
              "released": "2026-10-02",
              "seenAt": "2026-10-04T16:35:35.142700958Z"
            }
          ],
          "githubStars": 31742,
          "npmWeekly": 50351921,
          "pypiWeekly": 72949998,
          "securityTxt": {
            "url": "https://openai.com/.well-known/security.txt",
            "state": "valid",
            "checkedAt": "2026-10-04T15:15:58.86463118Z"
          },
          "llmsTxt": {
            "url": "https://developers.openai.com/llms.txt",
            "ok": true,
            "status": 200,
            "checkedAt": "2026-10-04T15:18:08.149803604Z"
          },
          "domain": {
            "domain": "openai.com",
            "registered": "2007-01-19",
            "source": "https://rdap.verisign.com/com/v1/domain/openai.com",
            "checkedAt": "2026-10-04T13:05:02.32020521Z"
          },
          "updatedAt": "2026-10-05T02:29:59.869300177Z"
        }
      },
      {
        "slug": "fal-image",
        "name": "fal image models",
        "vendor": "fal (Features \u0026 Labels, Inc.)",
        "vendorUrl": "https://fal.ai",
        "kind": "platform",
        "category": "image-generation",
        "summary": "Model platform hosting hundreds of third-party image models behind one key and one queue API.",
        "url": "https://www.anchorterminal.com/tools/fal-image",
        "markdownUrl": "https://www.anchorterminal.com/tools/fal-image.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/fal-image.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/fal-image.json",
        "repo": "https://github.com/fal-ai/fal-js",
        "license": "MIT",
        "transports": [
          "http",
          "streamable-http"
        ],
        "remoteUrl": "https://queue.fal.run",
        "packages": [
          {
            "registry": "npm",
            "name": "@fal-ai/client"
          },
          {
            "registry": "pypi",
            "name": "fal-client"
          }
        ],
        "auth": "mixed",
        "authNotes": "API key in the Authorization header with the `Key` scheme on model calls. The hosted MCP at https://mcp.fal.ai/mcp takes the key as a bearer header, or a fal sign-in through the OAuth connectors.",
        "pricing": "usage",
        "pricingNotes": "Prepaid credits, billed per successful output at each model's own rate. No charge for server errors, queue time or cold starts. Purchased credits expire after 365 days. FLUX.1 schnell $0.003 and FLUX.1 dev $0.025 per megapixel, FLUX.2 pro $0.03 for the first megapixel, Nano Banana 2 $0.08 and Nano Banana Pro $0.15 an image, Seedream 4.5 and Recraft V3 $0.04, Ideogram 3.0 $0.03 to $0.09 by quality (https://fal.ai/pricing).",
        "priceSummary": "Pay per use",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "No x402 in the docs index or pricing docs (checked 2026-09-30).",
          "endpoints": []
        },
        "toolCount": null,
        "popularity": {
          "githubStars": 186,
          "npmWeekly": 1675192,
          "pypiWeekly": 824976,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://fal.ai/docs",
        "llmsTxt": "https://fal.ai/docs/llms.txt",
        "openapi": "https://api.fal.ai/v1/openapi.json",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.upscale",
          "image.vector",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "model-platform",
          "mcp",
          "llms-txt",
          "openapi",
          "python",
          "typescript",
          "async-jobs",
          "webhooks",
          "open-weights"
        ],
        "lastRelease": "2026-09-21",
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 65.5,
          "grade": "B",
          "agentReady": false,
          "rank": 172,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 2,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 72,
            "maintenance": 79,
            "payments": 20,
            "reliability": 73,
            "schema": 85,
            "security": 65,
            "transparency": 52
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "medium",
            "date": "2026-10-01"
          },
          "negative": 0,
          "verdict": "Hundreds of image models, including FLUX, Nano Banana, GPT Image, Seedream, Recraft and Ideogram, on one key. Billing units vary by model, per image, per megapixel or per token.",
          "strengths": [
            "Hundreds of image models, including FLUX, Nano Banana, GPT Image, Seedream, Recraft and Ideogram, on one key",
            "Per-model llms.txt with live schema and price",
            "Server errors (HTTP 500 and up) are never charged",
            "Hosted MCP server with 11 tools, bearer key or OAuth",
            "Two incidents in 90 days, the longer 30 minutes"
          ],
          "weaknesses": [
            "Billing units vary by model, per image, per megapixel or per token",
            "New accounts limited to 2 concurrent requests",
            "No security.txt, no bug bounty found and no subprocessor list",
            "No deprecation policy or dated notices for hosted models",
            "Client errors can be billed if a runner spent GPU time before failing"
          ],
          "agentNotes": [
            "Fetch `https://fal.ai/models/\u003cendpoint-id\u003e/llms.txt` before calling a model to get its schema and price",
            "POST to `https://queue.fal.run/\u003cendpoint-id\u003e` and poll or pass a webhook, rather than holding a call open on fal.run",
            "Use an API-scoped key for agents. ADMIN keys can deploy and manage apps",
            "Download outputs you need to keep. CDN retention defaults to at least 7 days, set `X-Fal-Object-Lifecycle-Preference` to change it",
            "Validate inputs before submitting, a malformed request can still be billed"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 4,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "medium",
              "grade": "B",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 65.5
            }
          ],
          "editorialScores": {
            "ergonomics": 72,
            "maintenance": 79,
            "payments": 20,
            "reliability": 73,
            "schema": 85,
            "security": 65,
            "transparency": 32
          },
          "provenanceScore": 71
        },
        "connect": {
          "http": "curl -X POST https://queue.fal.run/fal-ai/flux/dev \\\n  -H \"Authorization: Key $FAL_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"prompt\":\"a red fox in fresh snow\"}'",
          "claudeCode": "claude mcp add --transport http fal-ai https://mcp.fal.ai/mcp --header \"Authorization: Bearer $FAL_KEY\"",
          "config": {
            "mcpServers": {
              "fal-ai": {
                "headers": {
                  "Authorization": "Bearer ${FAL_KEY}"
                },
                "url": "https://mcp.fal.ai/mcp"
              }
            }
          }
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/fal-image"
        },
        "sameCompany": [
          "fal-music"
        ],
        "area": "content",
        "unitPrices": [
          {
            "item": "FLUX.1 dev",
            "unit": "image",
            "usd": 0.025,
            "note": "1024x1024 (1 MP), billed per megapixel"
          },
          {
            "item": "FLUX.1 schnell",
            "unit": "image",
            "usd": 0.003,
            "note": "1024x1024 (1 MP), billed per megapixel"
          },
          {
            "item": "FLUX.2 pro",
            "unit": "image",
            "usd": 0.03,
            "note": "1024x1024. $0.015 per extra megapixel"
          },
          {
            "item": "Nano Banana 2",
            "unit": "image",
            "usd": 0.08,
            "note": "1K output. 1.5x at 2K, 2x at 4K"
          },
          {
            "item": "Nano Banana Pro",
            "unit": "image",
            "usd": 0.15,
            "note": "standard resolution. 2x at 4K"
          },
          {
            "item": "Seedream 4.5",
            "unit": "image",
            "usd": 0.04
          },
          {
            "item": "Recraft V3",
            "unit": "image",
            "usd": 0.04,
            "note": "$0.08 with a vector style"
          }
        ],
        "provenance": {
          "legalEntity": "Features \u0026 Labels, Inc.",
          "domain": "fal.ai",
          "domainRegistered": "2020-11-13",
          "endpointOnVendorDomain": false,
          "terms": "https://fal.ai/legal/terms-of-service",
          "privacy": "https://fal.ai/legal/privacy-policy",
          "statusPage": "https://status.fal.ai",
          "changelog": "https://fal.ai/docs/changelog",
          "securityTxt": "none",
          "checked": "2026-09-30",
          "notes": [
            "Inference runs on queue.fal.run and fal.run, a separate domain from fal.ai",
            "remoteUrl is the queue base. A bare GET there returns 404. Model calls go to /\u003cendpoint-id\u003e"
          ],
          "score": 71
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/fal-image.json",
        "live": {
          "slug": "fal-image",
          "probe": {
            "target": "https://queue.fal.run",
            "method": "get",
            "lastAt": "2026-10-05T02:29:55.695926815Z",
            "lastOk": true,
            "lastStatus": 404,
            "lastMs": 310,
            "authRequired": false,
            "uptime24h": 100,
            "uptime30d": 100,
            "p50ms24h": 317,
            "p95ms24h": 358,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 248
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "vendorStatus": {
            "page": "https://status.fal.ai",
            "indicator": "unknown",
            "summary": "no machine-readable status found",
            "checkedAt": "2026-10-04T21:40:01.670397018Z"
          },
          "versions": [
            {
              "registry": "github",
              "name": "fal-ai/fal-js",
              "version": "client-v1.10.1",
              "released": "2026-05-04",
              "seenAt": "2026-10-04T16:26:53.913449903Z"
            },
            {
              "registry": "npm",
              "name": "@fal-ai/client",
              "version": "1.10.1",
              "seenAt": "2026-10-04T16:26:51.684272554Z"
            },
            {
              "registry": "pypi",
              "name": "fal-client",
              "version": "1.0.3",
              "released": "2026-09-21",
              "seenAt": "2026-10-04T16:26:53.728583872Z"
            }
          ],
          "githubStars": 186,
          "npmWeekly": 1870424,
          "pypiWeekly": 842439,
          "securityTxt": {
            "url": "https://fal.ai/.well-known/security.txt",
            "state": "none",
            "checkedAt": "2026-10-04T15:15:41.770203359Z"
          },
          "llmsTxt": {
            "url": "https://fal.ai/docs/llms.txt",
            "ok": true,
            "status": 200,
            "checkedAt": "2026-10-04T15:17:45.709950819Z"
          },
          "domain": {
            "domain": "fal.ai",
            "registered": "2020-11-13",
            "source": "https://rdap.identitydigital.services/rdap/domain/fal.ai",
            "checkedAt": "2026-10-04T13:04:33.919358701Z"
          },
          "pages": [
            {
              "url": "https://fal.ai/docs/changelog",
              "kind": "changelog",
              "status": 200,
              "checkedAt": "2026-10-04T15:44:36.753398774Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "e58bdc64ffd0"
            },
            {
              "url": "https://fal.ai/pricing",
              "kind": "pricing",
              "status": 200,
              "checkedAt": "2026-10-04T15:44:43.486869123Z",
              "changedAt": "2026-10-02T15:21:04.885172117Z",
              "fingerprint": "4fcc02ba8d4e"
            },
            {
              "url": "https://fal.ai/legal/privacy-policy",
              "kind": "privacy",
              "status": 200,
              "checkedAt": "2026-10-04T15:44:39.283091449Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "c17d2073b3d8"
            },
            {
              "url": "https://fal.ai/legal/terms-of-service",
              "kind": "terms",
              "status": 200,
              "checkedAt": "2026-10-04T15:44:41.455871894Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "6c3ef514a0aa"
            }
          ],
          "updatedAt": "2026-10-05T02:29:55.695926815Z"
        }
      },
      {
        "slug": "black-forest-labs",
        "name": "Black Forest Labs FLUX API",
        "vendor": "Black Forest Labs",
        "vendorUrl": "https://bfl.ai",
        "kind": "model",
        "category": "image-generation",
        "summary": "Black Forest Labs' hosted API for the FLUX image models.",
        "url": "https://www.anchorterminal.com/tools/black-forest-labs",
        "markdownUrl": "https://www.anchorterminal.com/tools/black-forest-labs.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/black-forest-labs.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/black-forest-labs.json",
        "transports": [
          "http",
          "streamable-http"
        ],
        "remoteUrl": "https://api.bfl.ai/v1",
        "packages": [],
        "auth": "mixed",
        "authNotes": "REST API takes the key in an `x-key` header. The hosted MCP server at mcp.bfl.ai uses OAuth with a BFL account and bills the organisation you pick at sign-in.",
        "pricing": "usage",
        "pricingNotes": "Prepaid credits, 1 credit is $0.01, same price in API and Playground. FLUX.2 is priced by output megapixel. [klein] 4B from $0.014, [klein] 9B from $0.015, [pro] from $0.03 (edits from $0.045), [flex] from $0.05, [max] from $0.07. FLUX.1 Kontext [pro] $0.04, Kontext [max] $0.08, FLUX1.1 [pro] $0.04, Ultra $0.06. Batches cost the per-image price times the count (https://bfl.ai/pricing).",
        "priceSummary": "$0.01 / credit",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "No machine payment. Access needs prepaid credits on a BFL account.",
          "endpoints": []
        },
        "toolCount": 7,
        "popularity": {
          "githubStars": null,
          "npmWeekly": null,
          "pypiWeekly": null,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://docs.bfl.ai",
        "llmsTxt": "https://docs.bfl.ai/llms.txt",
        "openapi": "https://api.bfl.ai/openapi.json",
        "registryName": "io.github.black-forest-labs/flux-mcp",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "mcp",
          "llms-txt",
          "openapi",
          "async-jobs",
          "webhooks",
          "open-weights",
          "c2pa",
          "commercial-licence"
        ],
        "lastRelease": "2026-09-10",
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 64.2,
          "grade": "B",
          "agentReady": false,
          "rank": 186,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 3,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 67,
            "maintenance": 73,
            "payments": 20,
            "reliability": 65,
            "schema": 88,
            "security": 65,
            "transparency": 66
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "medium",
            "date": "2026-10-01"
          },
          "negative": 0,
          "verdict": "Per-image and per-megapixel prices published per model, from $0.014. Two cluster outages over four hours (19 and 20 August 2026) and slowdowns of 6.5 and 20 hours since.",
          "strengths": [
            "Per-image and per-megapixel prices published per model, from $0.014",
            "Up to 10 reference images and 4MP output on FLUX.2",
            "EU and US regional endpoints with a global endpoint that fails over",
            "Official hosted MCP server with OAuth, listed in the MCP registry",
            "OpenAPI specs, llms.txt and an errors page covering every task status"
          ],
          "weaknesses": [
            "Two cluster outages over four hours (19 and 20 August 2026) and slowdowns of 6.5 and 20 hours since",
            "Result URLs expire after 10 minutes",
            "Prompts and uploads may be used for training unless you email an opt-out",
            "Developer terms allow changing or removing parts of the service without notice",
            "No official SDK package and no free credits"
          ],
          "agentNotes": [
            "Poll the `polling_url` from the submit response, never a hand-built URL",
            "Download `result.sample` straight away. It's gone after 10 minutes",
            "Stay under 24 concurrent jobs, 6 on flux-kontext-max, and back off exponentially on 429",
            "Treat 402 as out of credit, not as a retryable error",
            "Use api.eu.bfl.ai or api.us.bfl.ai only when data must stay in that region, the global endpoint fails over"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 3.5,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "medium",
              "grade": "B",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 64.2
            }
          ],
          "editorialScores": {
            "ergonomics": 67,
            "maintenance": 73,
            "payments": 20,
            "reliability": 65,
            "schema": 88,
            "security": 65,
            "transparency": 40
          },
          "provenanceScore": 92
        },
        "connect": {
          "http": "curl -X POST https://api.bfl.ai/v1/flux-2-pro \\\n  -H \"x-key: $BFL_API_KEY\" -H \"content-type: application/json\" \\\n  -d '{\"prompt\":\"A serene landscape with mountains\",\"width\":1024,\"height\":1024}'\n# then GET the returned polling_url with the same x-key until status is Ready",
          "claudeCode": "claude mcp add --transport http FLUX https://mcp.bfl.ai"
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/black-forest-labs"
        },
        "area": "content",
        "unitPrices": [
          {
            "item": "FLUX.2 [klein] 4B",
            "unit": "image",
            "usd": 0.014,
            "note": "from, first megapixel"
          },
          {
            "item": "FLUX.2 [pro]",
            "unit": "image",
            "usd": 0.03,
            "note": "from, text-to-image, first megapixel"
          },
          {
            "item": "FLUX.2 [max]",
            "unit": "image",
            "usd": 0.07,
            "note": "from, first megapixel"
          },
          {
            "item": "FLUX.1 Kontext [pro]",
            "unit": "image",
            "usd": 0.04
          },
          {
            "item": "FLUX1.1 [pro]",
            "unit": "image",
            "usd": 0.04
          },
          {
            "item": "Credits",
            "unit": "credit",
            "usd": 0.01
          }
        ],
        "provenance": {
          "legalEntity": "Black Forest Labs Inc.",
          "domain": "bfl.ai",
          "domainRegistered": "2022-06-29",
          "endpointOnVendorDomain": true,
          "terms": "https://bfl.ai/legal/developer-terms-of-service",
          "privacy": "https://bfl.ai/legal/privacy-policy",
          "statusPage": "https://status.bfl.ai",
          "changelog": "https://docs.bfl.ai/release-notes",
          "securityTxt": "valid",
          "checked": "2026-09-30",
          "notes": [
            "BFL GmbH (Freiburg, Germany) is the data controller for users in the EEA, Switzerland and the UK.",
            "The docs also answer on docs.bfl.ml and the security.txt lists blackforestlabs.ai as a second canonical domain."
          ],
          "score": 92
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/black-forest-labs.json",
        "live": {
          "slug": "black-forest-labs",
          "probe": {
            "target": "https://api.bfl.ai/v1",
            "method": "get",
            "lastAt": "2026-10-05T02:29:52.742106134Z",
            "lastOk": true,
            "lastStatus": 404,
            "lastMs": 107,
            "authRequired": false,
            "uptime24h": 100,
            "uptime30d": 100,
            "p50ms24h": 374,
            "p95ms24h": 477,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 248
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "vendorStatus": {
            "page": "https://status.bfl.ai",
            "indicator": "none",
            "summary": "All Systems Operational",
            "checkedAt": "2026-10-05T02:28:51.253175075Z"
          },
          "versions": [
            {
              "registry": "mcp-registry",
              "name": "io.github.black-forest-labs/flux-mcp",
              "version": "1.0.0",
              "seenAt": "2026-10-04T23:42:40.113054682Z"
            }
          ],
          "securityTxt": {
            "url": "https://bfl.ai/.well-known/security.txt",
            "state": "valid",
            "expires": "2027-02-01T00:00:00Z",
            "checkedAt": "2026-10-04T15:15:43.323444715Z"
          },
          "llmsTxt": {
            "url": "https://docs.bfl.ai/llms.txt",
            "ok": true,
            "status": 200,
            "checkedAt": "2026-10-04T15:17:20.350380922Z"
          },
          "domain": {
            "domain": "bfl.ai",
            "registered": "2022-06-29",
            "source": "https://rdap.identitydigital.services/rdap/domain/bfl.ai",
            "checkedAt": "2026-10-04T13:10:31.899583527Z"
          },
          "pages": [
            {
              "url": "https://docs.bfl.ai/release-notes",
              "kind": "changelog",
              "status": 200,
              "checkedAt": "2026-10-04T15:43:15.571214351Z",
              "changedAt": "2026-10-02T15:19:38.108762461Z",
              "fingerprint": "dcaf496d519d"
            },
            {
              "url": "https://bfl.ai/pricing",
              "kind": "pricing",
              "status": 200,
              "checkedAt": "2026-10-04T15:41:29.91441304Z",
              "changedAt": "2026-10-02T15:17:49.889384729Z",
              "fingerprint": "e6f22048a8fa"
            },
            {
              "url": "https://bfl.ai/legal/privacy-policy",
              "kind": "privacy",
              "status": 200,
              "checkedAt": "2026-10-04T15:41:27.862197055Z",
              "changedAt": "2026-10-02T15:17:47.888380414Z",
              "fingerprint": "d6320ad3accb"
            },
            {
              "url": "https://bfl.ai/legal/developer-terms-of-service",
              "kind": "terms",
              "status": 304,
              "checkedAt": "2026-10-04T15:41:25.699157417Z",
              "changedAt": "2026-10-02T15:17:45.836950048Z",
              "fingerprint": "ddc9a171e173"
            }
          ],
          "updatedAt": "2026-10-05T02:29:52.742106134Z"
        }
      },
      {
        "slug": "recraft",
        "name": "Recraft API",
        "vendor": "Recraft",
        "vendorUrl": "https://www.recraft.ai",
        "kind": "model",
        "category": "image-generation",
        "summary": "Recraft's own image models (V2, V3, V4, V4.1, V4.1 Flash and V4 Styles) behind an OpenAI-compatible REST API.",
        "url": "https://www.anchorterminal.com/tools/recraft",
        "markdownUrl": "https://www.anchorterminal.com/tools/recraft.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/recraft.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/recraft.json",
        "transports": [
          "http",
          "streamable-http"
        ],
        "remoteUrl": "https://external.api.recraft.ai/v1",
        "packages": [],
        "auth": "mixed",
        "authNotes": "Bearer API token for the REST API, created in the Recraft profile. The hosted MCP server at https://mcp.recraft.ai/mcp uses OAuth 2.0 and bills the Studio subscription credits, not API units.",
        "pricing": "usage",
        "pricingNotes": "Prepaid API units at $1 per 1,000 units, non-refundable and non-expiring. V4.1 Flash $0.007 an image, V4.1 and V4.1 Utility $0.035, V4.1 Pro $0.21, V4 $0.04, V4 Pro $0.25, V3 $0.04, V2 $0.022. Vector output costs more (V4.1 Vector $0.08, V4.1 Pro Vector $0.30). Vectorise and background removal $0.01 a request, crisp upscale $0.004, creative upscale $0.25 (https://www.recraft.ai/docs/api-reference/pricing).",
        "priceSummary": "$0.004 / call",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "No x402 in the API docs or pricing page (checked 2026-09-30).",
          "endpoints": []
        },
        "toolCount": 9,
        "popularity": {
          "githubStars": null,
          "npmWeekly": null,
          "pypiWeekly": null,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://www.recraft.ai/docs/api-reference/getting-started",
        "llmsTxt": "https://www.recraft.ai/docs/llms.txt",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.upscale",
          "image.vector",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "closed-source",
          "mcp",
          "llms-txt",
          "commercial-licence"
        ],
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 53,
          "grade": "D",
          "agentReady": false,
          "rank": 338,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 4,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 62,
            "maintenance": 48,
            "payments": 30,
            "reliability": 70,
            "schema": 64,
            "security": 30,
            "transparency": 61
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "medium",
            "date": "2026-10-01"
          },
          "negative": 0,
          "verdict": "Native SVG vector generation, not traced raster. No changelog and no error reference.",
          "strengths": [
            "Native SVG vector generation, not traced raster",
            "Per-image prices published for every model and operation, from $0.007",
            "OpenAI-compatible endpoints, so OpenAI SDKs work with a new base URL",
            "`response_format` choice of URL, base64 or multipart",
            "No incidents on the status page in August or September 2026"
          ],
          "weaknesses": [
            "No changelog and no error reference",
            "security.txt expired on 2025-11-11, no bug bounty or certification found",
            "Result URLs are public to anyone holding the link for about 24 hours",
            "No free API allowance, and the hosted MCP bills Studio credits, not API units",
            "No 429 or backoff guidance"
          ],
          "agentNotes": [
            "Use `/v1/images/generations/vector` when the task must return SVG, so the server rejects raster models",
            "Ask for `b64_json` or `multipart` if you can't fetch the URL within a day",
            "Name `recraftv4_1_flash` for drafts at $0.007. The default `recraftv4_1` costs $0.035",
            "Stay under 100 images a minute and 5 requests a second per user",
            "Point the OpenAI SDK at `https://external.api.recraft.ai/v1`, but expect some parameters to be ignored"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 3.5,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "medium",
              "grade": "D",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 53
            }
          ],
          "editorialScores": {
            "ergonomics": 62,
            "maintenance": 48,
            "payments": 30,
            "reliability": 70,
            "schema": 64,
            "security": 30,
            "transparency": 45
          },
          "provenanceScore": 77
        },
        "connect": {
          "http": "curl -X POST https://external.api.recraft.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $RECRAFT_API_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"prompt\":\"race car on a track\"}'",
          "claudeCode": "claude mcp add --transport http recraft https://mcp.recraft.ai/mcp",
          "config": {
            "mcpServers": {
              "recraft": {
                "url": "https://mcp.recraft.ai/mcp"
              }
            }
          }
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/recraft"
        },
        "area": "content",
        "unitPrices": [
          {
            "item": "Recraft V4.1",
            "unit": "image",
            "usd": 0.035,
            "note": "default model, 1024x1024 raster"
          },
          {
            "item": "Recraft V4.1 Flash",
            "unit": "image",
            "usd": 0.007,
            "note": "raster only, no styles"
          },
          {
            "item": "Recraft V4.1 Pro",
            "unit": "image",
            "usd": 0.21,
            "note": "4 MP raster"
          },
          {
            "item": "Recraft V4.1 Vector",
            "unit": "image",
            "usd": 0.08,
            "note": "SVG output"
          },
          {
            "item": "Recraft V3",
            "unit": "image",
            "usd": 0.04
          },
          {
            "item": "Crisp upscale",
            "unit": "call",
            "usd": 0.004
          }
        ],
        "provenance": {
          "legalEntity": "Recraft Inc.",
          "domain": "recraft.ai",
          "domainRegistered": "2022-06-27",
          "endpointOnVendorDomain": true,
          "terms": "https://www.recraft.ai/legal/terms",
          "privacy": "https://www.recraft.ai/legal/privacy",
          "statusPage": "https://status.recraft.ai",
          "changelog": "",
          "securityTxt": "expired",
          "checked": "2026-09-30",
          "notes": [
            "security.txt at recraft.ai lists Expires 2025-11-11",
            "status.recraft.ai redirects to recraft.instatus.com",
            "The Swagger UI at https://external.api.recraft.ai/doc/ didn't expose a spec URL we could fetch"
          ],
          "score": 77
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/recraft.json",
        "live": {
          "slug": "recraft",
          "probe": {
            "target": "https://external.api.recraft.ai/v1",
            "method": "get",
            "lastAt": "2026-10-05T02:30:01.203296135Z",
            "lastOk": true,
            "lastStatus": 404,
            "lastMs": 252,
            "authRequired": false,
            "uptime24h": 100,
            "uptime30d": 100,
            "p50ms24h": 262,
            "p95ms24h": 328,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 248
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "vendorStatus": {
            "page": "https://status.recraft.ai",
            "indicator": "unknown",
            "summary": "no machine-readable status found",
            "checkedAt": "2026-10-04T21:40:25.838092749Z"
          },
          "securityTxt": {
            "url": "https://recraft.ai/.well-known/security.txt",
            "state": "expired",
            "expires": "2025-11-11T00:00:00.000Z",
            "checkedAt": "2026-10-04T15:15:38.787551716Z"
          },
          "llmsTxt": {
            "url": "https://www.recraft.ai/docs/llms.txt",
            "ok": true,
            "status": 200,
            "checkedAt": "2026-10-04T15:18:09.367946989Z"
          },
          "domain": {
            "domain": "recraft.ai",
            "registered": "2022-06-27",
            "source": "https://rdap.identitydigital.services/rdap/domain/recraft.ai",
            "checkedAt": "2026-10-04T13:05:06.493219184Z"
          },
          "pages": [
            {
              "url": "https://www.recraft.ai/docs/api-reference/pricing",
              "kind": "pricing",
              "status": 200,
              "checkedAt": "2026-10-04T15:51:50.621345511Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "2dbd643c6b9a"
            },
            {
              "url": "https://www.recraft.ai/legal/privacy",
              "kind": "privacy",
              "status": 304,
              "checkedAt": "2026-10-04T15:51:52.782834338Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "71fcfb72fa3b"
            },
            {
              "url": "https://www.recraft.ai/legal/terms",
              "kind": "terms",
              "status": 304,
              "checkedAt": "2026-10-04T15:51:54.76952122Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "11bab9ec8acb"
            }
          ],
          "updatedAt": "2026-10-05T02:30:01.203296135Z"
        }
      },
      {
        "slug": "ideogram",
        "name": "Ideogram API",
        "vendor": "Ideogram",
        "vendorUrl": "https://ideogram.ai",
        "kind": "model",
        "category": "image-generation",
        "summary": "Ideogram's API for generating images, including images containing text.",
        "url": "https://www.anchorterminal.com/tools/ideogram",
        "markdownUrl": "https://www.anchorterminal.com/tools/ideogram.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/ideogram.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/ideogram.json",
        "transports": [
          "http",
          "streamable-http"
        ],
        "remoteUrl": "https://api.ideogram.ai/v1",
        "packages": [],
        "auth": "mixed",
        "authNotes": "REST API takes the key in an `Api-Key` header. The key is shown once. Requests return 402 until the account has a payment method and credit. The hosted MCP server at mcp.ideogram.ai uses OAuth with an Ideogram account.",
        "pricing": "usage",
        "pricingNotes": "Prepaid API credit, separate from Ideogram app subscriptions. One-time top-ups of $10 to $300, balance capped at $300, with optional auto-recharge. Ideogram 4.0 costs $0.03 Turbo, $0.06 Default and $0.10 Quality per image. P-Image-Ideogram runs about $0.003 to $0.015 per 1K image by quality, $0.033 at Very High. Each returned image is billed separately (https://ideogram.ai/features/api-pricing, https://developer.ideogram.ai/ideogram-api/api-setup).",
        "priceSummary": "Pay per use",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "No machine payment. Access needs prepaid credit and a card on file.",
          "endpoints": []
        },
        "toolCount": null,
        "popularity": {
          "githubStars": null,
          "npmWeekly": null,
          "pypiWeekly": null,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://developer.ideogram.ai",
        "llmsTxt": "https://developer.ideogram.ai/llms.txt",
        "openapi": "https://developer.ideogram.ai/openapi.json",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.upscale",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "card-required",
          "mcp",
          "llms-txt",
          "openapi",
          "async-jobs",
          "webhooks",
          "open-weights",
          "closed-source"
        ],
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 50.3,
          "grade": "D",
          "agentReady": false,
          "rank": 360,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 5,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 63,
            "maintenance": 18,
            "payments": 20,
            "reliability": 65,
            "schema": 76,
            "security": 35,
            "transparency": 52
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "medium",
            "date": "2026-10-01"
          },
          "negative": 0,
          "verdict": "Text rendering and layout control are the model's focus. Six API incidents in 90 days, three on v3 endpoints between 23 and 29 September.",
          "strengths": [
            "Text rendering and layout control are the model's focus",
            "Flat per-image prices for Ideogram 4.0, $0.03 to $0.10",
            "Async endpoints with signed webhooks",
            "OpenAPI spec, llms.txt and Markdown versions of every docs page",
            "No training on API inputs or outputs unless flagged under the usage policies"
          ],
          "weaknesses": [
            "Six API incidents in 90 days, three on v3 endpoints between 23 and 29 September",
            "No changelog, so model and endpoint changes aren't dated anywhere public",
            "No security.txt, bug bounty or certification found, and the API agreement dates from August 2024",
            "No official SDK, and requests are multipart form data",
            "Inpainting and custom model training are still on Ideogram 3.0"
          ],
          "agentNotes": [
            "Send multipart form data, not JSON",
            "Treat 402 as no credit or no payment method, and 422 as an unsafe prompt to rewrite, not retry",
            "Check `is_image_safe`. When it's false the `url` is empty",
            "Download images straight away, the links expire",
            "Use the `/async/` variants with `webhook_url` for batches and verify the Ed25519 signature"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 3.5,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "medium",
              "grade": "D",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 50.3
            }
          ],
          "editorialScores": {
            "ergonomics": 63,
            "maintenance": 18,
            "payments": 20,
            "reliability": 65,
            "schema": 76,
            "security": 35,
            "transparency": 32
          },
          "provenanceScore": 72
        },
        "connect": {
          "http": "curl -X POST https://api.ideogram.ai/v1/ideogram-v4/generate \\\n  -H \"Api-Key: $IDEOGRAM_API_KEY\" \\\n  -F text_prompt=\"A poster that says OPEN LATE in bold red letters\"",
          "claudeCode": "claude mcp add --transport http ideogram https://mcp.ideogram.ai/mcp"
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/ideogram"
        },
        "area": "content",
        "unitPrices": [
          {
            "item": "Ideogram 4.0 Turbo",
            "unit": "image",
            "usd": 0.03
          },
          {
            "item": "Ideogram 4.0 Default",
            "unit": "image",
            "usd": 0.06,
            "note": "default rendering speed"
          },
          {
            "item": "Ideogram 4.0 Quality",
            "unit": "image",
            "usd": 0.1
          },
          {
            "item": "P-Image-Ideogram Very High",
            "unit": "image",
            "usd": 0.033,
            "note": "1K resolution"
          }
        ],
        "provenance": {
          "legalEntity": "Ideogram AI, Inc.",
          "domain": "ideogram.ai",
          "domainRegistered": "2023-02-28",
          "endpointOnVendorDomain": true,
          "terms": "https://ideogram.ai/legal/api-tos",
          "privacy": "https://ideogram.ai/legal/privacy/",
          "statusPage": "https://status.ideogram.ai",
          "changelog": "",
          "securityTxt": "none",
          "checked": "2026-09-30",
          "notes": [
            "The Developer API Agreement names Ideogram AI, Inc. The site footer says Ideogram, Inc."
          ],
          "score": 72
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/ideogram.json",
        "live": {
          "slug": "ideogram",
          "probe": {
            "target": "https://api.ideogram.ai/v1",
            "method": "get",
            "lastAt": "2026-10-05T02:29:57.109008434Z",
            "lastOk": true,
            "lastStatus": 404,
            "lastMs": 148,
            "authRequired": false,
            "uptime24h": 100,
            "uptime30d": 99.91,
            "p50ms24h": 154,
            "p95ms24h": 223,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 247
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "vendorStatus": {
            "page": "https://status.ideogram.ai",
            "indicator": "none",
            "summary": "All Systems Operational",
            "checkedAt": "2026-10-05T02:29:01.879572035Z"
          },
          "securityTxt": {
            "url": "https://ideogram.ai/.well-known/security.txt",
            "state": "none",
            "checkedAt": "2026-10-04T15:15:56.071296794Z"
          },
          "llmsTxt": {
            "url": "https://developer.ideogram.ai/llms.txt",
            "ok": true,
            "status": 200,
            "checkedAt": "2026-10-04T15:17:54.473369971Z"
          },
          "domain": {
            "domain": "ideogram.ai",
            "registered": "2023-02-28",
            "source": "https://rdap.identitydigital.services/rdap/domain/ideogram.ai",
            "checkedAt": "2026-10-04T13:07:58.912971745Z"
          },
          "pages": [
            {
              "url": "https://ideogram.ai/features/api-pricing",
              "kind": "pricing",
              "status": 304,
              "checkedAt": "2026-10-04T15:45:04.596103919Z",
              "changedAt": "2026-10-02T15:21:26.123073336Z",
              "fingerprint": "8eda804d1edb"
            },
            {
              "url": "https://ideogram.ai/legal/privacy/",
              "kind": "privacy",
              "status": 304,
              "checkedAt": "2026-10-04T15:45:08.836623652Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "81198a993567"
            },
            {
              "url": "https://ideogram.ai/legal/api-tos",
              "kind": "terms",
              "status": 304,
              "checkedAt": "2026-10-04T15:45:06.909523433Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "b978e7fe076c"
            }
          ],
          "updatedAt": "2026-10-05T02:29:57.109008434Z"
        }
      },
      {
        "slug": "replicate-image",
        "name": "Replicate image models",
        "vendor": "Replicate (Cloudflare)",
        "vendorUrl": "https://replicate.com",
        "kind": "platform",
        "category": "image-generation",
        "summary": "Model platform running official and community image models through one predictions API.",
        "url": "https://www.anchorterminal.com/tools/replicate-image",
        "markdownUrl": "https://www.anchorterminal.com/tools/replicate-image.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/replicate-image.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/replicate-image.json",
        "repo": "https://github.com/replicate/replicate-python",
        "license": "Apache-2.0",
        "transports": [
          "http",
          "sse",
          "stdio"
        ],
        "remoteUrl": "https://api.replicate.com/v1",
        "packages": [
          {
            "registry": "npm",
            "name": "replicate"
          },
          {
            "registry": "pypi",
            "name": "replicate"
          },
          {
            "registry": "npm",
            "name": "replicate-mcp"
          }
        ],
        "auth": "api-key",
        "authNotes": "Bearer API token. The hosted MCP at https://mcp.replicate.com/sse asks for the token in a browser flow and holds it for the client.",
        "pricing": "usage",
        "pricingNotes": "Pay as you go from prepaid credit or billed monthly in arrears. Official image models charge per output image. FLUX.1 schnell $3 per 1,000, FLUX.1 dev $0.025, FLUX 1.1 pro $0.04, Imagen 4, Seedream 4.5 and Recraft V3 $0.04, Ideogram v3 Quality $0.09, Nano Banana 2 $0.067 and Nano Banana Pro $0.15 at base resolution. Community models are billed per second of GPU time (https://replicate.com/pricing).",
        "priceSummary": "Pay per use",
        "where": "both",
        "x402": {
          "level": "no",
          "evidence": "No x402 in the docs index or pricing page (checked 2026-09-30).",
          "endpoints": []
        },
        "toolCount": null,
        "popularity": {
          "githubStars": 917,
          "npmWeekly": 634116,
          "pypiWeekly": 386704,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://replicate.com/docs",
        "llmsTxt": "https://replicate.com/docs/llms.txt",
        "openapi": "https://api.replicate.com/openapi.json",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.upscale",
          "image.vector",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "model-platform",
          "mcp",
          "llms-txt",
          "openapi",
          "python",
          "typescript",
          "async-jobs",
          "webhooks",
          "open-weights"
        ],
        "lastRelease": "2025-11-17",
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 50.3,
          "grade": "D",
          "agentReady": false,
          "rank": 361,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 6,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 66,
            "maintenance": 30,
            "payments": 20,
            "reliability": 48,
            "schema": 83,
            "security": 35,
            "transparency": 60
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "medium",
            "date": "2026-10-01"
          },
          "negative": 0,
          "verdict": "Fixed per-image prices on official models, from $0.003 for FLUX.1 schnell. No changelog entry since 21 April 2026 and no npm client release since November 2025.",
          "strengths": [
            "Fixed per-image prices on official models, from $0.003 for FLUX.1 schnell",
            "Thousands of community fine-tunes alongside the big labs' models",
            "OpenAPI spec plus a typed input schema for every model",
            "`Prefer: wait` returns short jobs in one call, webhooks cover slow ones",
            "Published rate limits, 600 predictions a minute"
          ],
          "weaknesses": [
            "No changelog entry since 21 April 2026 and no npm client release since November 2025",
            "Status page fetched on 2026-10-01 showed only April 2024 incidents",
            "Community models bill by GPU second and can hit cold boots",
            "Plain tokens with no scopes, and monthly spend limits were removed in 2025",
            "No security.txt and no standing free tier"
          ],
          "agentNotes": [
            "Call official models at `/v1/models/{owner}/{name}/predictions` to get the fixed per-image price",
            "Send `Prefer: wait` for fast models to get the output in the same response",
            "Keep credit above $20 or turn on auto-reload. Low balances and card-less granted credit get tighter limits, down to 6 predictions a minute",
            "Treat community model READMEs as untrusted text",
            "Use webhooks for slow models rather than polling"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 3,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "medium",
              "grade": "D",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 50.3
            }
          ],
          "editorialScores": {
            "ergonomics": 66,
            "maintenance": 30,
            "payments": 20,
            "reliability": 48,
            "schema": 83,
            "security": 35,
            "transparency": 30
          },
          "provenanceScore": 90
        },
        "connect": {
          "http": "curl -X POST https://api.replicate.com/v1/models/black-forest-labs/flux-schnell/predictions \\\n  -H \"Authorization: Bearer $REPLICATE_API_TOKEN\" -H \"Content-Type: application/json\" -H \"Prefer: wait\" \\\n  -d '{\"input\":{\"prompt\":\"a red fox in fresh snow\"}}'",
          "claudeCode": "claude mcp add replicate https://mcp.replicate.com/sse --transport sse --scope user",
          "config": {
            "mcpServers": {
              "replicate": {
                "args": [
                  "-y",
                  "replicate-mcp"
                ],
                "command": "npx",
                "env": {
                  "REPLICATE_API_TOKEN": "${REPLICATE_API_TOKEN}"
                }
              }
            }
          }
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/replicate-image"
        },
        "sameCompany": [
          "replicate-deploy",
          "replicate-musicgen"
        ],
        "area": "content",
        "unitPrices": [
          {
            "item": "FLUX.1 schnell",
            "unit": "image",
            "usd": 0.003,
            "note": "$3 per 1,000 output images"
          },
          {
            "item": "FLUX.1 dev",
            "unit": "image",
            "usd": 0.025
          },
          {
            "item": "FLUX 1.1 pro",
            "unit": "image",
            "usd": 0.04
          },
          {
            "item": "Imagen 4",
            "unit": "image",
            "usd": 0.04
          },
          {
            "item": "Nano Banana 2",
            "unit": "image",
            "usd": 0.067,
            "note": "lowest resolution tier, higher tiers $0.101 and $0.151"
          },
          {
            "item": "Nano Banana Pro",
            "unit": "image",
            "usd": 0.15,
            "note": "$0.30 at 4K"
          },
          {
            "item": "Ideogram v3 Quality",
            "unit": "image",
            "usd": 0.09
          }
        ],
        "provenance": {
          "legalEntity": "Replicate, LLC",
          "domain": "replicate.com",
          "domainRegistered": "1998-05-26",
          "domainNote": "replicate.com was registered in 1998, long before Replicate the company existed.",
          "endpointOnVendorDomain": true,
          "terms": "https://replicate.com/terms",
          "privacy": "https://replicate.com/privacy",
          "statusPage": "https://replicatestatus.com",
          "changelog": "https://replicate.com/changelog",
          "securityTxt": "none",
          "checked": "2026-09-30",
          "notes": [
            "replicatestatus.com redirects to Cloudflare's status page filtered to Replicate",
            "Terms last updated 2026-04-01 name Replicate, LLC as the contracting party"
          ],
          "score": 90
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/replicate-image.json",
        "live": {
          "slug": "replicate-image",
          "probe": {
            "target": "https://api.replicate.com/v1",
            "method": "get",
            "lastAt": "2026-10-05T02:30:01.45597973Z",
            "lastOk": true,
            "lastStatus": 401,
            "lastMs": 90,
            "lastNote": "asks for credentials",
            "authRequired": true,
            "uptime24h": 100,
            "uptime30d": 100,
            "p50ms24h": 251,
            "p95ms24h": 288,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 248
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "vendorStatus": {
            "page": "https://replicatestatus.com",
            "indicator": "unknown",
            "summary": "no machine-readable status found",
            "checkedAt": "2026-10-04T21:40:26.029561461Z"
          },
          "versions": [
            {
              "registry": "github",
              "name": "replicate/replicate-python",
              "version": "1.0.7",
              "released": "2025-05-27",
              "seenAt": "2026-10-04T16:38:07.665251149Z"
            },
            {
              "registry": "npm",
              "name": "replicate",
              "version": "1.4.0",
              "seenAt": "2026-10-04T16:38:05.635620598Z"
            },
            {
              "registry": "npm",
              "name": "replicate-mcp",
              "version": "0.9.0",
              "seenAt": "2026-10-04T16:38:05.804981744Z"
            },
            {
              "registry": "pypi",
              "name": "replicate",
              "version": "1.0.7",
              "released": "2025-05-27",
              "seenAt": "2026-10-04T16:38:05.690775778Z"
            }
          ],
          "githubStars": 917,
          "npmWeekly": 705916,
          "pypiWeekly": 374867,
          "securityTxt": {
            "url": "https://replicate.com/.well-known/security.txt",
            "state": "none",
            "checkedAt": "2026-10-04T15:15:45.229571506Z"
          },
          "llmsTxt": {
            "url": "https://replicate.com/docs/llms.txt",
            "ok": true,
            "status": 200,
            "checkedAt": "2026-10-04T15:18:11.579404328Z"
          },
          "domain": {
            "domain": "replicate.com",
            "registered": "1998-05-26",
            "source": "https://rdap.verisign.com/com/v1/domain/replicate.com",
            "checkedAt": "2026-10-04T13:07:04.742407865Z"
          },
          "pages": [
            {
              "url": "https://replicate.com/changelog",
              "kind": "changelog",
              "status": 200,
              "checkedAt": "2026-10-01T13:15:09.837352617Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "490f4836aca3"
            },
            {
              "url": "https://replicate.com/pricing",
              "kind": "pricing",
              "status": 200,
              "checkedAt": "2026-10-01T13:15:12.51478587Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "3f1305f154be"
            },
            {
              "url": "https://replicate.com/privacy",
              "kind": "privacy",
              "status": 200,
              "checkedAt": "2026-10-01T13:15:14.679425963Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "8e299fbc64eb"
            },
            {
              "url": "https://replicate.com/terms",
              "kind": "terms",
              "status": 200,
              "checkedAt": "2026-10-01T13:15:16.203785623Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "ea48efe3382b"
            }
          ],
          "updatedAt": "2026-10-05T02:30:01.45597973Z"
        }
      },
      {
        "slug": "adobe-firefly",
        "name": "Adobe Firefly API",
        "vendor": "Adobe",
        "vendorUrl": "https://developer.adobe.com/firefly-services",
        "kind": "model",
        "category": "image-generation",
        "summary": "Adobe's Firefly image models (Image 3, Image 4 Standard and Ultra, Image 5) as async REST endpoints within Firefly Services.",
        "url": "https://www.anchorterminal.com/tools/adobe-firefly",
        "markdownUrl": "https://www.anchorterminal.com/tools/adobe-firefly.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/adobe-firefly.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/adobe-firefly.json",
        "transports": [
          "http"
        ],
        "remoteUrl": "https://firefly-api.adobe.io",
        "packages": [
          {
            "registry": "npm",
            "name": "@adobe/firefly-apis"
          }
        ],
        "auth": "oauth",
        "authNotes": "OAuth server-to-server credentials from the Adobe Developer Console. Exchange client ID and secret at https://ims-na1.adobelogin.com/ims/token/v3 for a 24-hour bearer token, then send it with the client ID in x-api-key. The model is chosen with the x-model-version header.",
        "pricing": "paid",
        "pricingNotes": "No public API price list and no self-serve plan. Access comes with a Firefly Services enterprise contract negotiated through Adobe sales. Consumer Firefly plans don't include API access (https://business.adobe.com/products/firefly-business.html).",
        "priceSummary": "Paid",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "Enterprise contract billing only. No x402 in the docs or OpenAPI spec (checked 2026-09-30).",
          "endpoints": []
        },
        "toolCount": null,
        "popularity": {
          "githubStars": null,
          "npmWeekly": 1108,
          "pypiWeekly": null,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://developer.adobe.com/firefly-services/docs/firefly-api/",
        "openapi": "https://raw.githubusercontent.com/AdobeDocs/ffs-firefly-api/main/static/firefly-api.json",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.upscale",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "closed-source",
          "enterprise",
          "openapi",
          "async-jobs",
          "commercial-licence",
          "c2pa"
        ],
        "lastRelease": "2026-04-24",
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 49.2,
          "grade": "D",
          "agentReady": false,
          "rank": 370,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 7,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 57,
            "maintenance": 23,
            "payments": 0,
            "reliability": 55,
            "schema": 78,
            "security": 63,
            "transparency": 71
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "medium",
            "date": "2026-10-01"
          },
          "negative": -3,
          "negativeNotes": [
            "2026-04-24: the Upscale GA removed the `creative_upsampler_v1` header value, which now returns 422, on the day the change was announced. The repository history shows the rename first appears that day in both the spec and the changelog. The endpoint was a month-old beta and the entry gives a migration path, so the smallest deduction. https://developer.adobe.com/firefly-services/docs/firefly-api/getting-started/changelog/"
          ],
          "verdict": "OAuth server-to-server credentials exchanged for 24-hour bearer tokens. Enterprise contract only. No self-serve sign-up and no public price list.",
          "strengths": [
            "OAuth server-to-server credentials exchanged for 24-hour bearer tokens",
            "Published OpenAPI 3.1 spec and a dated changelog that flags breaking changes",
            "Trained on licensed and public-domain content, with IP indemnity available to enterprise buyers",
            "Composite, expand, fill, upscale and custom-model endpoints aimed at production pipelines"
          ],
          "weaknesses": [
            "Enterprise contract only. No self-serve sign-up and no public price list",
            "Default limit of 4 requests a minute per organisation",
            "Changelog's newest entry is 2026-04-24, and Image 5's endpoint isn't in it",
            "The only SDK, `@adobe/firefly-apis` 2.0.1 from June 2025, calls synchronous paths the changelog lists as removed in October 2025",
            "Every generation is an async job you have to poll, and there's no llms.txt"
          ],
          "agentNotes": [
            "Call the REST async endpoints directly. `@adobe/firefly-apis` 2.0.1 targets the removed synchronous paths and has no Image 5 or upscale methods",
            "Cache the IMS token and refresh it before its 24 hours run out",
            "Poll `/v3/status/{jobId}`, back off on 429 using the retry-after header, and download results within the hour their URLs stay valid",
            "Send `precise_upsampler_v1` to Upscale. `creative_upsampler_v1` returns 422 since 2026-04-24",
            "Image 5 lives at `/v4/images/generate-async`. Image 3 and 4 stay on `/v3/images/generate-async`"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 1.5,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "medium",
              "grade": "D",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 49.2
            }
          ],
          "editorialScores": {
            "ergonomics": 57,
            "maintenance": 23,
            "payments": 0,
            "reliability": 55,
            "schema": 78,
            "security": 63,
            "transparency": 42
          },
          "provenanceScore": 100
        },
        "connect": {
          "http": "curl https://firefly-api.adobe.io/v3/images/generate-async \\\n  -H \"x-api-key: $FIREFLY_SERVICES_CLIENT_ID\" -H \"Authorization: Bearer $FIREFLY_SERVICES_ACCESS_TOKEN\" \\\n  -H \"Content-Type: application/json\" -d '{\"prompt\":\"a realistic illustration of a cat coding\"}'"
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/adobe-firefly"
        },
        "sameCompany": [
          "adobe-pdf-extract",
          "adobe-photoshop-api"
        ],
        "area": "content",
        "provenance": {
          "legalEntity": "Adobe Inc.",
          "domain": "adobe.com",
          "domainRegistered": "1986-11-17",
          "endpointOnVendorDomain": true,
          "terms": "https://www.adobe.com/legal/terms.html",
          "privacy": "https://www.adobe.com/privacy/policy.html",
          "statusPage": "https://status.adobe.com",
          "changelog": "https://developer.adobe.com/firefly-services/docs/firefly-api/getting-started/changelog/",
          "securityTxt": "valid",
          "checked": "2026-09-30",
          "notes": [
            "The API is served from firefly-api.adobe.io, Adobe's developer API domain, not adobe.com",
            "The OpenAPI spec is published in the AdobeDocs/ffs-firefly-api GitHub repo"
          ],
          "score": 100
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/adobe-firefly.json",
        "live": {
          "slug": "adobe-firefly",
          "probe": {
            "target": "https://firefly-api.adobe.io",
            "method": "get",
            "lastAt": "2026-10-05T02:29:51.15356906Z",
            "lastOk": true,
            "lastStatus": 404,
            "lastMs": 249,
            "authRequired": false,
            "uptime24h": 100,
            "uptime30d": 100,
            "p50ms24h": 257,
            "p95ms24h": 310,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 248
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "vendorStatus": {
            "page": "https://status.adobe.com",
            "indicator": "unknown",
            "summary": "no machine-readable status found",
            "checkedAt": "2026-10-04T21:39:47.807797072Z"
          },
          "versions": [
            {
              "registry": "npm",
              "name": "@adobe/firefly-apis",
              "version": "2.0.1",
              "seenAt": "2026-10-04T16:19:39.99862016Z"
            }
          ],
          "npmWeekly": 1496,
          "securityTxt": {
            "url": "https://adobe.com/.well-known/security.txt",
            "state": "valid",
            "expires": "2027-07-30T01:00:00.000Z",
            "checkedAt": "2026-10-04T15:15:53.305878617Z"
          },
          "domain": {
            "domain": "adobe.com",
            "registered": "1986-11-17",
            "source": "https://rdap.verisign.com/com/v1/domain/adobe.com",
            "checkedAt": "2026-10-04T13:03:40.934529293Z"
          },
          "pages": [
            {
              "url": "https://developer.adobe.com/firefly-services/docs/firefly-api/getting-started/changelog/",
              "kind": "deprecations",
              "status": 304,
              "checkedAt": "2026-10-04T15:42:34.333934437Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "f5f652835852"
            },
            {
              "url": "https://www.adobe.com/privacy/policy.html",
              "kind": "privacy",
              "status": 304,
              "checkedAt": "2026-10-04T15:49:00.541525396Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "15954a961e2a"
            },
            {
              "url": "https://www.adobe.com/legal/terms.html",
              "kind": "terms",
              "status": 304,
              "checkedAt": "2026-10-04T15:48:58.50240072Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "8a4c10adf4f8"
            }
          ],
          "updatedAt": "2026-10-05T02:29:51.15356906Z"
        }
      },
      {
        "slug": "stability-ai-image",
        "name": "Stability AI Image API",
        "vendor": "Stability AI",
        "vendorUrl": "https://platform.stability.ai",
        "kind": "model",
        "category": "image-generation",
        "summary": "Stability AI's hosted REST API for image generation, editing and upscaling.",
        "url": "https://www.anchorterminal.com/tools/stability-ai-image",
        "markdownUrl": "https://www.anchorterminal.com/tools/stability-ai-image.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/stability-ai-image.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/stability-ai-image.json",
        "transports": [
          "http"
        ],
        "remoteUrl": "https://api.stability.ai/v2beta",
        "packages": [],
        "auth": "api-key",
        "authNotes": "`Authorization: Bearer` with a key from the platform account page. Most v2beta endpoints take multipart form data and return raw image bytes when you send `accept: image/*`.",
        "pricing": "usage",
        "pricingNotes": "25 free credits on sign-up, then $10 per 1,000 credits (1 credit is $0.01). Stable Image Ultra 8 credits, SD 3.5 Large 6.5, Large Turbo 4, Medium 3.5, Flash 2.5, Stable Image Core 3, SDXL from 0.9. Edit tools 4 to 8 credits, upscalers 2 (Fast), 40 (Conservative) and 60 (Creative). Prices rose for some services on 2025-08-01 (https://platform.stability.ai/pricing).",
        "priceSummary": "$0.01 / credit",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "No machine payment. Access needs prepaid credits on a platform account.",
          "endpoints": []
        },
        "toolCount": null,
        "popularity": {
          "githubStars": null,
          "npmWeekly": null,
          "pypiWeekly": null,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://platform.stability.ai/docs/api-reference",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.upscale",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "closed-source",
          "async-jobs",
          "c2pa",
          "commercial-licence"
        ],
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 42.6,
          "grade": "E",
          "agentReady": false,
          "rank": 414,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 8,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 48,
            "maintenance": 8,
            "payments": 40,
            "reliability": 60,
            "schema": 39,
            "security": 30,
            "transparency": 63
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "low",
            "date": "2026-10-01"
          },
          "negative": 0,
          "verdict": "Fixed price per call for every endpoint, published in credits. No new image model we could date since SD 3.5 Flash in July 2025.",
          "strengths": [
            "Fixed price per call for every endpoint, published in credits",
            "25 free credits on sign-up",
            "Many editing endpoints (inpaint, outpaint, erase, recolour, relight, style transfer)",
            "C2PA signing and CSAM filtering on outputs",
            "`accept: image/*` returns raw bytes, so there's no second download step"
          ],
          "weaknesses": [
            "No new image model we could date since SD 3.5 Flash in July 2025",
            "A major incident on 14 September 2026 returned elevated 500s on generation endpoints for 4 hours 8 minutes",
            "Official Python SDK is the legacy gRPC client, last released in May 2024",
            "Docs, pricing and release notes are a single-page app with no llms.txt or OpenAPI spec",
            "No security.txt, no scoped keys, and API inputs and outputs may train models unless you opt out"
          ],
          "agentNotes": [
            "Send `accept: image/*` to get bytes back, or `application/json` for base64",
            "Stay under 150 requests every 10 seconds. A 429 locks you out for 60 seconds",
            "Poll the result endpoint with the returned id for async edit and upscale calls",
            "Use Stable Image Core or SD 3.5 Flash for drafts, Ultra for finals",
            "Send multipart form data, not JSON"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 3,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "low",
              "grade": "E",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 42.6
            }
          ],
          "editorialScores": {
            "ergonomics": 48,
            "maintenance": 8,
            "payments": 40,
            "reliability": 60,
            "schema": 39,
            "security": 30,
            "transparency": 40
          },
          "provenanceScore": 86
        },
        "connect": {
          "http": "curl -f -sS https://api.stability.ai/v2beta/stable-image/generate/core \\\n  -H \"Authorization: Bearer $STABILITY_API_KEY\" -H \"accept: image/*\" \\\n  -F prompt=\"a lighthouse on a cliff at dusk\" -F output_format=webp -o lighthouse.webp"
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/stability-ai-image"
        },
        "sameCompany": [
          "stable-audio"
        ],
        "area": "content",
        "unitPrices": [
          {
            "item": "Stable Image Core",
            "unit": "image",
            "usd": 0.03,
            "note": "3 credits, default settings"
          },
          {
            "item": "Stable Image Ultra",
            "unit": "image",
            "usd": 0.08,
            "note": "8 credits"
          },
          {
            "item": "SD 3.5 Large",
            "unit": "image",
            "usd": 0.065,
            "note": "6.5 credits"
          },
          {
            "item": "SD 3.5 Flash",
            "unit": "image",
            "usd": 0.025,
            "note": "2.5 credits"
          },
          {
            "item": "Credits",
            "unit": "credit",
            "usd": 0.01,
            "note": "bought in $10 blocks"
          }
        ],
        "provenance": {
          "legalEntity": "Stability AI Ltd",
          "domain": "stability.ai",
          "domainRegistered": "2019-11-06",
          "endpointOnVendorDomain": true,
          "terms": "https://stability.ai/terms-of-service",
          "privacy": "https://stability.ai/privacypolicy",
          "statusPage": "https://status.stability.ai",
          "changelog": "https://platform.stability.ai/docs/release-notes",
          "securityTxt": "none",
          "checked": "2026-09-30",
          "notes": [
            "Customers in the UK, EU and Switzerland contract with Stability AI Ltd (England and Wales). Everyone else contracts with Stability AI US Services Corporation (Delaware)."
          ],
          "score": 86
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/stability-ai-image.json",
        "live": {
          "slug": "stability-ai-image",
          "probe": {
            "target": "https://api.stability.ai/v2beta",
            "method": "get",
            "lastAt": "2026-10-05T02:30:03.097437085Z",
            "lastOk": true,
            "lastStatus": 404,
            "lastMs": 44,
            "authRequired": false,
            "uptime24h": 100,
            "uptime30d": 100,
            "p50ms24h": 51,
            "p95ms24h": 273,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 248
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "vendorStatus": {
            "page": "https://status.stability.ai",
            "indicator": "none",
            "summary": "All Systems Operational",
            "checkedAt": "2026-10-05T02:29:13.411693Z"
          },
          "securityTxt": {
            "url": "https://stability.ai/.well-known/security.txt",
            "state": "none",
            "checkedAt": "2026-10-04T15:15:40.736443989Z"
          },
          "domain": {
            "domain": "stability.ai",
            "registered": "2019-11-06",
            "source": "https://rdap.identitydigital.services/rdap/domain/stability.ai",
            "checkedAt": "2026-10-04T13:05:00.712080497Z"
          },
          "pages": [
            {
              "url": "https://platform.stability.ai/docs/release-notes",
              "kind": "deprecations",
              "status": 200,
              "checkedAt": "2026-10-04T15:46:52.98660275Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "e3b0c44298fc"
            },
            {
              "url": "https://stability.ai/terms-of-service",
              "kind": "deprecations",
              "status": 304,
              "checkedAt": "2026-10-04T15:48:11.26398506Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "fa6452f1e97e"
            },
            {
              "url": "https://platform.stability.ai/pricing",
              "kind": "pricing",
              "status": 200,
              "checkedAt": "2026-10-04T15:46:55.079292779Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "e3b0c44298fc"
            },
            {
              "url": "https://stability.ai/privacypolicy",
              "kind": "privacy",
              "status": 304,
              "checkedAt": "2026-10-04T15:48:09.463220951Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "3637f705edef"
            }
          ],
          "updatedAt": "2026-10-05T02:30:03.097437085Z"
        }
      },
      {
        "slug": "leonardo-ai",
        "name": "Leonardo.Ai API",
        "vendor": "Leonardo.Ai (Canva)",
        "vendorUrl": "https://leonardo.ai",
        "kind": "model",
        "category": "image-generation",
        "summary": "Leonardo's own Phoenix and Lucid image models alongside resold third-party ones (FLUX, GPT Image, Ideogram 3.0, Nano Banana, Seedream) through one v2 generations endpoint.",
        "url": "https://www.anchorterminal.com/tools/leonardo-ai",
        "markdownUrl": "https://www.anchorterminal.com/tools/leonardo-ai.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/leonardo-ai.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/leonardo-ai.json",
        "transports": [
          "http",
          "streamable-http"
        ],
        "remoteUrl": "https://cloud.leonardo.ai/api/rest/v2",
        "packages": [
          {
            "registry": "npm",
            "name": "@leonardo-ai/sdk"
          },
          {
            "registry": "pypi",
            "name": "leonardo-ai-sdk"
          }
        ],
        "auth": "api-key",
        "authNotes": "Bearer API key created on the API Access page of the web app. The hosted MCP server at https://mcp.leonardo.ai/v1/mcp takes the same key in an API-Key header.",
        "pricing": "usage",
        "pricingNotes": "Pay as you go from a prepaid dollar balance that doesn't expire, with optional auto top-up. No monthly fee. API billing is separate from web app subscriptions. Per-image prices aren't published as a table. Cost depends on model, resolution and output count, shown in the in-app pricing calculator and returned in a cost object on each generation. Custom plans on request (https://docs.leonardo.ai/docs/pricing-and-plans-faq).",
        "priceSummary": "Pay per use",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "No x402 in the API docs (checked 2026-09-30).",
          "endpoints": []
        },
        "toolCount": null,
        "popularity": {
          "githubStars": null,
          "npmWeekly": 20039,
          "pypiWeekly": 82,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://docs.leonardo.ai/docs/getting-started",
        "llmsTxt": "https://docs.leonardo.ai/llms.txt",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.upscale",
          "image.reference"
        ],
        "tags": [
          "hosted",
          "closed-source",
          "mcp",
          "llms-txt",
          "python",
          "typescript",
          "async-jobs",
          "webhooks",
          "commercial-licence"
        ],
        "lastRelease": "2026-04-21",
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 37.8,
          "grade": "F",
          "agentReady": false,
          "rank": 433,
          "ranked": true,
          "rankOf": 452,
          "categoryRank": 9,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 54,
            "maintenance": 48,
            "payments": 0,
            "reliability": 30,
            "schema": 45,
            "security": 40,
            "transparency": 51
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "medium",
            "date": "2026-10-01"
          },
          "negative": 0,
          "verdict": "Own models plus FLUX, GPT Image, Ideogram, Nano Banana and Seedream behind one endpoint. No per-image price list outside the logged-in calculator.",
          "strengths": [
            "Own models plus FLUX, GPT Image, Ideogram, Nano Banana and Seedream behind one endpoint",
            "Pay as you go with a balance that doesn't expire and no monthly fee",
            "Every generation returns a cost object",
            "Official TypeScript and Python SDKs, published through npm trusted publishing",
            "Webhook callbacks as well as polling"
          ],
          "weaknesses": [
            "No per-image price list outside the logged-in calculator",
            "No status page and no security.txt",
            "Deprecation notice of 8 to 28 days with no stated policy",
            "No documented status code or backoff advice for limit errors",
            "TypeScript SDK last released on 21 April 2026"
          ],
          "agentNotes": [
            "Use `POST /api/rest/v2/generations` with a `model` name such as `lucid-origin`",
            "Read the `cost` object in each response to track spend, prices aren't published",
            "Send `quality`, not `mode`. `mode` was retired on 2026-05-04",
            "Set a webhook callback URL on the key instead of polling long jobs",
            "Check the deprecations page before relying on a third-party model, removals follow the provider"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 2,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "medium",
              "grade": "F",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 37.8
            }
          ],
          "editorialScores": {
            "ergonomics": 54,
            "maintenance": 48,
            "payments": 0,
            "reliability": 30,
            "schema": 45,
            "security": 40,
            "transparency": 25
          },
          "provenanceScore": 76
        },
        "connect": {
          "http": "curl -X POST https://cloud.leonardo.ai/api/rest/v2/generations \\\n  -H \"authorization: Bearer $LEONARDO_API_KEY\" -H \"content-type: application/json\" \\\n  -d '{\"model\":\"lucid-origin\",\"parameters\":{\"prompt\":\"a fox in a snowy forest\",\"width\":1024,\"height\":1024,\"quantity\":1},\"public\":false}'",
          "config": {
            "mcpServers": {
              "leonardo-ai": {
                "headers": {
                  "API-Key": "${LEONARDO_API_KEY}"
                },
                "url": "https://mcp.leonardo.ai/v1/mcp"
              }
            }
          }
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/leonardo-ai"
        },
        "area": "content",
        "provenance": {
          "legalEntity": "Leonardo Interactive Pty Ltd",
          "domain": "leonardo.ai",
          "domainRegistered": "2019-01-08",
          "domainNote": "leonardo.ai was registered in 2019, before the company launched its product in 2022.",
          "endpointOnVendorDomain": true,
          "terms": "https://leonardo.ai/terms-of-service",
          "privacy": "https://leonardo.ai/privacy-policy",
          "statusPage": "",
          "changelog": "https://docs.leonardo.ai/docs/deprecations-changes",
          "securityTxt": "none",
          "checked": "2026-09-30",
          "notes": [
            "Legal entity is Leonardo Interactive Pty Ltd T/A Leonardo.Ai (ACN 662 209 485), a Canva subsidiary since 2024",
            "leonardo.ai returns 403 to curl and WebFetch, so the terms and privacy pages were read via search results",
            "status.leonardo.ai failed TLS and no other status page was found"
          ],
          "score": 76
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/leonardo-ai.json",
        "live": {
          "slug": "leonardo-ai",
          "probe": {
            "target": "https://cloud.leonardo.ai/api/rest/v2",
            "method": "get",
            "lastAt": "2026-10-05T02:29:57.858683914Z",
            "lastOk": true,
            "lastStatus": 401,
            "lastMs": 155,
            "lastNote": "asks for credentials",
            "authRequired": true,
            "uptime24h": 100,
            "uptime30d": 100,
            "p50ms24h": 161,
            "p95ms24h": 340,
            "samples24h": 273,
            "samples30d": 1131,
            "days": [
              {
                "date": "2026-09-30",
                "probes": 35,
                "ok": 35
              },
              {
                "date": "2026-10-01",
                "probes": 276,
                "ok": 276
              },
              {
                "date": "2026-10-02",
                "probes": 248,
                "ok": 248
              },
              {
                "date": "2026-10-03",
                "probes": 271,
                "ok": 271
              },
              {
                "date": "2026-10-04",
                "probes": 272,
                "ok": 272
              },
              {
                "date": "2026-10-05",
                "probes": 29,
                "ok": 29
              }
            ]
          },
          "versions": [
            {
              "registry": "npm",
              "name": "@leonardo-ai/sdk",
              "version": "4.21.3",
              "seenAt": "2026-10-04T16:31:33.492615477Z"
            },
            {
              "registry": "pypi",
              "name": "leonardo-ai-sdk",
              "version": "7.0.0",
              "released": "2026-02-05",
              "seenAt": "2026-10-04T16:31:35.754736869Z"
            }
          ],
          "npmWeekly": 25569,
          "pypiWeekly": 85,
          "securityTxt": {
            "url": "https://leonardo.ai/.well-known/security.txt",
            "state": "none",
            "checkedAt": "2026-10-04T15:15:57.322371796Z"
          },
          "llmsTxt": {
            "url": "https://docs.leonardo.ai/llms.txt",
            "ok": true,
            "status": 200,
            "checkedAt": "2026-10-04T15:17:56.743674943Z"
          },
          "domain": {
            "domain": "leonardo.ai",
            "registered": "2019-01-08",
            "source": "https://rdap.identitydigital.services/rdap/domain/leonardo.ai",
            "checkedAt": "2026-10-04T13:07:29.136922598Z"
          },
          "pages": [
            {
              "url": "https://docs.leonardo.ai/docs/deprecations-changes",
              "kind": "deprecations",
              "status": 200,
              "checkedAt": "2026-10-04T15:43:44.401453686Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "2e7c377556f6"
            },
            {
              "url": "https://docs.leonardo.ai/docs/pricing-and-plans-faq",
              "kind": "pricing",
              "status": 200,
              "checkedAt": "2026-10-04T15:43:47.279750907Z",
              "changedAt": "0001-01-01T00:00:00Z",
              "fingerprint": "5a8a697933ab"
            },
            {
              "url": "https://leonardo.ai/privacy-policy",
              "kind": "privacy",
              "status": 403,
              "checkedAt": "2026-10-04T15:45:32.387451137Z",
              "changedAt": "0001-01-01T00:00:00Z"
            },
            {
              "url": "https://leonardo.ai/terms-of-service",
              "kind": "terms",
              "status": 403,
              "checkedAt": "2026-10-04T15:45:34.408696299Z",
              "changedAt": "0001-01-01T00:00:00Z"
            }
          ],
          "updatedAt": "2026-10-05T02:29:57.858683914Z"
        }
      },
      {
        "slug": "google-imagen",
        "name": "Google Imagen",
        "vendor": "Google",
        "vendorUrl": "https://ai.google.dev",
        "kind": "model",
        "category": "image-generation",
        "summary": "Discontinued Google image generation models, formerly available through the Gemini API and Vertex AI.",
        "url": "https://www.anchorterminal.com/tools/google-imagen",
        "markdownUrl": "https://www.anchorterminal.com/tools/google-imagen.md",
        "slimMarkdownUrl": "https://www.anchorterminal.com/tools/google-imagen.min.md",
        "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/google-imagen.json",
        "transports": [
          "http"
        ],
        "remoteUrl": "https://generativelanguage.googleapis.com/v1beta",
        "packages": [
          {
            "registry": "pypi",
            "name": "google-genai"
          },
          {
            "registry": "npm",
            "name": "@google/genai"
          }
        ],
        "auth": "api-key",
        "authNotes": "Gemini API used an `x-goog-api-key` key. Vertex AI used Google Cloud IAM with OAuth access tokens.",
        "pricing": "usage",
        "pricingNotes": "Per image before shutdown. Imagen 4 Fast $0.02, Imagen 4 $0.04, Imagen 4 Ultra $0.06, Imagen 4 upscaling $0.06. The Vertex AI pricing page still lists these rates, but the models are discontinued (https://cloud.google.com/vertex-ai/generative-ai/pricing).",
        "priceSummary": "Pay per use",
        "where": "hosted",
        "x402": {
          "level": "no",
          "evidence": "No machine payment. Access needed a Google Cloud or AI Studio billing account.",
          "endpoints": []
        },
        "toolCount": null,
        "popularity": {
          "githubStars": null,
          "npmWeekly": null,
          "pypiWeekly": null,
          "asOf": "2026-09-30"
        },
        "docsUrl": "https://ai.google.dev/gemini-api/docs/imagen",
        "capabilities": [
          "image.generate",
          "image.edit",
          "image.upscale"
        ],
        "tags": [
          "retired",
          "hosted",
          "closed-source",
          "python",
          "typescript",
          "watermark"
        ],
        "lastRelease": "2025-08-14",
        "graded": true,
        "anchor": {
          "graded": true,
          "score": 7.2,
          "grade": "F",
          "agentReady": false,
          "rank": 0,
          "ranked": false,
          "notRankedWhy": "Shut down 2026-08-17, so out of the ranking",
          "rankOf": 452,
          "categoryRank": 10,
          "methodology": "0.3",
          "run": "2026-10-01",
          "scores": {
            "ergonomics": 0,
            "maintenance": 5,
            "payments": 0,
            "reliability": 0,
            "schema": 25,
            "security": 0,
            "transparency": 65
          },
          "pending": [
            "performance",
            "tasks"
          ],
          "assessment": {
            "confidence": "high",
            "date": "2026-10-01"
          },
          "negative": -3,
          "negativeNotes": [
            "Since 2026-06-30 the Vertex AI generative AI pricing page still lists Imagen 4, Imagen 4 Fast and Imagen 4 Ultra at $0.02 to $0.06 an image with no discontinuation note, three months after the endpoints were discontinued (https://cloud.google.com/vertex-ai/generative-ai/pricing, seen 2026-10-01). -3, the low end, because the model pages and release notes do carry the date."
          ],
          "verdict": "Shutdown dates were published in the Gemini API changelog and the Vertex AI release notes, with replacements named. Discontinued. Calls to imagen model names fail on both the Gemini API and Vertex AI.",
          "strengths": [
            "Shutdown dates were published in the Gemini API changelog and the Vertex AI release notes, with replacements named",
            "The Gemini API Imagen page now states the shutdown and the three migration changes",
            "Imagen 4 outputs carried a SynthID watermark, and C2PA on Imagen 4 and Fast"
          ],
          "weaknesses": [
            "Discontinued. Calls to imagen model names fail on both the Gemini API and Vertex AI",
            "Notice was 63 days on the Gemini API and 98 days on Vertex AI, for a model GA since August 2025",
            "Mask-based editing from imagen-3.0-capability-001 has no Google replacement",
            "The Vertex AI pricing page still lists Imagen 4 rates with no discontinuation note"
          ],
          "agentNotes": [
            "Replace `client.models.generate_images` with `client.models.generate_content` and a `gemini-3.1-flash-image` model",
            "Read images from the response content parts, not from `generated_images`",
            "Don't budget from the Vertex Imagen price rows, they describe a retired product",
            "If the job needs a mask-based inpaint, use another vendor's fill endpoint, since Gemini image editing is prompt-based"
          ],
          "metrics": {
            "kind": "remote",
            "measured": false
          },
          "reviewCount": 2,
          "avgRating": 1,
          "history": [
            {
              "basis": "public evidence",
              "confidence": "high",
              "grade": "F",
              "methodology": "0.3",
              "pending": [
                "performance",
                "tasks"
              ],
              "run": "2026-10-01",
              "runLabel": "October 2026 research run",
              "score": 7.2
            }
          ],
          "editorialScores": {
            "ergonomics": 0,
            "maintenance": 5,
            "payments": 0,
            "reliability": 0,
            "schema": 25,
            "security": 0,
            "transparency": 30
          },
          "provenanceScore": 100
        },
        "connect": {
          "http": "curl \"https://generativelanguage.googleapis.com/v1beta/models/imagen-4.0-generate-001:predict\" \\\n  -H \"x-goog-api-key: $GEMINI_API_KEY\" -H \"content-type: application/json\" \\\n  -d '{\"instances\":[{\"prompt\":\"A robot holding a red skateboard\"}],\"parameters\":{\"sampleCount\":1}}'   # retired, kept for reference"
        },
        "letme": {
          "capability": "https://letme.dev/image.generate",
          "tool": "https://letme.dev/google-imagen"
        },
        "supersededBy": [
          "gemini-api"
        ],
        "sameCompany": [
          "gemini-api",
          "gemini-embedding",
          "vertex-ai-tuning",
          "google-model-armor",
          "google-veo",
          "google-lyria",
          "google-speech-to-text",
          "google-adk",
          "google-secret-manager",
          "google-weather-api",
          "chrome-devtools-mcp",
          "google-maps-platform",
          "google-cloud-translation",
          "google-calendar-api",
          "google-drive-api",
          "gemini-cli"
        ],
        "area": "content",
        "retired": "2026-08-17",
        "unitPrices": [
          {
            "item": "Imagen 4 Fast",
            "unit": "image",
            "usd": 0.02,
            "note": "retired, last listed price"
          },
          {
            "item": "Imagen 4",
            "unit": "image",
            "usd": 0.04,
            "note": "retired, last listed price"
          },
          {
            "item": "Imagen 4 Ultra",
            "unit": "image",
            "usd": 0.06,
            "note": "retired, last listed price"
          }
        ],
        "provenance": {
          "legalEntity": "Google LLC",
          "domain": "google.com",
          "domainRegistered": "1997-09-15",
          "domainNote": "The endpoint is on googleapis.com, Google's API domain. google.com was registered in 1997.",
          "endpointOnVendorDomain": true,
          "terms": "https://ai.google.dev/gemini-api/terms",
          "privacy": "https://policies.google.com/privacy",
          "statusPage": "https://aistudio.google.com/status",
          "changelog": "https://ai.google.dev/gemini-api/docs/changelog",
          "securityTxt": "valid",
          "checked": "2026-09-30",
          "score": 100
        },
        "pageJsonUrl": "https://www.anchorterminal.com/tools/google-imagen.json"
      }
    ]
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/categories/image-generation",
    "json": "https://www.anchorterminal.com/categories/image-generation.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/categories/image-generation.md",
    "slim": "https://www.anchorterminal.com/categories/image-generation.min.md"
  },
  "markdown": "Text-to-image and image editing models behind an API, from the labs that train them and the model platforms that host many of them. Compared on price per image, resolution, edit and reference-image support, text rendering, licence of the output and content rules.\n\n- Tools ranked: 10 · agent-ready (BB or better): 1 · accept x402: 0 · hosted endpoints: 10 · desk reviews by the panel: 20\n- JSON: https://www.anchorterminal.com/api/v1/tools.json (list) · https://www.anchorterminal.com/api/v1/rankings.json (ranked) · https://www.anchorterminal.com/api/v1/x402.json (payable) · https://www.anchorterminal.com/api/v1/capabilities.json (by capability)\n- Grades run AA, A, BB, B, C, D, E, F · methodology: https://www.anchorterminal.com/benchmark/\n\n- Capabilities in this category: image.generate, image.edit, image.upscale, image.vector\n- https://letme.dev/image.generate picks the top-graded tool in this list and says how to call it direct; calling through letme comes later (https://www.anchorterminal.com/letme/index.md)\n\n## Ranking\n\n| # | Tool | Vendor | Kind | Category | Grade | Score | Confidence | x402 | Auth | Where | Reviews | Page |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 67 | OpenAI Image API | OpenAI | Model API | Image | BB | 72.7 | high | no | API key | hosted | 3.5/5 (2) | https://www.anchorterminal.com/tools/openai-image-api.md |\n| 172 | fal image models | fal (Features \u0026 Labels, Inc.) | Model platform | Image | B | 65.5 | medium | no | OAuth or key | hosted | 4/5 (2) | https://www.anchorterminal.com/tools/fal-image.md |\n| 186 | Black Forest Labs FLUX API | Black Forest Labs | Model API | Image | B | 64.2 | medium | no | OAuth or key | hosted | 3.5/5 (2) | https://www.anchorterminal.com/tools/black-forest-labs.md |\n| 338 | Recraft API | Recraft | Model API | Image | D | 53 | medium | no | OAuth or key | hosted | 3.5/5 (2) | https://www.anchorterminal.com/tools/recraft.md |\n| 360 | Ideogram API | Ideogram | Model API | Image | D | 50.3 | medium | no | OAuth or key | hosted | 3.5/5 (2) | https://www.anchorterminal.com/tools/ideogram.md |\n| 361 | Replicate image models | Replicate (Cloudflare) | Model platform | Image | D | 50.3 | medium | no | API key | hosted + local | 3/5 (2) | https://www.anchorterminal.com/tools/replicate-image.md |\n| 370 | Adobe Firefly API | Adobe | Model API | Image | D | 49.2 | medium | no | OAuth | hosted | 1.5/5 (2) | https://www.anchorterminal.com/tools/adobe-firefly.md |\n| 414 | Stability AI Image API | Stability AI | Model API | Image | E | 42.6 | low | no | API key | hosted | 3/5 (2) | https://www.anchorterminal.com/tools/stability-ai-image.md |\n| 433 | Leonardo.Ai API | Leonardo.Ai (Canva) | Model API | Image | F | 37.8 | medium | no | API key | hosted | 2/5 (2) | https://www.anchorterminal.com/tools/leonardo-ai.md |\n| not ranked, shut down | Google Imagen | Google | Model API | Image | F | 7.2 | high | no | API key | hosted | 1/5 (2) | https://www.anchorterminal.com/tools/google-imagen.md |\n\nScores are from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/), with Performance and Task success pending. p95 latency and context cost come from our probes, which haven't run yet.\n\n## Summaries\n\n### 67. OpenAI Image API, BB (72.7)\n\nOpenAI's image generation and editing endpoints (/v1/images/generations and /v1/images/edits), also callable as a tool inside the Responses API. Generation, mask edits and multi-reference edits on the same models, via the Image API or the Responses tool. No per-image price for GPT Image 2.5, and the cost calculator doesn't cover it.\n\n- Page: https://www.anchorterminal.com/tools/openai-image-api · Markdown: https://www.anchorterminal.com/tools/openai-image-api.md · JSON: https://www.anchorterminal.com/api/v1/tools/openai-image-api.json\n- Capabilities: image.generate, image.edit, image.reference · endpoint: `https://api.openai.com/v1`\n\n### 172. fal image models, B (65.5)\n\nModel platform hosting hundreds of third-party image models behind one key and one queue API. Hundreds of image models, including FLUX, Nano Banana, GPT Image, Seedream, Recraft and Ideogram, on one key. Billing units vary by model, per image, per megapixel or per token.\n\n- Page: https://www.anchorterminal.com/tools/fal-image · Markdown: https://www.anchorterminal.com/tools/fal-image.md · JSON: https://www.anchorterminal.com/api/v1/tools/fal-image.json\n- Capabilities: image.generate, image.edit, image.upscale, image.vector, image.reference · endpoint: `https://queue.fal.run`\n\n### 186. Black Forest Labs FLUX API, B (64.2)\n\nBlack Forest Labs' hosted API for the FLUX image models. Per-image and per-megapixel prices published per model, from $0.014. Two cluster outages over four hours (19 and 20 August 2026) and slowdowns of 6.5 and 20 hours since.\n\n- Page: https://www.anchorterminal.com/tools/black-forest-labs · Markdown: https://www.anchorterminal.com/tools/black-forest-labs.md · JSON: https://www.anchorterminal.com/api/v1/tools/black-forest-labs.json\n- Capabilities: image.generate, image.edit, image.reference · endpoint: `https://api.bfl.ai/v1`\n\n### 338. Recraft API, D (53)\n\nRecraft's own image models (V2, V3, V4, V4.1, V4.1 Flash and V4 Styles) behind an OpenAI-compatible REST API. Native SVG vector generation, not traced raster. No changelog and no error reference.\n\n- Page: https://www.anchorterminal.com/tools/recraft · Markdown: https://www.anchorterminal.com/tools/recraft.md · JSON: https://www.anchorterminal.com/api/v1/tools/recraft.json\n- Capabilities: image.generate, image.edit, image.upscale, image.vector, image.reference · endpoint: `https://external.api.recraft.ai/v1`\n\n### 360. Ideogram API, D (50.3)\n\nIdeogram's API for generating images, including images containing text. Text rendering and layout control are the model's focus. Six API incidents in 90 days, three on v3 endpoints between 23 and 29 September.\n\n- Page: https://www.anchorterminal.com/tools/ideogram · Markdown: https://www.anchorterminal.com/tools/ideogram.md · JSON: https://www.anchorterminal.com/api/v1/tools/ideogram.json\n- Capabilities: image.generate, image.edit, image.upscale, image.reference · endpoint: `https://api.ideogram.ai/v1`\n\n### 361. Replicate image models, D (50.3)\n\nModel platform running official and community image models through one predictions API. Fixed per-image prices on official models, from $0.003 for FLUX.1 schnell. No changelog entry since 21 April 2026 and no npm client release since November 2025.\n\n- Page: https://www.anchorterminal.com/tools/replicate-image · Markdown: https://www.anchorterminal.com/tools/replicate-image.md · JSON: https://www.anchorterminal.com/api/v1/tools/replicate-image.json\n- Capabilities: image.generate, image.edit, image.upscale, image.vector, image.reference · endpoint: `https://api.replicate.com/v1`\n\n### 370. Adobe Firefly API, D (49.2)\n\nAdobe's Firefly image models (Image 3, Image 4 Standard and Ultra, Image 5) as async REST endpoints within Firefly Services. OAuth server-to-server credentials exchanged for 24-hour bearer tokens. Enterprise contract only. No self-serve sign-up and no public price list.\n\n- Page: https://www.anchorterminal.com/tools/adobe-firefly · Markdown: https://www.anchorterminal.com/tools/adobe-firefly.md · JSON: https://www.anchorterminal.com/api/v1/tools/adobe-firefly.json\n- Capabilities: image.generate, image.edit, image.upscale, image.reference · endpoint: `https://firefly-api.adobe.io`\n\n### 414. Stability AI Image API, E (42.6)\n\nStability AI's hosted REST API for image generation, editing and upscaling. Fixed price per call for every endpoint, published in credits. No new image model we could date since SD 3.5 Flash in July 2025.\n\n- Page: https://www.anchorterminal.com/tools/stability-ai-image · Markdown: https://www.anchorterminal.com/tools/stability-ai-image.md · JSON: https://www.anchorterminal.com/api/v1/tools/stability-ai-image.json\n- Capabilities: image.generate, image.edit, image.upscale, image.reference · endpoint: `https://api.stability.ai/v2beta`\n\n### 433. Leonardo.Ai API, F (37.8)\n\nLeonardo's own Phoenix and Lucid image models alongside resold third-party ones (FLUX, GPT Image, Ideogram 3.0, Nano Banana, Seedream) through one v2 generations endpoint. Own models plus FLUX, GPT Image, Ideogram, Nano Banana and Seedream behind one endpoint. No per-image price list outside the logged-in calculator.\n\n- Page: https://www.anchorterminal.com/tools/leonardo-ai · Markdown: https://www.anchorterminal.com/tools/leonardo-ai.md · JSON: https://www.anchorterminal.com/api/v1/tools/leonardo-ai.json\n- Capabilities: image.generate, image.edit, image.upscale, image.reference · endpoint: `https://cloud.leonardo.ai/api/rest/v2`\n\n### Google Imagen, F (7.2), retired, not ranked\n\nDiscontinued Google image generation models, formerly available through the Gemini API and Vertex AI. Shutdown dates were published in the Gemini API changelog and the Vertex AI release notes, with replacements named. Discontinued. Calls to imagen model names fail on both the Gemini API and Vertex AI.\n\n- Page: https://www.anchorterminal.com/tools/google-imagen · Markdown: https://www.anchorterminal.com/tools/google-imagen.md · JSON: https://www.anchorterminal.com/api/v1/tools/google-imagen.json\n- Capabilities: image.generate, image.edit, image.upscale · endpoint: `https://generativelanguage.googleapis.com/v1beta`\n\n## Indexed, not reviewed (6)\n\nSorted into this category from public catalogues, with facts and our own checks but no score, grade or rank (https://www.anchorterminal.com/indexed/index.md).\n\n| Listing | Kind | What it does | Why it's here |\n| --- | --- | --- | --- |\n| [agentbrush.dev MCP server](https://www.anchorterminal.com/tools/agentbrush-mcp-server.md) | MCP server | On-brand image generation (product shots, app icons, OG cards, sprites) for AI coding agents. | vendor's own |\n| [fluxdots.com MCP server](https://www.anchorterminal.com/tools/fluxdots-mcp.md) | MCP server | Play ranked FluxDots matches against humans on a shared Elo ladder. Zero-dependency stdio server. | vendor's own |\n| [gency-mcp](https://www.anchorterminal.com/tools/gency-mcp.md) | MCP server | Gency AI product image generation - MCP server for Claude, Codex, Cursor, VS Code | vendor's own |\n| [MsgMesh](https://www.anchorterminal.com/tools/alderflux-msgmesh.md) | MCP server | Event bus for AI agents: watch\\_topic long-polls live events; manage topics, schemas, webhooks. | vendor's own |\n| [reputation](https://www.anchorterminal.com/tools/tradallo-reputation.md) | MCP server | Query cryptographically-verified trading reputations (humans + AI agents). ed25519-signed. | vendor's own |\n| [Vidofy](https://www.anchorterminal.com/tools/vidofy-mcp.md) | MCP server | Generate video, images, audio and speech with Vidofy — Veo 3.1, Kling 3.0, Flux 2 and 570+ models. | vendor's own |\n\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Image generation",
        "url": ""
      }
    ],
    "description": "10 image generation listings ranked by the Anchor benchmark. Leader OpenAI Image API (BB). Text-to-image and image editing models behind an API, from the labs that train them and the model platforms that host many of them. Compared on price per image, resolution, edit and reference-image support, text rendering, licence of the output and content rules.",
    "facts": [
      "OpenAI Image API BB",
      "fal image models B",
      "Black Forest Labs FLUX API B"
    ],
    "h1": "Image generation for AI agents",
    "image": "https://www.anchorterminal.com/assets/og/categories-image-generation.png",
    "path": "/categories/image-generation",
    "published": "",
    "section": "tools",
    "title": "Image generation for AI agents, ranked | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/categories/image-generation"
  },
  "tokens": {
    "markdown": 2900,
    "slim": 530
  },
  "version": 1
}
