# How to add an AI chatbot to Ignition (MES/SCADA)

> Source: https://netray.co/integrations/ignition-ai-chatbot
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Integrations

## Short answer

Add an AI chatbot to Ignition by embedding a chat panel in a Perspective view that calls a backend service, which uses WebDev endpoints and named queries to fetch tag, alarm and MES data for the signed-in user. Keep answers grounded in those results and run an open-weight model locally if data cannot leave the plant.

## System

Inductive Automation Ignition (MES/SCADA)

## Capability

ai-chatbot

## Intro

Operators and maintenance staff ask the same kinds of questions all day. What is the status of the oven, who changed this setpoint, what does alarm 114 mean, what did we run last shift. Today the answers live across Perspective screens, alarm tables, a procedure binder and someone's memory.

A chatbot inside Ignition puts one place to ask. Because Perspective runs in a browser or on a phone and already knows who is signed in, it is a natural home. The challenge is not the chat widget; it is keeping answers tied to real data and respecting what each user is allowed to see.

This page covers a practical design: where the chat lives, what it can fetch, how it stays grounded, and how to run it on-prem for plants that cannot use a public service.

## Use Cases

### Operator status questions

**Description:** An operator types 'how is the packaging line doing' and gets current state, rate against target and any active alarms, drawn from tags and the MES summary.

### Alarm explanation

**Description:** Select an alarm in the alarm table and the chatbot explains what it means, likely causes and the standard response, based on your approved procedure documents.

### Maintenance history lookup

**Description:** A technician asks when a motor was last serviced. The chatbot queries the maintenance table or CMMS link and returns the dates and notes.

### Shift log assistant

**Description:** Supervisors dictate or type notes and the chatbot structures them into the shift log entry with the line, time and category fields filled in for review.

### Procedure and SOP search

**Description:** A retrieval index over controlled documents answers 'what is the changeover sequence for product X' with the section cited.

### Customer or planner view

**Description:** A planning screen lets staff ask for order progress across lines, using MES data and ERP status without opening several reports.

## System Surface

- Perspective module: browser and mobile views where you can place a chat component built with an embedded frame, a custom component or a text area bound to session events.
- Gateway scripting and session properties give the signed-in user, roles and zone, which you pass to the backend for permission filtering.
- WebDev endpoints let the chatbot backend fetch tag values, alarm data and summaries; named queries cover MES and maintenance tables.
- Message handlers and Perspective session messaging allow pushing a response back to the right session without polling.
- Alarm status and journal tables supply the context for alarm help; document stores or a SQL table can feed the procedure index.

## How It Works

### Define the scope and persona

**Detail:** Decide who the chatbot serves, such as operators, maintenance or planners, and what it should refuse. Write this into the system instructions and test with real questions.

### Build the backend service

**Detail:** A small service receives the question, user identity and context such as the current view or selected alarm. It decides which tools to call and assembles the answer.

### Create the data tools

**Detail:** Implement fixed tools over WebDev and named queries for tags, alarms, production, downtime and maintenance. Validate parameters and filter by the user's roles.

### Index approved documents

**Detail:** Load SOPs, work instructions and alarm response guides into a local retrieval index, with document ID, revision and effective date so answers cite a controlled source.

### Embed the chat in Perspective

**Detail:** Add a docked panel or popup view that sends the question and context to the service and renders the response with source links and a feedback button.

### Test on real shifts, then widen

**Detail:** Run with a small group, collect thumbs down feedback, review misses weekly and update tools or documents before enabling more users.

## Example Flows

### Alarm help at the HMI

**Trigger:** An operator taps 'Ask' next to a high temperature alarm on the extruder.

**Steps:**

- Perspective sends the alarm ID, source and the user's role to the service.
- Service fetches the current tag values and the last 30 minutes of related history.
- Service retrieves the response procedure for that alarm from the index.
- Chatbot replies with the likely cause, first checks and the SOP section.

**Result:** The operator sees a grounded answer with a source, without leaving the screen.

### Handover question

**Trigger:** The incoming supervisor asks what happened on Line 2 overnight.

**Steps:**

- Service calls the production and downtime tools for Line 2 and the night shift window.
- Service pulls the shift log entries from the database.
- Chatbot returns a short summary with counts, top downtime reasons and notes.

**Result:** A consistent handover in seconds, with the underlying records one click away.

## On Prem

A plant chatbot should be able to run entirely inside the site. Host an open-weight model on a local GPU server with vLLM or Ollama, keep the retrieval index and the chat history database on your own storage, and connect the backend to the Gateway across the internal network. Perspective users reach it through the same Gateway they already use, so there is no new external dependency. For multi-site groups, a central private cloud can serve several Gateways while each site's data stays tagged and filtered by site. Netray builds this pattern when teams want help with the model, retrieval and approval layers.

## Security

- Pass the Perspective user identity to the backend and enforce roles and area limits on the server, not in the prompt.
- Show sources for every factual answer and mark clearly when the answer comes from a document rather than live data.
- Do not allow the chatbot to acknowledge alarms or write tags; offer a deep link to the relevant screen instead.
- Store chat logs with retention rules, since they can contain operational detail and personal information.
- Keep the model and index on the plant network and block outbound access from the chat service.

## Options

### Vendor or marketplace AI module for Ignition

**Fit:** Sites that prefer a packaged component, if one exists for your version and meets your data rules.

**Effort:** Evaluation and configuration, weeks.

### Build a Perspective chat with an in-house backend

**Fit:** Teams with Jython, Python and web skills who want full control.

**Effort:** Six to ten weeks to a useful pilot with retrieval and tools.

### Partner build with an on-prem model

**Fit:** Regulated or contract-restricted plants that need local inference and audit.

**Effort:** Pilot on one line in weeks, then widening by area.

## Pitfalls

- Letting the chatbot answer from general knowledge when tools return nothing. Make it say it does not know.
- Using uncontrolled documents in the index, so operators receive an obsolete procedure.
- Ignoring latency. Operators will not wait; stream responses and keep tools fast.
- Forgetting mobile layouts in Perspective, where most shop-floor use actually happens.
- Launching to everyone at once without a feedback loop to correct wrong answers.

## Faq

### Can we put a chatbot in Perspective without extra modules?

**Answer:** Yes, in a basic way. You can build a view that posts text to your backend and shows the reply using standard Perspective components and scripting. Richer chat features may use an embedded web component, depending on your version.

### Will the chatbot work offline or on an isolated network?

**Answer:** Yes if the model and retrieval run locally. An open-weight model served on a site GPU server answers over the internal network, so the plant keeps working without internet access.

### How do we keep it from giving unsafe advice?

**Answer:** Ground answers in approved procedures, cite the source, route safety critical questions to a standard text and a human, and test with adversarial questions. It supports operators but does not replace training or safety systems.

### Can it show data from the ERP as well?

**Answer:** Yes, by adding read tools for the ERP API or a staging table, filtered by role. Customer order status and item availability are common questions that cross MES and ERP.

### Is a simple dashboard enough instead?

**Answer:** Often for fixed questions, yes. A chatbot earns its place when questions vary, span several systems, or rely on documents. Start with a short list of real questions and see how many a dashboard already answers.

## Search terms

ignition ai chatbot, chatbot for ignition perspective, scada chatbot, ai assistant for operators ignition, perspective chat component, mes chatbot on-prem, ignition alarm help ai, inductive automation chatbot, private chatbot manufacturing floor

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
