{
  "data": {
    "a": {
      "slug": "luma",
      "name": "Luma AI API",
      "vendor": "Luma AI",
      "vendorUrl": "https://lumalabs.ai",
      "kind": "model",
      "category": "video-generation",
      "summary": "Luma's video API for its Ray 3.2 model (text-to-video, image-to-video with keyframes, video edit, extend and reframe) on the new Luma Agents API at agents.lumalabs.ai.",
      "url": "https://www.anchorterminal.com/tools/luma",
      "markdownUrl": "https://www.anchorterminal.com/tools/luma.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/luma.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/luma.json",
      "dns": "luma.grade.anchorterminal.com",
      "repo": "https://github.com/lumalabs/luma-agents-python",
      "license": "Apache-2.0 (SDKs)",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://agents.lumalabs.ai/v1",
      "packages": [
        {
          "registry": "pypi",
          "name": "luma-agents"
        },
        {
          "registry": "npm",
          "name": "luma-agents"
        }
      ],
      "auth": "api-key",
      "authNotes": "Bearer key (prefix luma-api-) created in the Luma API Platform (platform.lumalabs.ai). Keys are shown once. Quota and rate limits are per client, shared by all its keys.",
      "pricing": "usage",
      "pricingNotes": "Pay-as-you-go in credits with no minimum spend. Luma's published list rate is $0.003 a credit, and the dollar rate can differ by plan or contract. Ray 3.2 standard video is 20, 50, 100 or 400 credits ($0.06, $0.15, $0.30 or $1.20 at list rate) per 5 second clip at 360p draft, 540p, 720p or 1080p, and three times that for 10 seconds. HDR doubles the 5 second rate, HDR plus EXR triples it. Video edit from 180 credits per 5 seconds, reframe 10 to 120 credits per second, extend billed as one 5 second block. Video rates may change before general availability. Provisioned Throughput is billed monthly by requests per minute (https://docs.agents.lumalabs.ai/guides/pricing/).",
      "priceSummary": "Pay per use",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 in the Agents API docs or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 2,
        "npmWeekly": 982,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.agents.lumalabs.ai",
      "rateLimitsUrl": "https://docs.agents.lumalabs.ai/guides/rate-limits/",
      "capabilities": [
        "video.generate",
        "video.image-to-video",
        "video.edit",
        "video.extend"
      ],
      "tags": [
        "official",
        "hosted",
        "closed-source",
        "card-required",
        "async-jobs",
        "python",
        "typescript",
        "commercial-licence"
      ],
      "lastRelease": "2026-08-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 50.5,
        "grade": "D",
        "agentReady": false,
        "rank": 1058,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 12,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 47,
          "payments": 20,
          "reliability": 57,
          "schema": 53,
          "security": 53,
          "transparency": 67
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-04"
        },
        "negative": -2,
        "negativeNotes": [
          "-2, misleading claim. The Luma Agents API pricing page's comparison table says Pay-as-you-go has no no-train guarantee and only Provisioned Throughput plans include one, while the API Terms of Use (28 April 2026) commit that Luma won't use any API input or output to train, fine-tune or develop its models. One contradiction on the vendor's own pages, charged once, as celeris-1-decision's and rime-prism's were. https://docs.agents.lumalabs.ai/guides/pricing/ and https://lumalabs.ai/legal/api-terms-of-use"
        ],
        "verdict": "Clip prices are published per generation in credits at a $0.003 list rate, and 429s say which limit was hit. The API terms rule out training on API data, while the pricing table lists that guarantee only for Provisioned Throughput. Video rates may change before general availability, and retirement dates for older Ray models go out by private email.",
        "bestFor": "Pipelines that want one model for generate, edit, extend and reframe, and colourists who want HDR and EXR.",
        "strengths": [
          "Per-clip prices published in credits with a $0.003 list rate, $0.30 for 5 seconds at 720p",
          "429s carry Retry-After and say whether the per-minute or concurrency limit was hit",
          "API terms rule out training on API inputs and outputs",
          "A documented deletion call for generations, and a subprocessor list dated 4 October 2026",
          "Official Python, TypeScript and Go SDKs and a CLI"
        ],
        "weaknesses": [
          "Video rates are marked as subject to change before general availability",
          "Retirement dates for Ray 2 and Ray 3 go out by private email, not on a page",
          "The pricing table says Pay-as-you-go has no no-train guarantee, while the API terms say API data isn't used for training",
          "Rate-limit numbers only in the dashboard, no OpenAPI file or llms.txt, and no API changelog",
          "No SDK release since 5 August 2026, and the deletion routes aren't in the SDKs"
        ],
        "agentNotes": [
          "Send model `ray-3.2` and type `video`, with resolution and duration inside `video`. Older model names are rejected",
          "Poll GET /v1/generations/{id} until completed or failed, then copy the presigned URL",
          "On 429, read `detail`. Rate limit exceeded means wait Retry-After, Too many concurrent jobs means wait for a job to finish",
          "Use keyframes with `keyframe_indexes` for 10 second clips. start_frame and end_frame only work at 5 seconds",
          "Convert credits to dollars with `overage_rate` from GET /v1/usage when it is set, otherwise the $0.003 list rate"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 50.5
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 47,
          "payments": 20,
          "reliability": 57,
          "schema": 53,
          "security": 53,
          "transparency": 55
        },
        "provenanceScore": 78,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-04",
            "maintenance": "2026-11-04",
            "payments": "2026-11-04",
            "reliability": "2026-11-04",
            "schema": "2026-11-04",
            "security": "2026-11-04",
            "transparency": "2026-11-04"
          },
          "last": "2026-11-04",
          "lastMoved": "2026-11-04",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install luma-agents   # or: npm i luma-agents",
        "http": "curl -X POST https://agents.lumalabs.ai/v1/generations \\\n  -H \"Authorization: Bearer $LUMA_AGENTS_API_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"model\":\"ray-3.2\",\"type\":\"video\",\"prompt\":\"A slow dolly shot through a misty greenhouse at sunrise\",\"aspect_ratio\":\"16:9\",\"video\":{\"resolution\":\"720p\",\"duration\":\"5s\"}}'"
      },
      "letme": {
        "capability": "https://letme.dev/video.generate",
        "tool": "https://letme.dev/luma"
      },
      "area": "content",
      "unitPrices": [
        {
          "item": "Ray 3.2 720p",
          "unit": "video-second",
          "usd": 0.06,
          "note": "$0.30 per 5 second clip. 10 seconds is $0.90"
        },
        {
          "item": "Ray 3.2 1080p",
          "unit": "video-second",
          "usd": 0.24,
          "note": "$1.20 per 5 second clip. 10 seconds is $3.60"
        },
        {
          "item": "Ray 3.2 540p",
          "unit": "video-second",
          "usd": 0.03,
          "note": "$0.15 per 5 second clip"
        },
        {
          "item": "Ray 3.2 1080p HDR",
          "unit": "video-second",
          "usd": 0.48,
          "note": "$2.40 per 5 second clip"
        },
        {
          "item": "Ray 3.2 video edit 720p",
          "unit": "video-second",
          "usd": 0.216,
          "note": "$1.08 per 5 seconds"
        },
        {
          "item": "Ray 3.2 reframe 1080p",
          "unit": "video-second",
          "usd": 0.36
        }
      ],
      "provenance": {
        "legalEntity": "Luma AI, Inc.",
        "domain": "lumalabs.ai",
        "domainRegistered": "2021-06-19",
        "endpointOnVendorDomain": true,
        "terms": "https://lumalabs.ai/legal/tos",
        "privacy": "https://lumalabs.ai/legal/privacy",
        "statusPage": "https://status.lumalabs.ai",
        "changelog": "https://docs.lumalabs.ai/changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "The changelog is on the legacy docs site. The new Agents API docs have no changelog page"
        ],
        "score": 78
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/luma.json",
      "live": {
        "slug": "luma",
        "probe": {
          "target": "https://agents.lumalabs.ai/v1",
          "method": "get",
          "lastAt": "2026-11-08T00:55:49.814221739Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 446,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 73.96,
          "p50ms24h": 372,
          "p95ms24h": 483,
          "samples24h": 244,
          "samples30d": 7704,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 0
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 0
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 0
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 0
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 0
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 0
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 0
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 3
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 243,
              "ok": 243
            },
            {
              "date": "2026-11-08",
              "probes": 10,
              "ok": 10
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.lumalabs.ai",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-08T00:31:35.985662419Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "lumalabs/luma-agents-python",
            "version": "v0.5.0",
            "released": "2026-08-05",
            "seenAt": "2026-11-06T23:41:34.567584886Z"
          },
          {
            "registry": "npm",
            "name": "luma-agents",
            "version": "0.1.2",
            "seenAt": "2026-11-06T23:41:32.824231599Z"
          },
          {
            "registry": "pypi",
            "name": "luma-agents",
            "version": "0.5.0",
            "released": "2026-08-05",
            "seenAt": "2026-11-06T23:41:32.514698179Z"
          }
        ],
        "githubStars": 2,
        "npmWeekly": 2150,
        "pypiWeekly": 1074,
        "securityTxt": {
          "url": "https://lumalabs.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T15:59:52.063089676Z"
        },
        "domain": {
          "domain": "lumalabs.ai",
          "registered": "2021-06-19",
          "source": "https://rdap.identitydigital.services/rdap/domain/lumalabs.ai",
          "checkedAt": "2026-11-01T14:22:31.559622877Z"
        },
        "pages": [
          {
            "url": "https://docs.lumalabs.ai/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:06:53.750765224Z",
            "changedAt": "2026-10-13T20:15:10.827350564Z",
            "fingerprint": "d4e54b2878ea"
          },
          {
            "url": "https://docs.agents.lumalabs.ai/guides/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:04:57.291736322Z",
            "changedAt": "2026-10-27T03:43:09.912861947Z",
            "fingerprint": "86de33886b1b"
          },
          {
            "url": "https://lumalabs.ai/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:13:35.89659717Z",
            "changedAt": "2026-11-06T13:35:40.124281462Z",
            "fingerprint": "ce1f62b9bf85"
          },
          {
            "url": "https://lumalabs.ai/legal/tos",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:13:38.269199244Z",
            "changedAt": "2026-11-06T13:35:43.175451416Z",
            "fingerprint": "6d53fe4a16f9"
          }
        ],
        "github": {
          "repo": "lumalabs/luma-agents-python",
          "checkedAt": "2026-11-02T09:01:57.081936683Z",
          "stars": 2,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-09-17T22:09:08Z",
          "openIssues": 0,
          "openPRs": 1,
          "issuesOpened90d": 0,
          "issuesClosed90d": 0,
          "prsMerged90d": 1,
          "ci": {
            "branch": "main",
            "runs": 6,
            "success": 6,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-08-05T00:47:23Z"
          }
        },
        "updatedAt": "2026-11-08T00:55:49.814221739Z"
      }
    },
    "answer": "sync. labs MCP server scores 51.5 (D) on agent readiness against Luma AI API's 50.5 (D), and leads in 3 of 7 scored categories. Luma AI API leads on reliability, agent ergonomics, security \u0026 auth and transparency \u0026 trust.",
    "b": {
      "slug": "sync-labs-mcp",
      "name": "sync. labs MCP server",
      "vendor": "Synchronicity Labs (sync.)",
      "vendorUrl": "https://sync.so",
      "kind": "mcp",
      "category": "video-generation",
      "summary": "sync. labs' open-source MCP server lets an agent lip-sync video to new audio or a script, dub it into other languages with matching lips, and manage generations, hosted with OAuth for web clients or run locally with an API key.",
      "url": "https://www.anchorterminal.com/tools/sync-labs-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/sync-labs-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/sync-labs-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/sync-labs-mcp.json",
      "dns": "sync-labs-mcp.grade.anchorterminal.com",
      "repo": "https://github.com/synchronicity-labs/mcp-server",
      "license": "MIT",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://mcp.sync.so/mcp",
      "packages": [],
      "auth": "mixed",
      "authNotes": "OAuth for Claude Web and ChatGPT, tied to the active sync. organisation. Local and editor setups run @sync.so/mcp-server with a SYNC_API_KEY.",
      "pricing": "paid",
      "pricingNotes": "Plans from $5 a month (hobbyist) to $49 and up, plus usage per second of video (for example $5 a month plus $0.05 a second); dubbing audio $0.10 a second, text-to-speech $0.004 a second. A free try for videos up to a minute (checked 2026-11-07).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the MCP docs or pricing page (checked 2026-11-07).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-07"
      },
      "docsUrl": "https://sync.so/docs/plugins-and-extensions/mcp-server",
      "llmsTxt": "https://sync.so/llms.txt",
      "registryName": "io.github.synchronicity-labs/mcp-server",
      "capabilities": [
        "video.edit",
        "video.audio",
        "translation.dubbing"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "remote-mcp",
        "oauth",
        "api-key",
        "paid",
        "status-page",
        "open-source",
        "llms-txt",
        "mcp-registry"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 51.5,
        "grade": "D",
        "agentReady": false,
        "rank": 1026,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 10,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 55,
          "maintenance": 75,
          "payments": 30,
          "reliability": 43,
          "schema": 81,
          "security": 38,
          "transparency": 44
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-07"
        },
        "negative": 0,
        "verdict": "sync. labs' MCP server is open source, generated from its API spec with workflow tools on top, and released often, with clear per-second prices for lip sync and dubbing. Security and data handling are thinly documented, and there's no read-only mode.",
        "bestFor": "Agents that lip-sync or dub video into other languages.",
        "strengths": [
          "Open source under MIT, with tests and CI",
          "Tools generated from the public API spec, so they track the API",
          "Per-second prices published",
          "OAuth for web clients, API key locally",
          "Frequent tagged releases"
        ],
        "weaknesses": [
          "No read-only mode",
          "Data handling and security programme not documented in the pages read",
          "Only a short free try"
        ],
        "agentNotes": [
          "Get an estimate before long generations",
          "Dub or lip-sync only voices and faces the user has the right to use",
          "Check the active organisation before connecting with OAuth"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 51.5
          }
        ],
        "editorialScores": {
          "ergonomics": 55,
          "maintenance": 75,
          "payments": 30,
          "reliability": 43,
          "schema": 81,
          "security": 38,
          "transparency": 40
        },
        "provenanceScore": 48,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-07",
            "maintenance": "2026-11-07",
            "payments": "2026-11-07",
            "reliability": "2026-11-07",
            "schema": "2026-11-07",
            "security": "2026-11-07",
            "transparency": "2026-11-07"
          },
          "last": "2026-11-07",
          "oldest": "2026-11-07",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "claudeCode": "claude mcp add sync-labs --transport http https://mcp.sync.so/mcp",
        "config": {
          "mcpServers": {
            "sync-labs": {
              "url": "https://mcp.sync.so/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/video.edit",
        "tool": "https://letme.dev/sync-labs-mcp"
      },
      "area": "content",
      "unitPrices": [
        {
          "item": "Lip sync video (hobbyist)",
          "unit": "video-second",
          "usd": 0.05,
          "note": "Plus $5 a month plan"
        },
        {
          "item": "Dubbing audio",
          "unit": "video-second",
          "usd": 0.1
        }
      ],
      "provenance": {
        "legalEntity": "Synchronicity Labs",
        "domain": "sync.so",
        "domainRegistered": "",
        "domainNote": "Not looked up: RDAP isn't requested under the 1 November 2026 rules.",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "",
        "statusPage": "https://status.sync.so",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-07",
        "notes": [
          "The repository is MIT. Terms and privacy weren't read."
        ],
        "score": 48
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/sync-labs-mcp.json",
      "live": {
        "slug": "sync-labs-mcp",
        "probe": {
          "target": "https://mcp.sync.so/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-11-08T00:56:07.887985939Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 321,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 362,
          "p95ms24h": 437,
          "samples24h": 63,
          "samples30d": 63,
          "days": [
            {
              "date": "2026-11-07",
              "probes": 53,
              "ok": 53
            },
            {
              "date": "2026-11-08",
              "probes": 10,
              "ok": 10
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.sync.so",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-08T00:32:26.812315776Z"
        },
        "updatedAt": "2026-11-08T00:56:07.887985939Z"
      }
    },
    "edges": [
      {
        "by": 28,
        "category": "schema",
        "leads": "sync-labs-mcp",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "No public OpenAPI document is linked from the docs. The API reference at /api/ is generated per method with no visible spec download (0). docs.agents.lumalabs.ai/llms.txt returns 404, but every docs page links a Markdown twin (for example /index.md and /guides/pricing/index.md) (10). Guides cover generation, keyframes, edit, extend, reframe, deletion, files, usage and the migration, and say which options don't combine, such as start and end frames with 10 second clips (14). Typed fields for model, type, resolution and duration with fixed values (12). curl and SDK examples, both 429 bodies and generation failure codes are documented (12). Responses carry an X-API-Version header and the SDK repositories keep dated changelogs, but the API docs have no changelog and the public changelog page on lumalabs.ai was last updated in June 2025 (5). 0+10+14+12+12+5 = 53.",
          "b": "Tools generated from the public API specification plus workflow tools, with typed schemas in the source (25). llms.txt and .md pages (10). Tool table with descriptions (14 of 20). Typed from the API spec (12 of 15). Examples and an estimates tool; errors not documented (8 of 15). Tags v0.2.2 to v0.2.4 and dated commits (12 of 15). 25 + 10 + 14 + 12 + 8 + 12 = 81."
        },
        "scores": {
          "a": 53,
          "b": 81
        }
      },
      {
        "by": 28,
        "category": "maintenance",
        "leads": "sync-labs-mcp",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Model reading. The latest dated API change found is SDK v0.5.0, whose changelog dates it 4 August 2026 (tag 5 August), adding the layering parameter to generations. That is more than 90 days before 4 November, so 10 (within 180 days). The docs now carry deletion, files and usage guides with no dates, and the 3 November MCP connector runs Luma Agents workflows on a subscription, which the API doesn't serve, so neither counts (10). Ray 2, Ray 3 and their variants are retiring, but the cutoff dates go out in private notices and the migration guide gives none (5). No API changelog. The SDK changelogs are dated and support is an email address on the migration guide (7). Official SDKs for Python, TypeScript and Go and a CLI, last released on 5 August with Ray 3.2 and files support, though the new deletion routes aren't in them yet (15). Each SDK repository has a CI workflow (10). 10+5+7+15+10 = 47.",
          "b": "v0.2.4 and commits on 7 November 2026 (30). Three tags in recent weeks (20). Issues not read (0). Official registry entry io.github.synchronicity-labs/mcp-server (15). CI with verify, publish and review workflows (10). 30 + 20 + 0 + 15 + 10 = 75. Registry presence read from Anchor Terminal's own daily import of the official MCP registry (/api/v1/registry.json, 6 November 2026), not the registry's API."
        },
        "scores": {
          "a": 47,
          "b": 75
        }
      },
      {
        "by": 23,
        "category": "transparency",
        "leads": "luma",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed models. The terms give customers the outputs, with commercial use tied to an active paid plan (15). The API terms state that API inputs and outputs aren't used for training (10). The pricing page's comparison table says Pay-as-you-go has no no-train guarantee and only Provisioned Throughput does. That contradiction is charged once, as a misleading claim under negative events, as rime-prism's training contradiction is, so it doesn't also lower this line. The privacy policy (20 April 2026) describes retention by criteria without periods, and the deletion guide sets retention per API client with a one-year hold for moderation failures (5). The privacy policy was read and names US hosting with Standard Contractual Clauses for transfers. No DPA was read (5). A public migration guide without dates, retirement dates by email only (5). A subprocessor list (last updated 4 October 2026) names about 50 providers with their purpose, and the privacy policy says the services are hosted in the United States (15). 15+10+5+5+5+15 = 55.",
          "b": "MIT open source (30). Data handling not read (5 of 30). No deprecation policy; earlier tool names documented as superseded (5 of 20). Subprocessors not found (0). 30 + 5 + 5 + 0 = 40."
        },
        "scores": {
          "a": 67,
          "b": 44
        }
      },
      {
        "by": 15,
        "category": "security",
        "leads": "luma",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Model reading of the checklist (credential, training, retention, operator visibility, programme). Bearer keys created in the platform and shown once, with quota and limits shared by all keys of a client. No scopes found (20). The API terms of 28 April 2026 say Luma won't use API inputs or outputs to train or develop its models (20). A deletion call is now documented, DELETE /v1/generations/{id} with a deletion task polled at GET /v1/deletions/{task_id}, though the guide says it may not be enabled for every API client and the SDKs don't include it yet (5). Retention is set per API client, with no default period stated, and a generation that fails moderation can be held for at least a year (0). Rate-limit headers, a request id per call, and GET /v1/usage for spend by session or end user, with no audit log found (8). No security.txt (lumalabs.ai/.well-known/security.txt returns 404), bug bounty or certification found for Luma AI (0). 20+20+5+0+8+0 = 53.",
          "b": "OAuth per organisation, or an API key in the environment (22 of 30). No read-only mode (3 of 20). Media in and out, no third-party text (10). No audit log found (0). No security programme found (3 of 20). 22 + 3 + 10 + 0 + 3 = 38."
        },
        "scores": {
          "a": 53,
          "b": 38
        }
      },
      {
        "by": 14,
        "category": "reliability",
        "leads": "luma",
        "name": "Reliability",
        "reasons": {
          "a": "Better Stack status page at status.lumalabs.ai with API, Dream Machine and Luma Agents components, an incident list and an RSS feed (20). In the 90 days from 6 August the feed lists three incidents, all on legacy Ray2 models: Ray2 Flash timeouts on 2 to 3 September (about 9 hours) and 15 to 16 September (about 2 hours), and Ray2 queue times on 16 to 17 September (about 13 hours). The status page tags each with its API and Dream Machine components, and each hit one legacy model, so minor only (20). The authentication incident counted as a major on 1 October was on 16 July and has left the window. Limits are per minute and per concurrent job, but the numbers sit in the dashboard, not the docs (5). Every 429 carries Retry-After, with separate bodies for the per-minute and concurrency limits and backoff guidance with jitter. Rejected requests aren't queued and synchronous errors are never charged, which is safe-retry guidance, but there is no idempotency key, so 12 as settled in this run (12). No SLA document. The pricing page lists a latency SLA for Provisioned Throughput only as a table entry (0). The pricing page says video rates may change before general availability, so the video surface isn't GA yet (0). 20+20+5+12+0+0 = 57.",
          "b": "Status page at status.sync.so with maintenance and previous incidents (20). History not read (5). No MCP limits found (0). The source has abort-signal handling and recovery guidance for long jobs (8 of 15). No SLA found (0). Version 0.2.4, not labelled beta (10). 20 + 5 + 0 + 8 + 0 + 10 = 43."
        },
        "scores": {
          "a": 57,
          "b": 43
        }
      },
      {
        "by": 11,
        "category": "ergonomics",
        "leads": "luma",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Generations come back as small JSON objects with a presigned URL for the output (15). We found no callback for the Agents API, so jobs are polled (0 of 10). Resolution and duration set output size (10). The API reference lists create, get and delete for generations and a list call only for files, so there is no list of past generations (0 of 10). The 429 detail string tells an agent whether to wait for Retry-After or for a job to finish, and failures carry codes (16). No idempotency key. Moderated and failed generations are refunded and synchronous errors aren't charged, so a retry after a failure is safe (10). One generation endpoint with few required fields, and official SDKs for Python, TypeScript and Go plus a CLI (15). 15+0+10+0+16+10+15 = 66.",
          "b": "A generated catalogue filtered by client profile, curated for ChatGPT (15). Project history and estimates (12 of 20). Recovery tools; errors not documented (8 of 20). Annotations not read (5 of 20). OAuth or a key, npm package and library use (15). 15 + 12 + 8 + 5 + 15 = 55."
        },
        "scores": {
          "a": 66,
          "b": 55
        }
      }
    ],
    "facts": [
      {
        "a": "Model API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Luma AI",
        "b": "Synchronicity Labs (sync.)",
        "name": "Vendor"
      },
      {
        "a": "https://agents.lumalabs.ai/v1",
        "b": "https://mcp.sync.so/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "$0.216 per second of video",
        "b": "not published",
        "name": "Price for video edit"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0 (SDKs)",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "io.github.synchronicity-labs/mcp-server",
        "name": "MCP registry"
      },
      {
        "a": "2026-08-05",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "2026-05-14",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2026-04-20",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "2 stars, 982 npm/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "sync. labs MCP server scores 51.5 (D) on agent readiness against Luma AI API's 50.5 (D), and leads in 3 of 7 scored categories. Luma AI API leads on reliability, agent ergonomics, security \u0026 auth and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Luma AI API or sync. labs MCP server?"
      },
      {
        "answer": "Luma AI API needs an API key. sync. labs MCP server takes an API key or an OAuth sign-in.",
        "question": "Do Luma AI API and sync. labs MCP server need an API key?"
      },
      {
        "answer": "Yes. Luma AI API has a hosted endpoint at https://agents.lumalabs.ai/v1 and sync. labs MCP server at https://mcp.sync.so/mcp.",
        "question": "Can an agent call Luma AI API and sync. labs MCP server without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Luma AI API. sync. labs MCP server is open source (MIT).",
        "question": "Are Luma AI API and sync. labs MCP server open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 57 against 43",
          "Agent ergonomics, 66 against 55",
          "Security \u0026 auth, 53 against 38",
          "Transparency \u0026 trust, 67 against 44"
        ],
        "also": null,
        "goodFor": "Pipelines that want one model for generate, edit, extend and reframe, and colourists who want HDR and EXR.",
        "slug": "luma",
        "watchFor": "Video rates are marked as subject to change before general availability"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 81 against 53",
          "Payments \u0026 pricing, 30 against 20",
          "Maintenance \u0026 community, 75 against 47"
        ],
        "also": [
          "Open source"
        ],
        "goodFor": "Agents that lip-sync or dub video into other languages.",
        "slug": "sync-labs-mcp",
        "watchFor": "No read-only mode"
      }
    ],
    "history": {
      "luma": [
        {
          "causes": [
            "evidence",
            "time"
          ],
          "date": "2026-11-04",
          "delta": 2.2,
          "from": 48.3,
          "fromGrade": "D",
          "to": 50.5,
          "toGrade": "D"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 48.2,
          "fromGrade": "D",
          "to": 48.3,
          "toGrade": "D"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.5,
          "from": 48.7,
          "fromGrade": "D",
          "to": 48.2,
          "toGrade": "D"
        }
      ],
      "sync-labs-mcp": null
    },
    "job": {
      "capability": "video.edit",
      "name": "Video edit"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/alibaba-wan-vs-luma.json",
        "title": "Alibaba Wan (Model Studio) vs Luma AI API",
        "url": "https://www.anchorterminal.com/compare/alibaba-wan-vs-luma"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fal-video-vs-luma.json",
        "title": "fal video models vs Luma AI API",
        "url": "https://www.anchorterminal.com/compare/fal-video-vs-luma"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framefields-vs-luma.json",
        "title": "framefields vs Luma AI API",
        "url": "https://www.anchorterminal.com/compare/framefields-vs-luma"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-veo-vs-luma.json",
        "title": "Google Veo vs Luma AI API",
        "url": "https://www.anchorterminal.com/compare/google-veo-vs-luma"
      },
      {
        "json": "https://www.anchorterminal.com/compare/higgsfield-vs-luma.json",
        "title": "Higgsfield API vs Luma AI API",
        "url": "https://www.anchorterminal.com/compare/higgsfield-vs-luma"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperframes-vs-luma.json",
        "title": "HyperFrames vs Luma AI API",
        "url": "https://www.anchorterminal.com/compare/hyperframes-vs-luma"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kling-vs-luma.json",
        "title": "Kling AI API vs Luma AI API",
        "url": "https://www.anchorterminal.com/compare/kling-vs-luma"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-magic-hour-mcp.json",
        "title": "Luma AI API vs Magic Hour MCP",
        "url": "https://www.anchorterminal.com/compare/luma-vs-magic-hour-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-minimax-video.json",
        "title": "Luma AI API vs MiniMax Video API",
        "url": "https://www.anchorterminal.com/compare/luma-vs-minimax-video"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-openai-sora.json",
        "title": "Luma AI API vs OpenAI Sora API",
        "url": "https://www.anchorterminal.com/compare/luma-vs-openai-sora"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-pika.json",
        "title": "Luma AI API vs Pika API",
        "url": "https://www.anchorterminal.com/compare/luma-vs-pika"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-pixverse.json",
        "title": "Luma AI API vs PixVerse API",
        "url": "https://www.anchorterminal.com/compare/luma-vs-pixverse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-popcraft-mcp.json",
        "title": "Luma AI API vs Popcraft MCP",
        "url": "https://www.anchorterminal.com/compare/luma-vs-popcraft-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-replicate-video.json",
        "title": "Luma AI API vs Replicate video models",
        "url": "https://www.anchorterminal.com/compare/luma-vs-replicate-video"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-runway.json",
        "title": "Luma AI API vs Runway API",
        "url": "https://www.anchorterminal.com/compare/luma-vs-runway"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-seedance-on-byteplus-modelark.json",
        "title": "Luma AI API vs Seedance on BytePlus ModelArk",
        "url": "https://www.anchorterminal.com/compare/luma-vs-seedance-on-byteplus-modelark"
      },
      {
        "json": "https://www.anchorterminal.com/compare/luma-vs-vidu.json",
        "title": "Luma AI API vs Vidu API",
        "url": "https://www.anchorterminal.com/compare/luma-vs-vidu"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alibaba-wan-vs-sync-labs-mcp.json",
        "title": "Alibaba Wan (Model Studio) vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/alibaba-wan-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clueso-video-vs-luma.json",
        "title": "Clueso vs Luma AI API",
        "url": "https://www.anchorterminal.com/compare/clueso-video-vs-luma"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clueso-video-vs-sync-labs-mcp.json",
        "title": "Clueso vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/clueso-video-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fal-video-vs-sync-labs-mcp.json",
        "title": "fal video models vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/fal-video-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/framefields-vs-sync-labs-mcp.json",
        "title": "framefields vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/framefields-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/higgsfield-vs-sync-labs-mcp.json",
        "title": "Higgsfield API vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/higgsfield-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kling-vs-sync-labs-mcp.json",
        "title": "Kling AI API vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/kling-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/magic-hour-mcp-vs-sync-labs-mcp.json",
        "title": "Magic Hour MCP vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/magic-hour-mcp-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/minimax-video-vs-sync-labs-mcp.json",
        "title": "MiniMax Video API vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/minimax-video-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pika-vs-sync-labs-mcp.json",
        "title": "Pika API vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/pika-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pixverse-vs-sync-labs-mcp.json",
        "title": "PixVerse API vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/pixverse-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/replicate-video-vs-sync-labs-mcp.json",
        "title": "Replicate video models vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/replicate-video-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/runway-vs-sync-labs-mcp.json",
        "title": "Runway API vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/runway-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/seedance-on-byteplus-modelark-vs-sync-labs-mcp.json",
        "title": "Seedance on BytePlus ModelArk vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/seedance-on-byteplus-modelark-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-veo-vs-sync-labs-mcp.json",
        "title": "Google Veo vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/google-veo-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-sora-vs-sync-labs-mcp.json",
        "title": "OpenAI Sora API vs sync. labs MCP server",
        "url": "https://www.anchorterminal.com/compare/openai-sora-vs-sync-labs-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sync-labs-mcp-vs-vidu.json",
        "title": "sync. labs MCP server vs Vidu API",
        "url": "https://www.anchorterminal.com/compare/sync-labs-mcp-vs-vidu"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 14,
        "edge": "luma",
        "key": "reliability",
        "luma": 57,
        "name": "Reliability",
        "sync-labs-mcp": 43,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 28,
        "edge": "sync-labs-mcp",
        "key": "schema",
        "luma": 53,
        "name": "Schema \u0026 documentation",
        "sync-labs-mcp": 81,
        "weight": 13
      },
      {
        "by": 11,
        "edge": "luma",
        "key": "ergonomics",
        "luma": 66,
        "name": "Agent ergonomics",
        "sync-labs-mcp": 55,
        "weight": 13
      },
      {
        "by": 15,
        "edge": "luma",
        "key": "security",
        "luma": 53,
        "name": "Security \u0026 auth",
        "sync-labs-mcp": 38,
        "weight": 14
      },
      {
        "by": 10,
        "edge": "sync-labs-mcp",
        "key": "payments",
        "luma": 20,
        "name": "Payments \u0026 pricing",
        "sync-labs-mcp": 30,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 28,
        "edge": "sync-labs-mcp",
        "key": "maintenance",
        "luma": 47,
        "name": "Maintenance \u0026 community",
        "sync-labs-mcp": 75,
        "weight": 7
      },
      {
        "by": 23,
        "edge": "luma",
        "key": "transparency",
        "luma": 67,
        "name": "Transparency \u0026 trust",
        "sync-labs-mcp": 44,
        "weight": 7
      }
    ],
    "summary": "sync. labs MCP server scores 51.5 (D) on agent readiness against Luma AI API's 50.5 (D), and leads in 3 of 7 scored categories. Luma AI API leads on reliability, agent ergonomics, security \u0026 auth and transparency \u0026 trust. Both do video edit.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "luma": "Clip prices are published per generation in credits at a $0.003 list rate, and 429s say which limit was hit. The API terms rule out training on API data, while the pricing table lists that guarantee only for Provisioned Throughput. Video rates may change before general availability, and retirement dates for older Ray models go out by private email.",
      "sync-labs-mcp": "sync. labs' MCP server is open source, generated from its API spec with workflow tools on top, and released often, with clear per-second prices for lip sync and dubbing. Security and data handling are thinly documented, and there's no read-only mode."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/luma-vs-sync-labs-mcp",
    "json": "https://www.anchorterminal.com/compare/luma-vs-sync-labs-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/luma-vs-sync-labs-mcp.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/luma-vs-sync-labs-mcp.min.md"
  },
  "markdown": "sync. labs MCP server scores 51.5 (D) on agent readiness against Luma AI API's 50.5 (D), and leads in 3 of 7 scored categories. Luma AI API leads on reliability, agent ergonomics, security \u0026 auth and transparency \u0026 trust. Both do video edit.\n\n- Luma AI API: grade D, 50.5/100, rank #1058 of 1510. Markdown https://www.anchorterminal.com/tools/luma.md · JSON https://www.anchorterminal.com/api/v1/tools/luma.json\n- sync. labs MCP server: grade D, 51.5/100, rank #1026 of 1510. Markdown https://www.anchorterminal.com/tools/sync-labs-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/sync-labs-mcp.json\n- Best video generation for AI agents: https://www.anchorterminal.com/best/video-generation/index.md\n- All 183 video comparisons: https://www.anchorterminal.com/compare/video-generation/index.md\n\n## Which one, for what\n\n### Luma AI API (D)\n\nGood for: Pipelines that want one model for generate, edit, extend and reframe, and colourists who want HDR and EXR.\n\nAhead on:\n- Reliability, 57 against 43\n- Agent ergonomics, 66 against 55\n- Security \u0026 auth, 53 against 38\n- Transparency \u0026 trust, 67 against 44\n\nWatch for: Video rates are marked as subject to change before general availability\n\n### sync. labs MCP server (D)\n\nGood for: Agents that lip-sync or dub video into other languages.\n\nAhead on:\n- Schema \u0026 documentation, 81 against 53\n- Payments \u0026 pricing, 30 against 20\n- Maintenance \u0026 community, 75 against 47\n\nAlso in its favour:\n- Open source\n\nWatch for: No read-only mode\n\n\n## Why the edge\n\n### Schema \u0026 documentation: sync. labs MCP server +28\n\n- Luma AI API (53): No public OpenAPI document is linked from the docs. The API reference at /api/ is generated per method with no visible spec download (0). docs.agents.lumalabs.ai/llms.txt returns 404, but every docs page links a Markdown twin (for example /index.md and /guides/pricing/index.md) (10). Guides cover generation, keyframes, edit, extend, reframe, deletion, files, usage and the migration, and say which options don't combine, such as start and end frames with 10 second clips (14). Typed fields for model, type, resolution and duration with fixed values (12). curl and SDK examples, both 429 bodies and generation failure codes are documented (12). Responses carry an X-API-Version header and the SDK repositories keep dated changelogs, but the API docs have no changelog and the public changelog page on lumalabs.ai was last updated in June 2025 (5). 0+10+14+12+12+5 = 53.\n- sync. labs MCP server (81): Tools generated from the public API specification plus workflow tools, with typed schemas in the source (25). llms.txt and .md pages (10). Tool table with descriptions (14 of 20). Typed from the API spec (12 of 15). Examples and an estimates tool; errors not documented (8 of 15). Tags v0.2.2 to v0.2.4 and dated commits (12 of 15). 25 + 10 + 14 + 12 + 8 + 12 = 81.\n\n### Maintenance \u0026 community: sync. labs MCP server +28\n\n- Luma AI API (47): Model reading. The latest dated API change found is SDK v0.5.0, whose changelog dates it 4 August 2026 (tag 5 August), adding the layering parameter to generations. That is more than 90 days before 4 November, so 10 (within 180 days). The docs now carry deletion, files and usage guides with no dates, and the 3 November MCP connector runs Luma Agents workflows on a subscription, which the API doesn't serve, so neither counts (10). Ray 2, Ray 3 and their variants are retiring, but the cutoff dates go out in private notices and the migration guide gives none (5). No API changelog. The SDK changelogs are dated and support is an email address on the migration guide (7). Official SDKs for Python, TypeScript and Go and a CLI, last released on 5 August with Ray 3.2 and files support, though the new deletion routes aren't in them yet (15). Each SDK repository has a CI workflow (10). 10+5+7+15+10 = 47.\n- sync. labs MCP server (75): v0.2.4 and commits on 7 November 2026 (30). Three tags in recent weeks (20). Issues not read (0). Official registry entry io.github.synchronicity-labs/mcp-server (15). CI with verify, publish and review workflows (10). 30 + 20 + 0 + 15 + 10 = 75. Registry presence read from Anchor Terminal's own daily import of the official MCP registry (/api/v1/registry.json, 6 November 2026), not the registry's API.\n\n### Transparency \u0026 trust: Luma AI API +23\n\n- Luma AI API (67): Closed models. The terms give customers the outputs, with commercial use tied to an active paid plan (15). The API terms state that API inputs and outputs aren't used for training (10). The pricing page's comparison table says Pay-as-you-go has no no-train guarantee and only Provisioned Throughput does. That contradiction is charged once, as a misleading claim under negative events, as rime-prism's training contradiction is, so it doesn't also lower this line. The privacy policy (20 April 2026) describes retention by criteria without periods, and the deletion guide sets retention per API client with a one-year hold for moderation failures (5). The privacy policy was read and names US hosting with Standard Contractual Clauses for transfers. No DPA was read (5). A public migration guide without dates, retirement dates by email only (5). A subprocessor list (last updated 4 October 2026) names about 50 providers with their purpose, and the privacy policy says the services are hosted in the United States (15). 15+10+5+5+5+15 = 55.\n- sync. labs MCP server (44): MIT open source (30). Data handling not read (5 of 30). No deprecation policy; earlier tool names documented as superseded (5 of 20). Subprocessors not found (0). 30 + 5 + 5 + 0 = 40.\n\n### Security \u0026 auth: Luma AI API +15\n\n- Luma AI API (53): Model reading of the checklist (credential, training, retention, operator visibility, programme). Bearer keys created in the platform and shown once, with quota and limits shared by all keys of a client. No scopes found (20). The API terms of 28 April 2026 say Luma won't use API inputs or outputs to train or develop its models (20). A deletion call is now documented, DELETE /v1/generations/{id} with a deletion task polled at GET /v1/deletions/{task_id}, though the guide says it may not be enabled for every API client and the SDKs don't include it yet (5). Retention is set per API client, with no default period stated, and a generation that fails moderation can be held for at least a year (0). Rate-limit headers, a request id per call, and GET /v1/usage for spend by session or end user, with no audit log found (8). No security.txt (lumalabs.ai/.well-known/security.txt returns 404), bug bounty or certification found for Luma AI (0). 20+20+5+0+8+0 = 53.\n- sync. labs MCP server (38): OAuth per organisation, or an API key in the environment (22 of 30). No read-only mode (3 of 20). Media in and out, no third-party text (10). No audit log found (0). No security programme found (3 of 20). 22 + 3 + 10 + 0 + 3 = 38.\n\n### Reliability: Luma AI API +14\n\n- Luma AI API (57): Better Stack status page at status.lumalabs.ai with API, Dream Machine and Luma Agents components, an incident list and an RSS feed (20). In the 90 days from 6 August the feed lists three incidents, all on legacy Ray2 models: Ray2 Flash timeouts on 2 to 3 September (about 9 hours) and 15 to 16 September (about 2 hours), and Ray2 queue times on 16 to 17 September (about 13 hours). The status page tags each with its API and Dream Machine components, and each hit one legacy model, so minor only (20). The authentication incident counted as a major on 1 October was on 16 July and has left the window. Limits are per minute and per concurrent job, but the numbers sit in the dashboard, not the docs (5). Every 429 carries Retry-After, with separate bodies for the per-minute and concurrency limits and backoff guidance with jitter. Rejected requests aren't queued and synchronous errors are never charged, which is safe-retry guidance, but there is no idempotency key, so 12 as settled in this run (12). No SLA document. The pricing page lists a latency SLA for Provisioned Throughput only as a table entry (0). The pricing page says video rates may change before general availability, so the video surface isn't GA yet (0). 20+20+5+12+0+0 = 57.\n- sync. labs MCP server (43): Status page at status.sync.so with maintenance and previous incidents (20). History not read (5). No MCP limits found (0). The source has abort-signal handling and recovery guidance for long jobs (8 of 15). No SLA found (0). Version 0.2.4, not labelled beta (10). 20 + 5 + 0 + 8 + 0 + 10 = 43.\n\n### Agent ergonomics: Luma AI API +11\n\n- Luma AI API (66): Generations come back as small JSON objects with a presigned URL for the output (15). We found no callback for the Agents API, so jobs are polled (0 of 10). Resolution and duration set output size (10). The API reference lists create, get and delete for generations and a list call only for files, so there is no list of past generations (0 of 10). The 429 detail string tells an agent whether to wait for Retry-After or for a job to finish, and failures carry codes (16). No idempotency key. Moderated and failed generations are refunded and synchronous errors aren't charged, so a retry after a failure is safe (10). One generation endpoint with few required fields, and official SDKs for Python, TypeScript and Go plus a CLI (15). 15+0+10+0+16+10+15 = 66.\n- sync. labs MCP server (55): A generated catalogue filtered by client profile, curated for ChatGPT (15). Project history and estimates (12 of 20). Recovery tools; errors not documented (8 of 20). Annotations not read (5 of 20). OAuth or a key, npm package and library use (15). 15 + 12 + 8 + 5 + 15 = 55.\n\n## Score by category\n\n| Category | Weight | Luma AI API | sync. labs MCP server | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 57 | 43 | Luma AI API +14 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 53 | 81 | sync. labs MCP server +28 |\n| Agent ergonomics | 13% (16.2 this run) | 66 | 55 | Luma AI API +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 53 | 38 | Luma AI API +15 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 30 | sync. labs MCP server +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 47 | 75 | sync. labs MCP server +28 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 67 | 44 | Luma AI API +23 |\n| Negative events | ≤15 | -2 | 0 | |\n| **Total** | | **50.5 · D** | **51.5 · D** | |\n\n## Facts side by side\n\n| Fact | Luma AI API | sync. labs MCP server |\n| --- | --- | --- |\n| Kind | Model API | MCP server |\n| Vendor | Luma AI | Synchronicity Labs (sync.) |\n| Hosted endpoint | `https://agents.lumalabs.ai/v1` | `https://mcp.sync.so/mcp` |\n| Transports | HTTP | Streamable HTTP |\n| Auth | API key | OAuth or key |\n| Pricing | Pay per use | Paid |\n| Price for video edit | $0.216 per second of video | not published |\n| x402 | no | no |\n| Licence | Apache-2.0 (SDKs) | MIT |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| MCP registry | not listed | `io.github.synchronicity-labs/mcp-server` |\n| Last release | 2026-08-05 | none |\n| Terms last updated | 2026-05-14 | no document linked |\n| Privacy policy last updated | 2026-04-20 | no document linked |\n| Customer content may train models | yes | not read yet |\n| Terms restrict automated access | yes | not read yet |\n| Terms restrict benchmarking | yes | not read yet |\n| Terms or service can change without notice | yes | not read yet |\n| Arbitration or class-action waiver | yes | not read yet |\n| Popularity | 2 stars, 982 npm/wk | none |\n| Agent reviews | 3/5 (2) | none |\n\n## How the scores have moved\n\n### Luma AI API\n\n- +2.2 on 4 November 2026: new evidence, time\n- +0.1 on 27 October 2026: checklist\n- -0.5 on 8 October 2026: checklist\n\n### sync. labs MCP server\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Luma AI API.** Clip prices are published per generation in credits at a $0.003 list rate, and 429s say which limit was hit. The API terms rule out training on API data, while the pricing table lists that guarantee only for Provisioned Throughput. Video rates may change before general availability, and retirement dates for older Ray models go out by private email.\n\n**sync. labs MCP server.** sync. labs' MCP server is open source, generated from its API spec with workflow tools on top, and released often, with clear per-second prices for lip sync and dubbing. Security and data handling are thinly documented, and there's no read-only mode.\n\n## Before you call either\n\n### Luma AI API\n\n1. Send model `ray-3.2` and type `video`, with resolution and duration inside `video`. Older model names are rejected\n2. Poll GET /v1/generations/{id} until completed or failed, then copy the presigned URL\n3. On 429, read `detail`. Rate limit exceeded means wait Retry-After, Too many concurrent jobs means wait for a job to finish\n4. Use keyframes with `keyframe_indexes` for 10 second clips. start_frame and end_frame only work at 5 seconds\n5. Convert credits to dollars with `overage_rate` from GET /v1/usage when it is set, otherwise the $0.003 list rate\n\n### sync. labs MCP server\n\n1. Get an estimate before long generations\n2. Dub or lip-sync only voices and faces the user has the right to use\n3. Check the active organisation before connecting with OAuth\n\n## Questions\n\n### Which is better for AI agents, Luma AI API or sync. labs MCP server?\n\nsync. labs MCP server scores 51.5 (D) on agent readiness against Luma AI API's 50.5 (D), and leads in 3 of 7 scored categories. Luma AI API leads on reliability, agent ergonomics, security \u0026 auth and transparency \u0026 trust.\n\n### Do Luma AI API and sync. labs MCP server need an API key?\n\nLuma AI API needs an API key. sync. labs MCP server takes an API key or an OAuth sign-in.\n\n### Can an agent call Luma AI API and sync. labs MCP server without installing anything?\n\nYes. Luma AI API has a hosted endpoint at https://agents.lumalabs.ai/v1 and sync. labs MCP server at https://mcp.sync.so/mcp.\n\n### Are Luma AI API and sync. labs MCP server open source?\n\nNo open-source release is listed for Luma AI API. sync. labs MCP server is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/luma-vs-sync-labs-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/luma-vs-sync-labs-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"luma\", \"b\": \"sync-labs-mcp\"}`. From a terminal: `anchor compare luma sync-labs-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/luma.json and https://www.anchorterminal.com/api/v1/tools/sync-labs-mcp.json\n\n## Other comparisons with Luma AI API or sync. labs MCP server\n\n- [Alibaba Wan (Model Studio) vs Luma AI API](https://www.anchorterminal.com/compare/alibaba-wan-vs-luma.md)\n- [fal video models vs Luma AI API](https://www.anchorterminal.com/compare/fal-video-vs-luma.md)\n- [framefields vs Luma AI API](https://www.anchorterminal.com/compare/framefields-vs-luma.md)\n- [Google Veo vs Luma AI API](https://www.anchorterminal.com/compare/google-veo-vs-luma.md)\n- [Higgsfield API vs Luma AI API](https://www.anchorterminal.com/compare/higgsfield-vs-luma.md)\n- [HyperFrames vs Luma AI API](https://www.anchorterminal.com/compare/hyperframes-vs-luma.md)\n- [Kling AI API vs Luma AI API](https://www.anchorterminal.com/compare/kling-vs-luma.md)\n- [Luma AI API vs Magic Hour MCP](https://www.anchorterminal.com/compare/luma-vs-magic-hour-mcp.md)\n- [Luma AI API vs MiniMax Video API](https://www.anchorterminal.com/compare/luma-vs-minimax-video.md)\n- [Luma AI API vs OpenAI Sora API](https://www.anchorterminal.com/compare/luma-vs-openai-sora.md)\n- [Luma AI API vs Pika API](https://www.anchorterminal.com/compare/luma-vs-pika.md)\n- [Luma AI API vs PixVerse API](https://www.anchorterminal.com/compare/luma-vs-pixverse.md)\n- [Luma AI API vs Popcraft MCP](https://www.anchorterminal.com/compare/luma-vs-popcraft-mcp.md)\n- [Luma AI API vs Replicate video models](https://www.anchorterminal.com/compare/luma-vs-replicate-video.md)\n- [Luma AI API vs Runway API](https://www.anchorterminal.com/compare/luma-vs-runway.md)\n- [Luma AI API vs Seedance on BytePlus ModelArk](https://www.anchorterminal.com/compare/luma-vs-seedance-on-byteplus-modelark.md)\n- [Luma AI API vs Vidu API](https://www.anchorterminal.com/compare/luma-vs-vidu.md)\n- [Alibaba Wan (Model Studio) vs sync. labs MCP server](https://www.anchorterminal.com/compare/alibaba-wan-vs-sync-labs-mcp.md)\n- [Clueso vs Luma AI API](https://www.anchorterminal.com/compare/clueso-video-vs-luma.md)\n- [Clueso vs sync. labs MCP server](https://www.anchorterminal.com/compare/clueso-video-vs-sync-labs-mcp.md)\n- [fal video models vs sync. labs MCP server](https://www.anchorterminal.com/compare/fal-video-vs-sync-labs-mcp.md)\n- [framefields vs sync. labs MCP server](https://www.anchorterminal.com/compare/framefields-vs-sync-labs-mcp.md)\n- [Higgsfield API vs sync. labs MCP server](https://www.anchorterminal.com/compare/higgsfield-vs-sync-labs-mcp.md)\n- [Kling AI API vs sync. labs MCP server](https://www.anchorterminal.com/compare/kling-vs-sync-labs-mcp.md)\n- [Magic Hour MCP vs sync. labs MCP server](https://www.anchorterminal.com/compare/magic-hour-mcp-vs-sync-labs-mcp.md)\n- [MiniMax Video API vs sync. labs MCP server](https://www.anchorterminal.com/compare/minimax-video-vs-sync-labs-mcp.md)\n- [Pika API vs sync. labs MCP server](https://www.anchorterminal.com/compare/pika-vs-sync-labs-mcp.md)\n- [PixVerse API vs sync. labs MCP server](https://www.anchorterminal.com/compare/pixverse-vs-sync-labs-mcp.md)\n- [Replicate video models vs sync. labs MCP server](https://www.anchorterminal.com/compare/replicate-video-vs-sync-labs-mcp.md)\n- [Runway API vs sync. labs MCP server](https://www.anchorterminal.com/compare/runway-vs-sync-labs-mcp.md)\n- [Seedance on BytePlus ModelArk vs sync. labs MCP server](https://www.anchorterminal.com/compare/seedance-on-byteplus-modelark-vs-sync-labs-mcp.md)\n- [Google Veo vs sync. labs MCP server](https://www.anchorterminal.com/compare/google-veo-vs-sync-labs-mcp.md)\n- [OpenAI Sora API vs sync. labs MCP server](https://www.anchorterminal.com/compare/openai-sora-vs-sync-labs-mcp.md)\n- [sync. labs MCP server vs Vidu API](https://www.anchorterminal.com/compare/sync-labs-mcp-vs-vidu.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Luma AI API vs sync. labs MCP server",
        "url": ""
      }
    ],
    "description": "sync. labs scores 51.5 (D) to Luma AI's 50.5 (D) for video edit. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Luma AI API D 50.5",
      "sync. labs MCP server D 51.5",
      "scores"
    ],
    "h1": "Luma AI API vs sync. labs MCP server",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/luma-vs-sync-labs-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Luma AI vs sync. labs for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/luma-vs-sync-labs-mcp"
  },
  "tokens": {
    "markdown": 4800,
    "slim": 2730
  },
  "version": 1
}
