> For the complete documentation index, see [llms.txt](https://developer.emporix.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.emporix.io/agentic-commerce-intelligence/agentic-intelligence/agents.md).

# AI Agents

AI Agents can transform ecommerce operations by enabling intelligent automation.

Emporix Agentic AI introduces AI-powered agents as a new way of working, transforming ecommerce operations by enabling intelligent automation. These agents are designed to take on business processes, simplify operations, and unlock greater efficiency for merchants.

Instead of relying on manual effort for repetitive or time-consuming tasks, involve these intelligent agents to react to events happening in the system and carry out some actions automatically. This approach not only saves time but also creates opportunities to scale business operations without adding complexity.

There are two primary types of agents within the Emporix Agentic AI:

<table data-card-size="large" data-view="cards"><thead><tr><th align="center"></th><th align="center"></th><th align="center"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td align="center"><i class="fa-books">:books:</i></td><td align="center"><strong>Predefined agents</strong></td><td align="center">Ready-to-use solutions provided by Emporix for common ecommerce needs. They are designed to run in the background, seamlessly integrating into business workflows. Emporix offers an AI Agents Library as an expandable catalogue of these prebuilt solutions to make their adoption easier.</td><td><a href="/agentic-commerce-intelligence/agentic-intelligence/agent-library.md">AI Agent Library</a></td></tr><tr><td align="center"><i class="fa-robot-astromech">:robot-astromech:</i></td><td align="center"><strong>Custom agents</strong></td><td align="center">For unique business requirements, merchants can use the Agentic AI to create and run custom agents. This offers full control over LLM choice, attached tools, and MCP-based capabilities – tailored to your processes, compliance requirements, and customer expectations.</td><td><a href="#custom-ai-agents">#custom-ai-agents</a></td></tr></tbody></table>

## Predefined agents

Emporix provides ready-to-use agents for common ecommerce scenarios — for example, complaint handling, fraud detection, customer support, translations, and storefront guidance. Browse the [AI Agents Library](/agentic-commerce-intelligence/agentic-intelligence/agent-library.md) to see available templates and learn how to enable them in your tenant.

When you create an agent from a library template such as Support, Complaint, or Anti-Fraud, the template creates one or more **generic** agent instances that collaborate with each other. Configure each instance through its editable **User Prompt** and attached tools.

## Custom AI agents

Example use cases where custom agents come in handy:

* **Connecting through a managed provider or AI gateway** – Custom agents can be configured to use your own enterprise provider setup, including the AI gateway, for GDPR-compliant production environments. This allows you to use enterprise-approved model access without sending traffic directly to a public provider endpoint.
* **Integrating with external business systems** – Agents can be granted access to external MCP servers to securely interact with systems like ERP (Enterprise Resource Planning), CRM (Customer Relationship Management), or other specialized services. This enables agents to:
  * Fetch product availability directly from an ERP system.
  * Process purchase orders by communicating with your ERP system.
* **Managing credentials for third-party services** – Custom agents can manage credentials for various other third-party services or integrations, ensuring secure communication and automation across your entire digital landscape.

Custom agents don’t have to work in isolation. The platform allows you to create multiple agents and connect them, enabling them to operate as a team. This teamwork approach is especially powerful when solving complex business goals that require multiple steps or domain-specific expertise.

The example custom agents chain might look as follows:

```mermaid
---
config:
  layout: fixed
  theme: base
  look: classic
  themeVariables:
    background: transparent
    lineColor: "#9CBBE3"
    arrowheadColor: "#9CBBE3"
    edgeLabelBackground: "#FFC128"
    edgeLabelTextColor: "#4C5359"
---
flowchart LR
  subgraph subGraph0["CUSTOM AGENT CHAIN"]
    direction LR
    A["AGENT A<br><br>Fetch product data<br>from an ERP system"]
    B["AGENT B<br><br>Analyze data for<br>compliance or profitability"]
    C["AGENT C<br><br>Update the<br>ecommerce catalog"]
  end

  A -->|"hand over"| B
  B -->|"hand over"| C

style A fill:#A1BDDC,stroke:#4C5359
style B fill:#DDE6EE,stroke:#4C5359
style C fill:#F2F6FA,stroke:#4C5359

classDef Class_02 stroke-width:1px,stroke-dasharray:0,stroke:#A1BDDC,fill:#DDE6EE
class subGraph0 Class_02
style subGraph0 color:#4C5359

A@{ shape: rounded}
B@{ shape: rounded}
C@{ shape: rounded}
```

1. One agent fetches product data from an ERP system.
2. A second agent analyzes that data for compliance or profitability.
3. A third agent updates the ecommerce catalog accordingly.

Working together, the agents form a coordinated workflow that is more effective than any single agent working on its own.

The Custom Agents feature makes Emporix not just a platform with AI capabilities, but a truly extensible agentic ecosystem. By combining predefined agents with custom-built ones, merchants can automate, adapt, and innovate with precision — building agent teams that reflect the way your business really works.

### Creating a custom agent

**Prerequisites**

Before starting the agent creation process, prepare what the agent is supposed to use:

* [AI Tokens](/agentic-commerce-intelligence/agentic-intelligence/configuration/tokens.md)
* [AI OAuth-Based Gateway](/agentic-commerce-intelligence/agentic-intelligence/configuration/oauth-gateway.md)
* [AI Tools](/agentic-commerce-intelligence/agentic-intelligence/configuration/tools.md)
* [AI MCPs](/agentic-commerce-intelligence/agentic-intelligence/configuration/custom-mcp.md)

Follow these steps to create and configure a custom AI agent for specific tasks.

{% stepper %}
{% step %}

#### Choose to create an agent

In the Management Dashboard, go to the **Agentic AI** -> **AI Agents**. Choose **Add new agent** to start creating. Each field in the configuration is important to ensure that the agent behaves as expected and integrates seamlessly into your workflows.
{% endstep %}

{% step %}

#### Provide agent details

In the **General** tab, configure the agent's identity and capabilities:

* **ID** – The unique identifier of the agent. This ID is critical, as it is used whenever the agent is triggered through an API endpoint.
* **Agent Name** – A human-readable display name for the agent.
* **Description** – A text field where you can describe the agent’s purpose and what tasks it is designed to handle.
* **User Prompt** – The core of your agent’s intelligence. Define how the agent should operate.

{% hint style="success" %}
**User Prompt**

A well-written and designed prompt guides the agent’s reasoning, behavior, and tone. We recommend the [prompt engineering best practices](/agentic-commerce-intelligence/agentic-intelligence/best-practices.md#prompt-engineering) to ensure your agent performs consistently and effectively.
{% endhint %}

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-14af127d8caf512682f8824ac8480585ae69adbd%2Fagentic_agent_create.png?alt=media" alt="Creating custom agent"><figcaption><p>Creating custom agent</p></figcaption></figure>
{% endstep %}

{% step %}

#### Define the response output

Use **Output Format** when you want the agent to return a fixed set of fields or objects, respond with structured JSON instead of natural language, or provide data that can be passed directly to another service or frontend component.

When a schema is provided, the agent is guided to return responses in the specified contract-like format instead of free-form text. This is especially useful when the response is consumed by applications, workflows, or other systems that require predictable, machine-readable data:

* Enforces a consistent response structure
* Reduces parsing errors in downstream systems
* Makes agent responses easier to use in automations and UI components
* Improves reliability for integrations with business applications

You can define JSON schema on your own or use the **Generate JSON Schema** option. If the helper agent is not enabled yet, this prompts you to enable it. The assistant then creates a valid JSON schema definition based on your natural-language requirements.

{% hint style="info" %}
The [Agentic JSON Schema Assistant](/agentic-commerce-intelligence/agentic-intelligence/agent-library/json-schema-agent.md) is listed in **Predefined Agents** from the start. If it is not enabled yet, the first time you choose **Generate JSON Schema**, you are prompted to enable it. Once enabled, the agent remains available in the Agents Library.

<img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-7ee2c18f4cccfff0d681e2c32868b17008199336%2Fagentic_helper_agent.png?alt=media" alt="Enabling the helper agent for generating a JSON schema response" data-size="original">
{% endhint %}

Provide natural-language instructions on what you expect in the response.

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-7f63e4ed206f7351a43616800a30f44152d4925b%2Fagentic_generate_response_schema.png?alt=media" alt="Generating output format schema" width="400"><figcaption><p>Generating output format schema</p></figcaption></figure>

The agent transforms the requirements into a valid JSON schema.

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-eb8ad9e0a5d80750b170b530e5d7872c68b60e2a%2Fagentic_response_schema.png?alt=media" alt="Output format schema"><figcaption><p>JSON schema definition of the agent's response</p></figcaption></figure>
{% endstep %}

{% step %}

#### Define the agent visibility

To improve the agent's visibility and searchability among other agents, you can add:

* **Tags** – Choose one or more tags that fit the agent's functionality.
* **Icon** – Select an icon associated with the agent.

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-4fe30cd4208e63708870025eb93d2ea61d5b8556%2Fagentic_visibility.png?alt=media" alt="Agent tags and icon" width="500"><figcaption><p>Agent tags and icon</p></figcaption></figure>
{% endstep %}

{% step %}

#### Configure AI model

Each agent can be powered by a different language model (LLM). This gives you the flexibility to choose the best option for your specific use case. The **Model** tab includes configuration of the following options:

* **Provider** – Choose the provider that powers the agent:

  * **Emporix OpenAI** – For testing purposes only. This option lets you get started quickly without creating an external account.

  <div data-gb-custom-block data-tag="hint" data-style="danger" class="hint hint-danger"><p>The Emporix OpenAI <strong>must not</strong> be used for production. For production, use your own enterprise license or custom model to remain GDPR compliant. Note that there is a limited number of tokens available per tenant: * input tokens: 2 000 000 * output tokens: 500 000</p></div>

  * **Anthropic**
  * **Google**
  * **OpenAI**
  * **Self-hosted Ollama**
  * **Self-hosted vLLM**
* **Token** – Select a previously configured token (from the [AI Tokens](/agentic-commerce-intelligence/agentic-intelligence/configuration/tokens.md) view) to be used for communication with the LLM provider.
* **Models** – Each LLM provider offers multiple models (for instance, OpenAI GPT-4, Claude Sonnet 4.5, Gemini 2.5 Flash, and more). Specify the model you want to use with your agent. You can choose between **Standard** models offered by the LLM providers or add a **Custom** model identifier as supported by your provider.
* **Max Tokens** – Set the maximum length of responses the agent can generate, based on the particular model's specification and your use case.
* **Enable Memory** – Toggle the memory option on if you want the agent to keep the conversational data within the session. It is useful for chatbots or agents that collaborate with other agents and need to remember previous queries and answers to make logical references and adequate data matching. The memory is kept within one `session-id`. The agent stores memory only when this toggle is on. On subsequent chat requests, API clients send the `session-id` header. For details, see [How to communicate with an Agent](/api-documentation/api-guides/artificial-intelligence/ai-service/ai-tutorial.md#how-to-communicate-with-an-agent).
* **Temperature** – Define the level of randomness and creativity of your agent. Values range from `0.0` to `1.0`.
  * Lower values (for example, `0.1`) → More predictable, rule-following outputs.
  * Higher values (for example, `0.8`) → More creative, useful for tasks like product description generation.
* **Recursion Limit** – Define how many iterations the agent is allowed to perform before it stops the execution. This parameter prevents infinite loops and ensures safety and stability of the agent.
* **Self-hosted URL** – (For self-hosted models only) Enter the URL of the chosen model.
* **Base Provider** – (For self-hosted models only; optional) Select the cloud LLM provider that the self-hosted API endpoint is compatible with. Possible options are `OPENAI`, `GOOGLE`, and `ANTHROPIC`.
* **Authorization Header Name** – (For self-hosted models only; optional) Enter the authorization header name if you want to restrict LLM access.
* **Authorization Token** – (For self-hosted models only; optional) Enter the authorization token corresponding to the authorization header name if you want to restrict LLM access.

{% hint style="info" %}
For self-hosted AI models, you can enable OAuth authentication to protect the data and meet security standards. Toggle on **Use OAuth authentication** and select the relevant OAuth configuration. For configuration details, see [AI OAuth-Based Gateway](/agentic-commerce-intelligence/agentic-intelligence/configuration/oauth-gateway.md).
{% endhint %}

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-8115a1825c78104c596a5b6a36189a17309119d1%2Fagentic_agent_create_llm.png?alt=media" alt="Configuring LLM model for custom agent"><figcaption><p>Configuring LLM model for custom agent</p></figcaption></figure>
{% endstep %}

{% step %}

#### Define activation rules

In the **Trigger & Constraints** tab, define when and how the agent is triggered.

* **Required scopes** – Optional. Restrict which users or integrations can trigger the agent by selecting one or more scopes. If you leave this empty, no scope-based restriction is applied.
  * Anonymous – Anyone can trigger the agent; no scope is required.
  * Customer – A user requires the `ai-execution_manage_own` scope to invoke the agent.
  * Employee – A user requires the `ai-execution_manage` scope to invoke the agent.
  * Integration – An external integration, such as an ERP or CRM system, requires the `ai-execution_manage` scope to trigger the agent.
* **Trigger Types** – Select one or more ways the agent is activated. You can combine types, for example **Commerce Event** and **API**.
  * **API** – Call the Emporix endpoints to trigger the agent. This is useful when you want to start an agent with specific content or data passed through an API invocation. You can also use this option to include the agent in a [Value Stream](/vsm-guides/value-streams/value-stream-introduction.md).
  * **Commerce Event** – Make the agent listen to specific commerce-related events happening in the system and act immediately when those events occur.
  * **Slack** – Trigger the agent from Slack messages. The agent must have the [Slack AI Tool](/agentic-commerce-intelligence/agentic-intelligence/configuration/tools/comm-tools/slack.md) attached under **Native Tools**, and the tool's **Allowed operations** must include the actions required for channel creation and collaboration.
  * **Microsoft Teams** – Trigger the agent from Microsoft Teams messages. The agent must have the [MS Teams AI Tool](/agentic-commerce-intelligence/agentic-intelligence/configuration/tools/comm-tools/ms-teams.md) attached under **Native Tools**, and the tool's **Allowed operations** must include the actions required for channel or chat creation and collaboration.
* **Event Scopes** – Optional. Applies only when **Commerce Event** is selected in **Trigger Types**. Select the OAuth scopes Emporix uses to generate a token for Cloud Functions on a [dynamic MCP server](/agentic-commerce-intelligence/agentic-intelligence/configuration/custom-mcp.md#cloud-function-context-for-dynamic-mcp-tools). If you leave this empty, the Cloud Function receives no `emporix-token`.
* **Commerce Events** – Applies only when **Commerce Event** is selected in **Trigger Types**. Select the events that start the agent, for example `product.product-created`.

{% hint style="info" %}
**Event Scopes** is different from the agent's **Required scopes** field, which controls who may trigger the agent. It is also different from **Required scopes** on a dynamic MCP tool, which controls who may invoke the tool. Use **Event Scopes** for **Commerce Event** triggers, when no caller token exists.
{% endhint %}

{% hint style="warning" %}
If you select a Slack or MS Teams trigger, attach the matching communication tool. Without it, the agent cannot create or manage the collaboration channel. Channel creation and related actions depend on the operations granted on that tool instance; the **Allowed operations** list must not be empty.
{% endhint %}

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-f7779007ff1b935b30c78cda8774e9eaa0914a40%2Fagentic_agent_create_trigger.png?alt=media" alt="Configuring trigger types, Event Scopes, and commerce events for a custom agent"><figcaption><p>Selecting Trigger Types, Event Scopes, and Commerce Events</p></figcaption></figure>
{% endstep %}

{% step %}

#### Optional: Define constraints for commerce event triggers

Complete this step only when **Commerce Event** is selected in **Trigger Types** in the previous step.

The Commerce Event trigger type allows you to define specific rules for when the agent should act. You can constrain the agent to specific conditions occurring in the system.

* You can combine several conditions using `AND` or `OR` operators.
* Add a condition manually by specifying a relevant payload path and its value. Select the appropriate operator to define the value. The conditions you build are immediately reflected in the JSON output.
* You can choose **Generate Condition**. If the [Agentic Filters Creator Assistant](/agentic-commerce-intelligence/agentic-intelligence/agent-library/filters-agent.md) is not enabled yet, this prompts you to enable it. Prompt the agent in natural language to create a set of conditions for you. If the conditions are more complex, only the JSON output is visible.

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-b8d40c9a85258d4b53f7251819e2a922114b6417%2Fagentic_agent_create_conditions.png?alt=media" alt="Configuring trigger constraints for custom agent"><figcaption><p>Configuring trigger constraints for custom agent</p></figcaption></figure>

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-7e7d8c343e71aa4a61a1d9733d6b7b4fc47693a9%2Fagentic_agent_create_constraints.png?alt=media" alt="JSON representation of complex constraints for custom agent"><figcaption><p>JSON representation of complex constraints for custom agent</p></figcaption></figure>

Review the conditions, modify the JSON directly if needed, and choose **Apply** to save the constraints.
{% endstep %}

{% step %}

#### Attach tools

The agent can be equipped with additional tools it can use in the background to retrieve and process information, or to access different resources within or outside the system.

In the **Tools** tab, select the tools required to enable the agent to execute its tasks:

* Select built-in domain tools (for example, product, order, or customer). For more information about Emporix MCP domains, see the [Emporix MCP Server](/agentic-commerce-intelligence/mcp-in-emporix/mcp.md#available-tools).
* **Native Tools** – Extend the agent with additional capabilities, such as Slack, MS Teams, or RAG (including Product, Order, or custom-entity RAG). For example, an agent can use the MS Teams tool to collaborate with humans in Microsoft Teams without specifying the channel in the prompt; the channel is determined by the tool instance configuration. An agent can also use an Orders RAG tool for semantic order search. Prepare tools upfront in the [AI Tools](/agentic-commerce-intelligence/agentic-intelligence/configuration/tools.md) view.
* **Custom MCP** – Add external URL-based servers that you configured (for example, ERP or CRM). Define them in the [AI MCP](/agentic-commerce-intelligence/agentic-intelligence/configuration/custom-mcp.md#configuring-a-custom-mcp-server) view before you attach them to your agent. Attach URL-based servers with **Custom MCP**. Use **Dynamic MCP** only for Cloud Function-backed servers.
* **Dynamic MCP** – Add a Cloud Function-backed server from the [AI MCP](/agentic-commerce-intelligence/agentic-intelligence/configuration/custom-mcp.md#configuring-a-dynamic-mcp-server) view. The server catalog is the full set of tools. Leave the agent's tool list empty to grant all **enabled** tools on that server, or name a subset.

{% hint style="info" %}
Tool selection for a dynamic MCP has two layers. The MCP server stores the catalog, including disabled tools. Runtime uses enabled tools only. The agent attachment can narrow that set further by name.
{% endhint %}

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-139afeff8c9d92c7570fdc764ecbb8762734cffc%2Fagentic_agent_create_tools.png?alt=media" alt="Attaching AI tools to custom agent"><figcaption><p>Attaching AI tools to custom agent</p></figcaption></figure>
{% endstep %}

{% step %}

#### Configure agent collaboration

The agent might need assistance from other agents to correctly and smoothly process information, or to hand over its task to another agent when its job is complete. Connect one or multiple agents together, allowing them to operate as a team. In the **Prompt**, define when and how the agent hands over an action to another agent. You can attach as many agents as you need to create multi-step, collaborative workflows.

Collaborating agents stay in the same session. The supervisor's **Enable Memory** setting does not apply to attached agents. Turning **Enable Memory** on for the supervisor and every attached agent is recommended for more stable collaboration across steps. For operating rules, see [Agents collaboration](/agentic-commerce-intelligence/agentic-intelligence/best-practices.md#agents-collaboration).

When using a communication tool such as Slack or MS Teams, select the tool instance under **Native Tools** in the previous step. The tool instance and its **Allowed operations** determine what collaboration actions the agent can perform. In the **Prompt**, instruct the agent who to collaborate with and what to communicate. Do not specify the channel in the prompt. For details, see [Using a communication tool in an agent](/agentic-commerce-intelligence/agentic-intelligence/configuration/tools/comm-tools.md#using-a-communication-tool-in-an-agent).

<figure><img src="https://1530167654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8GgoeZEZYjZrpjOU6w52%2Fuploads%2Fgit-blob-8ab9e2d34386e5d380f64f3a836d06e28c45a888%2Fagentic_agent_create_collab.png?alt=media" alt="Connecting collaborating agents"><figcaption><p>Connecting collaborating agents</p></figcaption></figure>
{% endstep %}

{% step %}

#### Save the agent

Once ready, confirm your agent definition with **Save**.

As a result, the agent is available on the **My Agents** list.
{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developer.emporix.io/agentic-commerce-intelligence/agentic-intelligence/agents.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
