> ## Documentation Index
> Fetch the complete documentation index at: https://devs.surferseo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Credits and limits

> See which plans include MCP, which actions consume credits, and how to handle limits and retries.

Everything you do over MCP draws on the same subscription as the Surfer app. The plan, the credits, and the usage view are the ones you already have.

## Plans that include MCP

MCP is included in the Pro, Peace of Mind, Enterprise, and AI Search Analytics plans. Some older plans and trials include it as well; the MCP tab in the app shows whether yours does.

Actions that create or generate content count toward your plan limits. Reading data does not.

If your organization's plan stops including MCP, every tool call fails with a permission error; [Troubleshooting](/mcp/troubleshooting#calling-tools) quotes it. What happens to the connection is on [Authentication](/mcp/authentication#how-long-a-connection-lasts).

## Tools that consume credits

Creating content and running optimization can consume credits. Reading data, replacing a document body, editing guidelines or settings, and deleting templates or voices do not.

| Action | Credit | When it is charged |
| - | - | - |
| [Create a Content Editor](/mcp/tools/index#content-editors) | One Content Editor credit | When the editor is created |
| [Open an optimization recommendation](/mcp/tools/index#workspaces-and-brand) | One Content Editor credit | Unless the page's Content Editor was already paid for |
| [Start an AI Article](/mcp/tools/index#writing-and-optimizing) | One separate AI Article credit only when your plan requires it | Reserved when generation starts, including a run that pauses for outline review |
| [Run Auto-Optimize](/mcp/tools/index#writing-and-optimizing) | One Auto-Optimize credit | Each time a run starts |

Some plans include AI Article generation in the Content Editor allowance. On those plans, starting an article does not spend a separate AI Article credit. On plans that use separate AI Article credits, Surfer reserves one when generation starts. Reading, editing, and approving that article's outline do not cost another credit.

If Surfer marks an article as failed, it releases the reserved AI Article credit. A retry reserves an available credit again; the released credit keeps its original expiry. Retrying an article that has not begun processing reuses its existing reservation.

<Warning>
  A timeout does not mean the work failed or its credit was released. Check the
  job's status before starting another run. Auto-Optimize can charge again for a
  second run on the same editor.
</Warning>

Creating a Content Editor supports a retry key. Ask your assistant to reuse the same key after an unclear result so Surfer returns the original editor instead of creating and charging for another.

Deleting a Content Editor in the app does not refund its credit, and the deleted editor still counts toward fair usage. No MCP tool deletes one ([changes and deletions](/mcp/security#what-an-agent-can-change-or-delete)).

[Skills](/mcp/skills), the built-in playbooks that run a whole Surfer workflow from one request, call these same tools. A playbook that creates a Content Editor or generates an article follows the same credit rules as those actions above.

* The outline, brief, optimize, and recommendation playbooks can reuse an existing Content Editor, so a rerun need not spend another Content Editor credit.
* The article playbook always creates a Content Editor, so each run spends a credit; a retry after a failure returns the original editor.

## When credits run out

When you run out of one of these credits, the tool call fails with a quota error. Your assistant cannot create more of that kind until the quota resets or your plan changes. [Troubleshooting](/mcp/troubleshooting#calling-tools) quotes the error strings.

* Documents allowance per plan: the [pricing page](https://surferseo.com/pricing/).
* Daily Auto-Optimize allowance: the [Fair Usage Policy](https://docs.surferseo.com/en/articles/12944161-fair-usage-policy).

<Note>
  No tool reports remaining credits. Before a run of tool calls that charge,
  check **Settings → Usage** in the app.
</Note>

Creating a workspace, content template, or custom voice also fails with a quota error when you reach your plan's allowance. These are limits on how many you can have, rather than credits spent per action. Remove unused templates or voices, or check your plan allowance before creating more.

## Rate limit

Requests are rate limited per organization and per tool, and everyone connected to the organization shares each limit. When a tool hits its limit, its calls fail with a rate-limit error that says how long to wait, and other tools keep working; your assistant should wait and retry. [Troubleshooting](/mcp/troubleshooting#calling-tools) quotes the error.

## Timeouts and long-running tools

Some actions keep running after your client stops waiting for a response. Your assistant can check their progress. See the [capabilities overview](/mcp/tools/index) for the work Surfer can perform.

<Warning>
  A call that returns early may already have started work and reserved or spent
  a credit. Ask your assistant to check the job's state instead of starting it
  again.
</Warning>

Before retrying an unclear result:

* Reading data: retrying does not spend a credit.
* Creating a Content Editor: have your assistant reuse the same retry key to avoid creating and charging for a duplicate.
* Generating an article: check its status first. Surfer refuses another generation while the article is in progress or already complete. For failed articles, the [credit rules above](#tools-that-consume-credits) explain how released credits are reused.
* Running Auto-Optimize: check the editor for an existing job first. A second run can charge another credit and replace the work already in progress.

## Input limits

Surfer enforces limits on text length, list sizes, and report ranges. Your assistant receives the current requirements from the connected tools. If a request exceeds a limit, have it adjust the input or split the work into smaller requests. Check the credit rules before splitting an action that charges.

## Limits your client adds

Surfer sets no per-client limit. Your client may cap the number of tools it loads or the time it waits for a call. The caps below are the client's own, documented on the linked vendor pages.

| Client | Tool cap | Call timeout | Notes |
| - | - | - | - |
| Claude (web and desktop) | None documented | None documented | The per-conversation [Tool access](https://support.claude.com/en/articles/13730515-manage-claude-s-tool-access) mode decides when connectors load, and Anthropic recommends **Auto** or **On demand** when many tools are available. Change it under **Connectors → Tool access**. |
| Claude Code | No per-server tool cap | Each HTTP request has a [per-request timer](https://code.claude.com/docs/en/mcp). Raise it with `MCP_TOOL_TIMEOUT` or a per-server `timeout` in `.mcp.json`. | Long calls move to a background task automatically. Very large outputs are capped by `MAX_MCP_OUTPUT_TOKENS`. |
| ChatGPT web | None documented | None documented | |
| ChatGPT desktop (Work) and Codex | None documented | A [per-tool timeout](https://learn.chatgpt.com/docs/config-file/config-reference) set by `tool_timeout_sec` in `config.toml`. | Trim the tool list with `enabled_tools` and `disabled_tools`. |
| Cursor | None documented | None documented | If Surfer tools stop appearing, [disable other servers or tools](https://cursor.com/docs/mcp) from **Customize**. |
| VS Code | At most [128 tools per chat request](https://code.visualstudio.com/docs/agents/run/tools) | None documented | Deselect tools or whole servers in the tools picker, or enable virtual tools with `github.copilot.chat.virtualTools.threshold`. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.