Limits

Every limit an agent can meet, with the error it returns (error codes). Plan values come from Carnival's plans table; only the public plans are listed.

Sites

Limit Free plan When exceeded
Live sites per account 3 LIVE_SITE_LIMIT_REACHED
Site lifetime 7 days from the first publish; updates keep it —
Files per site 250 TOO_MANY_FILES
Site size 25 MiB (26,214,400 bytes) SITE_TOO_LARGE
File size (decoded) 4 MiB (4,194,304 bytes) FILE_TOO_LARGE

Site traffic is subject to fair use.

Each carnival_deploy call

Limit Free plan When exceeded
Decoded file bytes per call 4 MiB (4,194,304 bytes) PAYLOAD_TOO_LARGE
Files with content in a call with finalize=false ({path, sha256} entries not counted) 72 TOO_MANY_FILES_IN_CALL
Entries in a call with finalize=true ({path, sha256} entries counted) 30 TOO_MANY_FILES_IN_CALL
files entries 250 schema validation (uncoded Input validation error text)
delete_paths entries 250 schema validation (uncoded Input validation error text)
Pieces of one file (parts) 2–128 schema validation (uncoded Input validation error text)
Path length 200 characters schema validation (uncoded Input validation error text)
title length 80 characters schema validation (uncoded Input validation error text)
Staged upload (deploy_id) lifetime 60 minutes from its first call DEPLOY_EXPIRED

A request to /mcp carries at most 8 MiB (8,388,608 bytes); a larger body gets HTTP 413. On Muse, keep each call's arguments under about 90 KB: send files over several calls with finalize=false.

Rates

Limit Free plan When exceeded
Publishes per UTC hour (the dashboard's Redeploy included) 20 RATE_LIMITED (finalizes_per_hour)
Publishes per UTC day 100 RATE_LIMITED (deploys_per_day)
New sites per UTC day (fewer for new and restricted accounts) 10 RATE_LIMITED (new_sites_per_day)
Content rejections before publishing pauses 5 per UTC day, then paused for 24 hours REJECTION_COOLDOWN

Request rates (every plan; approximate, counted per Cloudflare location):

Limit Rate When exceeded
carnival_deploy calls 30 per minute RATE_LIMITED (calls_per_minute)
carnival_status and carnival_logs calls (counted apart from deploys) 30 per minute RATE_LIMITED (calls_per_minute)
Requests to /mcp with a body over 1 MiB (1,048,576 bytes), or with no Content-Length (counted apart) 30 per minute HTTP 429 (Retry-After: 60)
Client registrations (POST https://carnival-staging.dev/register), per IP address 10 per minute HTTP 429
Sign-in and consent pages, per IP address 30 per minute HTTP 429

A limit result carries error.retry_after_seconds: wait that long, never retry in a loop.

This page as Markdown