Skip to main content
Your MCP Manager plan sets how many servers, gateways and roles a workspace can have, and which advanced features it includes. The Admin API enforces those limits exactly as the app does. A create, enable or restore that would take the workspace past its plan is refused with an error that names the limit, the current count, and how to resolve it.
Closed beta. The MCP Manager Admin API and MCP server are available now to a limited set of workspaces through the MCP Manager Admin API entitlement (ff-mcpm-admin), ahead of general availability. If you don’t see Settings → MCP & API in your workspace, it isn’t enabled for you yet — ask your MCP Manager contact to join the beta.

What is limited

Everything you already have stays, even if the workspace is over a limit, for example after a plan change, and it keeps working with one exception: Presidio rules do not run on a plan without Presidio. Each one is skipped, or blocks the call when its failure mode is block. Renaming, editing, disabling and deleting are never refused. Only adding more is. Re-enabling or restoring a policy that still holds an enabled Presidio rule counts as adding one, so it is refused as a whole on such a plan. The same goes for an enabled custom-engine rule on a plan without custom rule engines. To save the policy’s other rules, remove that rule or switch it to regex, then try again. User seats are not limited by the Admin API. If MCP Manager can’t read the workspace’s plan when you make a change, the change is allowed rather than refused, so a workspace can end up over a limit. What you have keeps working; only the next addition is refused. Don’t treat a successful create as proof that there is room for another.

Tools and endpoints that can be refused

  • create_inbound_server, enable_inbound_server
  • create_gateway, enable_gateway
  • create_role
  • register_rule_engine
  • add_gateway_rule and enable_gateway_rule, when the rule uses Presidio or a custom rule engine
  • update_gateway_rule, when it switches a rule to Presidio or a custom rule engine
  • set_otel_configuration
The same limits apply in the app, so a refusal doesn’t depend on where you make the change.

The plan-limit error

Both surfaces return the same planLimit object. MCP. The tool result has isError: true. Its text content is the plain-language message followed by the planLimit fields as JSON, and structuredContent.planLimit carries the same fields:
REST. The response is 403 Forbidden with the standard error envelope plus planLimit:

Fields

An agent should branch on code and resource, not on the message text. The message wording may change; the fields will not.

How to resolve it

  • Make room. Disable or delete a server or gateway you no longer use, or delete a custom role you no longer use. Disabled servers and gateways don’t count toward the limit.
  • Raise the limit. Upgrade the plan in Settings → Plan & Usage in the app, or ask your MCP Manager account manager to add capacity or the feature. A plan change takes effect on your next call; there is no delay to wait out.
On the Core and Plus plans, the role limit equals the three built-in roles, so creating a custom role needs a plan with more role capacity.

Further reading

Authentication & access

Entitlement, capability gating, and every status code the API returns.

Tool & endpoint reference

Every operation with its MCP tool name, REST route, and required capability.