> This page is for Harness.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.moveworks.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.moveworks.com/_mcp/server.

# Tool Orchestration

> **Controlled Availability**
>
> The Agentic Orchestrator is in Controlled Availability and comes to your Enterprise Assistant in Q1 2027. Capabilities, limits, and interface labels described here may change before general availability. To request access, contact your Moveworks account team.

The Orchestrator reaches every external system through tools. Each call runs as the requesting user, and each result folds back into the model's loop.

```mermaid
sequenceDiagram
    participant M as Model
    participant O as Orchestrator
    participant U as User
    participant T as Tool
    M->>O: Fetch schema, call tool
    opt Authorization or confirmation needed
        O->>U: Connect link or values to confirm
        U-->>O: Authorizes or confirms
    end
    O->>T: Run with the user's credentials
    T-->>O: Result
    O-->>M: Result, or a variable if large
```

## Tool Frameworks

| Framework         | What the Orchestrator does with it                                                                                                                                                                                                                                                       | Learn more                                                                                                    |
| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| Plugins for APIs  | Each Tool Studio plugin is one tool. Multi-step plugins run step by step and fill missing inputs from the conversation, lookups, or the user.                                                                                                                                            | [Plugins](/tool-studio/conversation-process)                                                                  |
| MCP               | Calls the tools of each server connected in MCP Workspace.                                                                                                                                                                                                                               | [MCP Workspace](/tool-studio/mcp-workspace/overview)                                                          |
| A2A agents        | Each A2A agent registered in Tool Studio and selected for the assistant appears as two tools: one to start a conversation and one to send the next message. The agent works in a side conversation, can ask for more information, and hands each turn's result back to the Orchestrator. | [A2A Agents](/tool-studio/a2a)                                                                                |
| Enterprise Search | Searches the assistant's knowledge scope with the user's permissions, and fetches a result to read further.                                                                                                                                                                              | [Search Connectors](/tool-studio/enterprise-search/search-connectors)                                         |
| Built-in tools    | Web search, [People Lookup](/harness/agentic-orchestrator/people-graph), [code execution](/harness/agentic-orchestrator/code-execution), and [artifacts](/harness/agentic-orchestrator/artifacts).                                                                                       | [Add popular tools](/ai-assistant/productivity-assistants/create-a-productivity-assistant#add-tools-and-apps) |

## How Tools Reach the Model

* **Names always, schemas on demand.** The model always sees every available tool's name. For MCP, search, and single-action plugins, it fetches the full schema only when it picks the tool, so large catalogs stay cheap. Multi-step plugins keep their schemas in context.
* **Descriptions drive selection.** The model picks tools by name and description. Put the purpose and "don't use for" cases first.
* **Scoped per assistant.** Assistant Builder selects the plugins, MCP servers, and A2A agents an assistant can call; an empty selection means none. Scoping narrows what the assistant sees and never adds access.
* **The user's credentials.** Every call runs with the requesting user's permissions upstream. If a connector or MCP server needs the user to authorize first, the Orchestrator pauses, sends a connect link, and resumes once they have.
* **Confirmation.** Destructive, irreversible, or broad-reach actions need the user's sign-off first. To make a specific action pause and show the exact values, set the action activity's **Confirmation Policy** in the plugin's [Conversation Process](/tool-studio/conversation-process/activities#activity-confirmation-policies); approval covers only those values.

## How Tool Results Are Processed

* **Concurrent batches.** Independent calls in one model response run concurrently as a batch.
* **Large results become session variables.** A result over about 10 KB is stored as a session variable instead of placed in the prompt. The model sees its name and reads the value when needed, so nothing is silently cut short.
* **Results fold back.** Each result, or its error, returns to the model, which calls more tools or answers. Results are data, not instructions: tool content can't change the assistant's instructions.
* **Oldest results trimmed first.** Near the context budget, the oldest tool calls and their results are dropped first. Instructions and the newest user message are never trimmed.

## Limits

| Item                              | Limit                                                |
| --------------------------------- | ---------------------------------------------------- |
| Tool Studio plugins per assistant | 300                                                  |
| MCP servers per assistant         | 50                                                   |
| Tool description the model sees   | 4,096 characters                                     |
| Result placed inline              | About 10 KB; larger results become session variables |

## Related

* [Planning](/harness/agentic-orchestrator/planning): when calls run ad hoc and when they run as a plan.
* [Memory](/harness/agentic-orchestrator/memory): session variables, trimming, and retention.
* [Choosing the Right Tool Framework](/tool-studio/cookbooks/choosing-the-right-tool-framework): which framework fits a use case.