MCP server
Limits
Rate limits, how much a single result can hold, and how to tell when something was left out.
Rate limit
Each credential can make 120 requests per minute to the MCP endpoint. Every MCP message is one request, so connecting (initialize), listing tools and each tool call all count.
Past the limit, the server answers with HTTP 429 and a JSON-RPC error:
{
"jsonrpc": "2.0",
"error": { "code": -32029, "message": "Rate limit exceeded. Try again shortly." }
}Responses carry the standard RateLimit and RateLimit-Policy headers, so a client can see how much of the window is left. The limit belongs to the credential, not to the network address, so your connections are never slowed down by other people's.
The exception is a request that arrives without a credential, which has no bucket of its own and is counted against the network address instead. A client retrying its way through the sign-in flow can reach the limit that way before it holds a token.
Rows per result
Tools that return lists return 25 rows unless asked for more. Every list tool accepts a limit argument from 1 to 100.
When a result was cut short, its _meta block says so in words the assistant can act on:
{
"data": ["…"],
"_meta": {
"message_text": "redacted",
"returned": 25,
"available": 40,
"truncated": 15,
"note": "15 more row(s) not shown. Raise \"limit\" (max 100) or narrow the filters."
}
}| Field | Meaning |
|---|---|
returned | Rows included in data |
available | Rows the query produced before the cap was applied |
truncated | Rows left out. Absent when nothing was |
note | What to do about it |
Filtering beats paging. To count orders nobody has confirmed yet, ask list_orders for status: new rather than fetching every order and counting them in the conversation.
Size per result
A single result is capped at 100 KB. A result over the cap is withheld rather than cut mid-record, and the assistant is told why:
{
"data": null,
"_meta": {
"error": "RESULT_TOO_LARGE",
"bytes": 184213,
"note": "Result exceeded 100000 bytes and was withheld. Narrow the request: fewer rows, a shorter date range, or a single record by id."
}
}This usually happens with very large records, such as a long flow definition, rather than with many rows.
Empty fields
Fields that are null or empty are left out of results. A record with forty columns of which thirty are empty arrives with ten, which saves your assistant reading noise.
Other limits
| Limit | Value |
|---|---|
| Connector tokens per person | 10 at a time |
| How fresh results are | Read live on every call, never cached |
| How quickly permission changes apply | Within seconds |
