> For the complete documentation index, see [llms.txt](https://developer.frontitude.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.frontitude.com/mcp/limits-and-errors.md).

# Limits and errors

Ask for too much in a single call and Frontitude refuses it. Every call has a ceiling on how much it can read or change. Hit one and ask your agent for a smaller piece of work: one project, one category, or one status at a time.

| Cap                                                  | Value                                                          |
| ---------------------------------------------------- | -------------------------------------------------------------- |
| List results per call                                | 100, default 50                                                |
| Search results per call                              | 50, default 20                                                 |
| Pages per call, project structure                    | 50, default 20                                                 |
| Frames per project structure                         | 300                                                            |
| History revisions returned                           | 20                                                             |
| Comments per thread returned                         | 50                                                             |
| Items per write call                                 | 50, or 25 when creating, deleting or writing copy              |
| Items per write call, writing source-language copy   | 10                                                             |
| Components and texts one delete or rename may affect | 200, or 25 when a category delete takes its components with it |

## The translation allowance

Your workspace has an allowance of translated words. When copy moves to Final in the source language, auto-translation starts if your workspace has it on, and that spends the allowance. Each of those calls reports what percentage of the allowance the workspace is at.

At 80 percent Frontitude emails your workspace admin. Past the allowance, the call translates nothing and auto-translation stops for the whole workspace. Your admin gets a second email. No tool can start it again: an editor or an admin does that under ***AI translations*** on the [***Integrations*** tab](https://app.frontitude.com/settings/integrations?utm_source=mcp-docs). The word balance is on the [***AI & MCP*** tab](https://app.frontitude.com/settings/ai?utm_source=mcp-docs).

## Refusals and failures

A refusal is Frontitude saying no on purpose, so your agent should change what it asked for and try again. A failure means something broke on our end, and nothing your agent changes gets a different answer.

| Kind             | Meaning                                                                                                                   |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `not_authorized` | You can't get to this content.                                                                                            |
| `invalid_input`  | The call was malformed, asked for something the tool doesn't accept, or reached for content in another workspace.         |
| `conflict`       | Something else already holds what was asked for, such as a unique key.                                                    |
| `state_conflict` | That item isn't in a state this call can act on. It may already have been deleted or changed.                             |
| `limit_reached`  | The call went over a cap above, or the workspace has used up the copy components its plan allows. The message says which. |
| `not_found`      | Nothing has that id. Either it's wrong, or what it named has been deleted.                                                |
| `unexpected`     | Something broke on our end. Get in touch and we'll take a look.                                                           |

A refusal message says what to do next. Some are worth knowing in advance. To read the copy library you need a place in the workspace, or an editor grant on a project or a folder in it. To write a copy component directly you need editor access to the whole workspace. An agent that only has one project can still work on that copy, through a text attached to the component.

A `limit_reached` about your plan is the one refusal a smaller request doesn't solve. Delete components you no longer need, or ask a workspace admin to upgrade your plan.

{% content-ref url="/pages/eI2nEalLbsF44ebD78Ct" %}
[Tool reference](/mcp/tool-reference.md)
{% endcontent-ref %}
