Adding capabilities to a Product

Capabilities are Flows and Agents that you attach to a Product. You can also attach an external agent that uses the Agent-to-Agent (A2A) protocol. Each Capability represents a function that you can expose through one or more Surfaces. Add the Capability to the Product, then connect it to the Surfaces where you want to expose it.

Before you begin

Create a Product before you add a Capability. If you reuse an existing resource, create the Flow or Agent before you start. For External A2A, prepare the external agent’s endpoint URL. An agent card URL is optional.

Add a Capability

To add a Capability, follow these steps:

  1. On the Products page, open the Product that you want to update.
  2. In Product capabilities, click Add Capability.
  3. Choose New Agent, New Flow, External A2A, or Use Existing.
  4. Complete the fields for the option that you selected.
  5. If the page shows unsaved changes, click Save.

With Use Existing, select a Flow or Agent. With External A2A, enter the endpoint URL and capability details. With New Flow, continue to the Flow editor. With New Agent, choose an agent type and enter the agent details.

The Capability appears in Product capabilities after you add it. It does not connect to existing Surfaces automatically. Connect it to every Surface where you want to expose it.

Connect a Capability to a Surface

To connect a Capability in Visual view, follow these steps:

  1. On the Product page, select Visual view.
  2. Drag a connection from the Capability node to the Surface node.
  3. Click Save to persist the connection.

Choose Capabilities that work together

Group Capabilities around a single user problem. For example, a customer support Product can use these Capabilities:

  • FAQ answering Flow
  • Order status lookup Agent
  • Escalation routing Flow

Each Capability handles one part of the support workflow.

Choose a routing mode

For a Chat Surface with at least two connected Capabilities, use the Orchestration tab to choose message handling:

  • Single Orchestrator: sends each incoming message to the Capability that you select.
  • Router: uses a lightweight model to classify each message and route it to a Capability.

Use Single Orchestrator when one Capability handles every message. Use Router when the message content determines the destination.

For an API Surface, each enabled connected Capability gets its own endpoint. For an MCP Surface, each enabled connected Capability appears as a tool.

For an A2A Surface, choose one of these modes:

  • Delegate mode: exposes each Capability as a separate skill, and the calling Agent selects which skill to invoke.
  • Managed mode: routes incoming requests through an orchestrator that selects a Capability.

For more information, see Surface orchestration modes.

Remove a Capability

To remove a Capability from a Product, follow these steps:

  1. On the Product page, select List view.
  2. In Product capabilities, open the Capability’s More actions menu.
  3. Select Delete.
  4. Confirm the deletion.

Removing a Capability also removes its connections from the Product’s Surfaces. It does not delete the linked Flow or Agent, so you can attach that resource to another Product.

Reuse Capabilities

A Flow or Agent can serve as a Capability in multiple Products. Each Product stores its own Capability name and description, so you can adapt how the resource appears in each Product.

For example, you can attach a sentiment analysis Flow to these Products:

  • Customer support Product
  • Social media monitoring Product
  • Content moderation Product

Changes to the Flow or Agent apply to every Product that uses it.

Next steps

Use these pages to continue: