Skip to content

Compact tool mode

Large catalogs can encounter client or model tool limits and discovery overhead. Diagnose the actual error with tool-limit troubleshooting instead of inferring a cap from an empty list.

EMCP Tools ships 547 tools, and registers however many of them apply to your environment. Compact tool mode is the escape hatch: instead of exposing every tool, the server exposes just 3 dispatcher meta-tools, so EMCP advertises three dispatcher entries regardless of the active catalog size. A multi-site proxy may add routing tools of its own.

Replaces Low-tools mode. Compact tool mode supersedes the old Low-tools mode (removed in v3.2.0). Where Low-tools mode filtered the surface down to a curated “essentials” set, Compact tool mode collapses the entire surface to three tools: nothing is trimmed away, it’s just reached through a dispatcher.

Try it when the client reports a tool/function limit, struggles to load the full catalog, or benefits from discovering operations on demand. Compare the same account and endpoint before and after reconnecting. A successful compact-catalog test suggests a catalog-handling problem; it does not establish an exact limit.

Limits and discovery behavior vary by client, model and version. There is no universal cap or unlimited-client guarantee. If your full catalog works well, you can leave Compact mode off.

  1. WordPress admin → EMCP Tools → Tools (in the Setup group of the EMCP sidebar)
  2. Switch on the Compact tool mode card at the top of the screen (“For clients with tool limits”)
  3. In the save bar that appears at the bottom, click Save changes (or Discard to undo)
  4. Reconnect your MCP client so it re-reads the tool list.

EMCP Tools → Tools screen with the Compact tool mode card switched on and the save bar showing 1 unsaved change, Discard and Save changes

The option is stored as emcp_tools_dispatcher_mode and defaults to off.

When Compact tool mode is on, the server surfaces only these three meta-tools:

ToolPurpose
list-toolsCompact catalog of every available tool: name, description, category, and a destructive flag. Supports search and category filters.
get-tool-schemaFetch the input schema for one or more tools by name (batch).
call-toolRun a tool by name + arguments.

An agent uses the three tools in sequence:

  1. Discover: call list-tools (optionally filtered by search or category) to find the tool it needs.
  2. Schema: call get-tool-schema with the tool name(s) to learn what inputs each accepts.
  3. Call: call call-tool with the tool name and its arguments to actually run it.

This is the same set of capabilities as the full server, just reached through a dispatcher instead of registered one-per-tool.

Permissions and per-tool toggles still apply

Section titled “Permissions and per-tool toggles still apply”

call-tool is not a privilege-escalation path. Before it runs a target tool it delegates to that tool’s own permission check, exactly the same capability check the tool would run if it were registered directly. It also refuses any tool that is disabled or unknown.

Your individual enable/disable toggles on the Tools screen continue to gate what call-tool is allowed to run. Disable a tool there and call-tool will refuse it, just as if the tool weren’t registered.

If your client has no tight tool cap, Compact tool mode is unnecessary. Turn it off and reconnect, and the AI sees the full tool library directly (one MCP tool per ability), which some agents find easier to work with than the dispatcher flow.