Skip to main content

MCP Rate Limits

Carbon Arc applies rate limits to MCP tools to keep performance consistent across users. Limits are generally enforced per client, typically your organization’s shared client ID. If no client ID is assigned, limits are applied per user based on email.

Limits vary by workload. Lightweight discovery and search tools support higher throughput, while more compute-intensive analytical and Research tools have lower limits.

Rate limits use a token bucket model. Each tool has a burst allowance for short periods of higher activity, which continuously refills toward its sustained hourly rate.

For Platform purchase and quote limits across the UI, SDK, and API, see Platform Rate Limits.


How rate limits work

  • Limits are enforced per client, typically using your organization’s shared client ID. Accounts without a client ID fall back to a per-user limit.
  • Each tool uses a single token bucket. The Burst and Sustained limits below describe the capacity and refill rate of that bucket, not separate limits.
  • Research tools have a burst limit of 1 and refill approximately every 3 minutes, supporting up to 20 calls per hour.
  • If you reach a limit, the response includes a Retry-After header and retry_after value indicating how many seconds to wait before retrying.

Limits by tool

Core tools

ToolBurstSustained (per hour)
Search Entities (search_entities)45500
Search Insights (search_insights)45500
Get Insights from Entity (get_insights_from_entity)30350
Get Entities from Insight (get_entities_from_insight)30350
Text-to-Insight (text_to_insight)12120
Framework-to-Insight (framework_to_insight)12120

get_insights_from_entity and get_entities_from_insight have the same limits but are tracked independently. Usage of one does not count against the other.

Research tools

ToolBurstSustained (per hour)
Entity Research (entity_research)1 (every ~3 min)20
Forecast (forecast)1 (every ~3 min)20
Acquire (acquire)1 (every ~3 min)20
Retain (retain)1 (every ~3 min)20
Target (target)1 (every ~3 min)20
Upsell (upsell)1 (every ~3 min)20

Platform / discovery tools

ToolBurstSustained (per hour)
Search Docs (search_docs)30350
Data Library (data_library)30350
Get Filter Options (get_filter_options)30350
Ontology (ontology)12120

Event tools

ToolBurstSustained (per hour)
Search Events (search_events)530
Get Events from Entity (get_events_from_entity)530
Get Insights from Event (get_insights_from_event)530
Get Entities from Event (get_entities_from_event)530
Get Events from Insight (get_events_from_insight)530

Event tools are documented on the MCP Events page.


If you hit a limit

When a request is rate limited:

  1. Read the wait time from Retry-After or retry_after.
  2. Wait for the specified window.
  3. Retry the request.

Avoid tight retry loops, which can keep the request rate limited.

For longer-running Research tools, make sure your client timeout is also configured appropriately. See MCP Timeouts & OAuth.