Tools enable agents to perform actions, and some of these tools require connections to work correctly. Configure the tools and the connections of these tools for your agents.

Tools

Tools are essential components of agents, enabling them to perform actions such as querying data, creating documents, or executing transactions on behalf of users. Some tools might require a connection to work properly.

The watsonx Orchestrate ADK includes a set of built-in tools that can be used in agents. These tools are designed to be highly versatile and applicable to a wide range of scenarios. Additionally, builders can define their own custom tools as needed.

Connections

A connection represents a dependency on an external service. It is a common feature needed by users to access custom secret values during the runtime of their tools. Examples include needing an API key for a library or service that their code relies on.

This can be achieved by using connections, which allow you to set up credentials and values that are exposed during the tool’s execution without needing to hardcode the values and risk exposing secrets.

Each connection can be thought of in terms of its 3 (4 for SSO Oauth flows) constituant parts.

The first is the connection itself. It is essentially a wrapper that is used to contain the other componenets and assign a common identifier that can be passed to tools, agents or other entities that require connections.

The second is the configuration. Each connection can have different configurations depending on environment (draft/live). The configuration outlines shared details on the connections such as its kind (basic, bearer, key_value, etc.) and its type (whether the connections are shared among the team or per member).

The third is the connections. These will be the values used to authorize against the external service. For example if in the configuration you selected is of kind basic, this would be where you pass in the username and password.

The fourth is the identity provider (IDP) connections. These are only needed for OAuth with SSO. These are used when your external service makes use of a third party OAuth identity provider such as Microsoft or Google to generate auth tokens.