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

# Overview

**Toolkits** group related tools so you can import or remove them in one action. You use toolkits to organize and manage tools efficiently in watsonx Orchestrate.

watsonx Orchestrate supports two toolkit types:

* **MCP toolkits**: Group MCP server tools (Python or Node.js) for local or remote execution
* **Python toolkits**: Group Python tools to run together in a single process for better performance

<Note>
  **Choosing between toolkits and standalone tools:**

  Toolkits offer performance benefits but require specific considerations. For help deciding between standalone Python tools, Python toolkits, local MCP toolkits, remote MCP toolkits, and OpenAPI tools, see [Choosing a tool type](/tools/toolkits/choosing_tool_type).
</Note>

## MCP toolkits

Use MCP toolkits to integrate tools built with the Model Context Protocol (MCP). MCP toolkits support both local and remote execution:

**Local MCP toolkits:**

* Run inside the watsonx Orchestrate runtime using **stdio transport**
* Support **Python** and **Node.js** implementations
* Can be imported from **npm**, **PyPI**, or **local filesystem**
* Behave like standalone Python tools with process-per-invocation model
* Suitable for tools that need MCP protocol features or Node.js runtime

**Remote MCP toolkits:**

* Connect to external MCP servers via **HTTP** (SSE or streamable HTTP)
* Run on your infrastructure or third-party services
* Support multiple authentication methods
* Add network latency but enable centralized tool management

For detailed guidance on when to use local vs remote MCP toolkits, see [Choosing a tool type](/tools/toolkits/choosing_tool_type).

## Python toolkits

Use Python toolkits to bundle multiple related Python tools that run together in a single Python process. This approach eliminates process startup overhead and provides better performance for frequently called tools.

**Key characteristics:**

* Tools share the same Python process and dependencies
* **No process overhead** after initial startup (saves 100-300ms per call)
* Requires all tools to be **thread-safe and reentrant**
* In live premium environments, each toolkit gets dedicated resources (2 vCPUs, 2 GB memory)
* Supports up to 10 concurrent requests per toolkit

**When to use Python toolkits:**

* You have multiple related Python tools
* Tools are called frequently (>10 times per minute)
* All tools are thread-safe
* You want to minimize execution overhead

**When to use standalone Python tools instead:**

* Tools use non-thread-safe operations
* Tools are called infrequently
* You need process isolation between calls

For migration guidance from standalone tools to toolkits, see [Migrating to Python toolkits](/tools/toolkits/migrating_to_toolkits).

## Tool naming convention

When you import a toolkit, watsonx Orchestrate exposes each tool within it individually using the naming format:

```
toolkit_name:tool_name
```

**Example:**

```
# Toolkit name: customer_service
# Tools in toolkit: get_customer, update_customer, create_ticket

# Exposed tool names:
customer_service:get_customer
customer_service:update_customer
customer_service:create_ticket
```

This naming convention ensures tools from different toolkits don't conflict, even if they have the same base name. When migrating from standalone tools to toolkits, you must update agent configurations to use the new `toolkit_name:tool_name` format.

## Next steps

* [Choosing a tool type](/tools/toolkits/choosing_tool_type) - Decision guide for selecting the right tool type
* [Importing Python toolkits](/tools/toolkits/python_toolkits) - How to create and import Python toolkits
* [Importing local MCP toolkits](/tools/toolkits/local_mcp_toolkits) - How to import local MCP servers
* [Importing remote MCP toolkits](/tools/toolkits/remote_mcp_toolkits) - How to connect to remote MCP servers
* [Migrating to Python toolkits](/tools/toolkits/migrating_to_toolkits) - Step-by-step migration guide
* [Managing toolkits](/tools/toolkits/manage_toolkits) - How to update and remove toolkits
