# Support Agent

The **Support Agent** is designed to enhance internal communication and operational efficiency within your team. It functions as a bot installed directly into your collaboration tools, such as for example Slack. Once installed, the bot enables your team to interact with the Emporix system directly within your Slack workspace.

When the collaboration with the Support Agent is established, the participants can ask questions about the case context, request more details or perform actions directly through the agent.

## Purpose

The agent acts as a bridge between humans and Emporix agents or connected MCP tools, empowering support teams to handle complex issues more efficiently.

## Key benefits

Enabling the Support Agent brings several key benefits for your business.

| Benefit                                   | Description                                                                                                                                                                                                                                                                          |
| ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Seamless collaboration**                | It allows team members to inquire about orders, returns, or product updates directly in context-aware Slack channels, fostering improved teamwork and information sharing.                                                                                                           |
| **Reduced application switching**         | By bringing Emporix system interactions into Slack, it eliminates the need for employees to switch between different applications, saving time and enhancing focus.                                                                                                                  |
| **Increased operational efficiency**      | Automating access to real-time information within a communication tool helps streamline workflows, contributing to a more efficient operation overall.                                                                                                                               |
| **Ease of adoption and setup**            | As a prebuilt agent from the Agent Library, it offers a ready-to-use solution that integrates seamlessly into existing business workflows. The automatic one-click installation simplifies the setup process significantly, ensuring quick deployment without complex configuration. |
| **Enhanced customer-friendly operations** | By making internal information more accessible and promoting efficient team communication, it indirectly supports a more responsive and customer-friendly operation.                                                                                                                 |

## How it works

The Support Agent works as a Slack bot named the **Emporix Support Agent** that is installed in your Slack workspace.

You can view the exact steps and actions that are predefined for Support Agent type in the **Template Prompt** field.

{% hint style="success" %}
The **Template Prompt** cannot be modified, but gives the insights into the agent's workings. You can use it as a base if you want to create a custom agent.
{% endhint %}

### Trigger

The Support Agent can be triggered directly from your team's communication tool. Once you establish the connection and configure the agent adequately, the team can speak to the agent directly within the Slack collaboration space. Currently, the only supported trigger is Slack.

### Custom entities

When the Collaboration Agent creates a Slack channel for a specific case, it creates also the Support Agent Context entity in the system.

#### Support Agent Context

Whenever the Support Agent comes into play during collaboration on an issue and some conversation happens on a Slack channel, an instance of the Support Agent Context is kept in the **Custom Instances**. The Support Agent Context records the following information:

* Collaboration tool used
* Slack Channel ID created for the complaint case
* Conversation history
* Invited participants

{% hint style="warning" %}
Currently only Slack tool is supported.
{% endhint %}

## Agent configuration

To allow the agent act directly within the company collaboration channel (Slack) and respond to merchants queries about certain operations in the Emporix system (or an external one), configure the agent by connecting it to the relevant AI Tools and MCP servers.

### Scopes

Since the agent is triggered by Slack directly, and not by users, there is no need for setting up any required scopes for the Support Agent.

### User Prompt

The prompt determines the general agent behavior. The default prompt defines the agent actions for the case when an invoice is missing and billing address needs an update:

```
<rules>
    <rule> For missing invoices: create and send new invoices </rule>
    <rule> For billing updates: ALWAYS update billing first, THEN use `send-invoice` tool to send the invoice automatically </rule>
</rules>
```

Configure how the agent works and acts by adjusting the prompt rules and including the cases you want the agent to act upon. Use the **Template Prompt** for possible adjustments.

### Capabilities and tools

The capabilities of the Support Agent are strictly connected to the MCP server tools you configure for it. Upon creation, the agent is equipped with the tools for **Customer** and **Order** entities management.

Default toolset:

| Tool                                | Capabilities                                  |
| ----------------------------------- | --------------------------------------------- |
| **Customer MCP Tools**              |                                               |
| `get-customer`                      | Retrieves customer details.                   |
| `get-legal-entity`                  | Fetches details of a specific legal entity.   |
| `get-legal-entities`                | Lists all legal entities.                     |
| `change-customer-activation-status` | Activates/deactivates a customer.             |
| `send-email-to-customer`            | Sends email to the customer email address.    |
| **Order MCP Tools**                 |                                               |
| `get-order`                         | Retrieves a specific order.                   |
| `get-customer-orders`               | Lists all orders for a customer.              |
| `update-order-billing-data`         | Updates billing information on an order.      |
| `send-invoice`                      | Resends an invoice.                           |
| `update-order-delivery-date`        | Updates the delivery date on the order level. |

Extend or limit the tools according to our needs.

* To **restrict** the tools, when you don't want the Support Agent to modify any data, choose the **Edit** option and remove the tools from configuration.
* To **extend** the capabilities of the agent and enable it to handle a broader range of requests directly within the collaboration tool, choose the **Edit** option and add more tools in the agent configuration. Use search to find a specific tool.

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-2fae95a8aadee8ab48d6ea15eea2751420df4a58%2Fagentic_support_tools.png?alt=media" alt="MCP Tools" width="375"><figcaption><p>MCP Tools</p></figcaption></figure>

### AI Tools

The Support Agent requires the **Slack AI Tool** to work properly. First, create the Slack AI bot in the **Agentic AI** -> **AI Tools**.

{% hint style="info" %}
For more information on how to create a bot, see the [Slack AI Tool](https://developer.emporix.io/agentic-commerce-intelligence/agentic-intelligence/configuration/tools/slack).
{% endhint %}

Once the Slack AI Tool is ready, establish the connection with the bot by selecting the AI Tool in the **Native Tools** list.

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-85968351561f75b934a7d5be7706d7a6d5b42b29%2Fagentic_slack_tool.png?alt=media" alt="Slack Tool" width="375"><figcaption></figcaption></figure>

This way, the Support Agent can act directly within the Slack workspace.

## Workflow

Typically, the Support Agent workflow begins after the initial collaboration environment is set up by the [Collaboration Agent](https://developer.emporix.io/agentic-commerce-intelligence/agentic-intelligence/agent-library/collaboration-agent). The Support Agent can work hand-in-hand with the [Complaint Agent](https://developer.emporix.io/agentic-commerce-intelligence/agentic-intelligence/agent-library/complaint-agent) and [Anti-Fraud Agent](https://developer.emporix.io/agentic-commerce-intelligence/agentic-intelligence/agent-library/anti-fraud-agent) to resolve the specific issue.

The example workflow for the Support Agent can look as follows:

{% stepper %}
{% step %}
**Collaboration setup**

The Collaboration Agent first creates a dedicated Slack channel, identifies and invites relevant participants, posts the case context, and creates a Support Agent Context entity for tracking. The Support Agent is triggered.

> For example, there is a complaint from a customer reported in relation to their recent order.
> {% endstep %}

{% step %}
**Human interaction**

The channel members write directly in the Slack channel asking the agent for more details or requesting a specific action.

> For example, the participants ask the Support Agent about a specific order details that are relevant to the complaint case.
> {% endstep %}

{% step %}
**Action execution**

The Support Agent uses its configured tools to fulfill the requests. Responses and results are shared back in the Slack channel for full transparency.

> For example, the agent gets back with the retrieved order details and customer information. When necessary, the agent resends the invoices and updates the order details.
> {% endstep %}
> {% endstepper %}

{% hint style="info" %}
All Agents operations are tracked in the **AI Logs** view. You can check the details of the requests, jobs, and sessions for monitoring and evaluation purposes. For more information, see the [AI Logs](https://developer.emporix.io/agentic-commerce-intelligence/agentic-intelligence/logs).
{% endhint %}
