ConceptsTiers & quotas

Tiers & quotas

BCA ships one product — the 99-tool MCP server — across five access tiers. The tool surface is the same at every tier; what changes is rate limit, month-over-month quota, which tools actually return data vs tier_locked, and whether strip_attribution is honored.

Live pricing + sign-up: brain.blockchainacademics.com/pricing. The tables on this page are the dev-docs summary — pricing page is the source of truth for money numbers.

Quick reference

TierMonthly quotaRate limitAgent jobsas_of time travelstrip_attribution
Free2,000 calls60 req/min
Starter20,000 calls300 req/min
Pro200,000 calls1,200 req/min
Team1,000,000 calls3,000 req/min
Enterprisecustomcustom✅ (white-label)

Tool gating

Most tools are available at every tier — gating happens on what the response includes, not on whether the tool returns at all.

Tool categoryMinimum tierNotes
Content & corpusFreeget_as_of_snapshot is Enterprise only.
Market dataFreeget_ohlc and get_pair_data hit Starter at high call volume.
On-chainStarterget_wallet_profile rate-limited aggressively on Free.
SentimentStarterFree tier returns summary-only payload.
Proprietary indicatorsProIndicator composites are the core Pro value prop.
Agent-backed generation (async)Produe_diligence, tokenomics_model, summarize_whitepaper, translate_contract, monitor_keyword.
DirectoriesFreelist_vcs and list_jobs extra metadata gated to Starter.
FundamentalsStarterPer-tool notes in Tool reference.
Chain-specificFree
MicrostructureStarterOrder book / funding / OI feeds hit Pro at high rates.
RegulatoryStarterSEC filings feed is Pro.
SecurityFreescan_contract rate-limited on Free.
Narrative / metaStarter
Memes / degenFree
Compute / AI cryptoFree
Services (revenue)Starterbook_kol_campaign, request_custom_research, submit_listing.
History time-seriesStarter
Corpus metaFree
Memos / theses / social / currenciesStarterMemo + thesis full text gated to Pro.

When a caller hits a tool above their tier, the server returns HTTP 403 with an error body: { "error": { "code": "BCA_TIER_LOCKED", "message": "Tool requires pro tier.", "request_id": "req_…" } }. Agents catch the 403, read error.code, and surface the upgrade path.

Attribution by tier

TierAttribution rule
Freecite_url surfaced verbatim. Stripping gets the key rate-limited first.
StarterSame as Free.
Procite_url recommended. strip_attribution: true honored on applicable read tools.
TeamSame as Pro. Admin dashboard shows per-seat citation compliance.
EnterpriseFull white-label; cite_url may be replaced with a contract-approved scheme.

See Attribution & licensing for what “verbatim” means in practice.

Getting a key

  1. Sign up at brain.blockchainacademics.com/pricing
  2. Pick a tier (Free requires no card)
  3. Copy the key from the dashboard (bca_live_…)
  4. Drop it into BCA_API_KEY in your MCP config

A free-tier key issues immediately; paid tiers activate on first successful Stripe charge.

Rate-limit response

Over-limit calls return HTTP 429 with a JSON body the MCP server surfaces as a structured error:

{
  "error": {
    "code": "BCA_RATE_LIMIT",
    "message": "60 req/min exceeded on Free tier. Retry-After: 8s.",
    "retry_after_seconds": 8
  }
}

The bundled HTTP client honors Retry-After. Custom clients: sleep the indicated seconds and retry, or upgrade.

Next