Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.chatblocks.ai/llms.txt

Use this file to discover all available pages before exploring further.

ChatBlocks has three plans. Limits are enforced at create-time on the server — there’s no soft cap or “grace” behavior; over-limit writes return LIMIT_REACHED and the resource isn’t created.
Coding agents: call the MCP workspace.get tool before writes to fetch the current limits payload. Each resource includes used / max / resetsAt so you can preflight and skip the write rather than burning a tool call on a 4xx. For period-based limits (builds, AI generation), resetsAt is the first of next month in UTC; count-based limits return null for resetsAt.

Plans

PlanPriceWho it’s for
Free$0Trying out the platform. Hard caps on everything that costs money.
Builder9/monthor9 / month or 89 / yearSolo operators. Single-paying-owner model with read-only co-members.
EnterpriseContact salesTeams, custom caps, manual plan flip — no Stripe subscription.
The plan literal on workspaces.plan is exactly "free" | "builder" | "enterprise".

Per-resource caps

These are the v1.4 limits, sourced from apps/web/convex/lib/limits.ts:
ResourceFreeBuilderEnterprise
Blocks1010010,000
Canvases2201,000
Scheduled runs15500
Data sources (per type)110100
BYOK keys0350
Workspace members1unlimitedunlimited
Builds per month1001,000100,000
AI-generated blocks per month03010,000
MCP requests per minute606006,000
Notes on a few of these:
  • Data sources are capped per type — Free can have 1 Stripe, 1 Postgres, 1 webhook, and 1 outbound MCP simultaneously. Total cap across types is 4, not 1.
  • BYOK keys = 0 on Free. You can’t bring an Anthropic / OpenAI / Google key on Free, which means you can’t run scheduled-run agents or use blocks.create AI generation. The free authoring path is the in-app editor and the MCP blocks.init + setFiles + build + publish loop with your agent (your agent’s tokens, not ours).
  • AI-generated blocks per month = 0 on Freeblocks.create (the streaming AI-generation tool) is Builder-only. blocks.init (scaffold without AI) is free on every plan.
  • Members. Builder is one operator: the owner has write powers, and any co-members are viewers (read-only). See Workspaces → Builder co-member model.
  • MCP rate limit is per-key, sliding window. Different keys on the same workspace get independent budgets.

Trial and refund policy

Upgrading to Builder gives you a 14-day free trial. A card is required up-front (Stripe Checkout); the trial converts to paid on day 15 unless you cancel via the Customer Portal. No refunds. The trial is the refund — if Builder isn’t right for you, cancel during the trial and you’re never charged. This is shown on the Stripe Checkout page itself via custom_text.submit.message (“14-day free trial included. All sales final after the trial.”) and again on /settings/billing.

Upgrading

Workspace admins trigger an upgrade from /settings/billing → “Upgrade to Builder” → Stripe Checkout (hosted, no UI on our side). On checkout.session.completed, the workspace’s plan flips to builder and the limit table jumps immediately. Plan switching, cancellation, and card updates all happen in the Stripe Customer Portal, also hosted. The portal link is on /settings/billing for admins of a paid workspace. Enterprise plans are flipped manually by us — there’s no self-serve path. Contact us if you need higher caps or a non-Stripe billing arrangement.

Reading limits programmatically

Two endpoints surface the same limits payload:
  • MCP workspace.get — for agents. Returns { id, name, slug, plan, member_count, limits: { blocks, canvases, schedules, buildsPerMonth, aiGenPerMonth, dataSources, byokKeys, members } }. Each resource includes used, max, and resetsAt.
  • Convex api.mcp.tools.getMyWorkspaceLimits — for the web UI. Same payload, member-gated, used by /settings/billing.
max: null represents Infinity on the wire (members on Builder/Enterprise). used: null on buildsPerMonth and aiGenPerMonth means the rate-limiter doesn’t expose current consumption — only the cap. Period-based limits return a monthly resetsAt; count-based limits return null.

What’s next

Billing → Plans

Pricing detail, line items, what’s included.

Billing → Trial and portal

How the trial works, how to cancel, and what the Customer Portal can do.