ClaudeInductive Automation Ignition (MES/SCADA) Agent view

How to connect Claude to Ignition (MES/SCADA)

Short answer

Connect Claude to Ignition by building a small MCP server that fronts your Gateway's WebDev endpoints and named queries, then register it as a connector in a Claude client or in your own application using the Anthropic API. For stricter environments, use Claude through AWS Bedrock or Google Vertex, or swap in an open-weight model on site.

Claude's strengths show up well in plant work: long context for reading a pile of alarm exports, careful handling of structured data, and solid code generation for Jython and SQL. Teams running Ignition often start by pasting a script into Claude and then ask the obvious next question: can it look at the Gateway itself?

The clean answer is the Model Context Protocol. Instead of giving Claude credentials, you run a server that exposes a short list of tools, such as read a tag, query history or list active alarms. Claude calls those tools, sees the results, and reasons over them. You control what each tool can touch.

This page walks through how that works with Ignition, the hosting choices for the model, and what to do when the plant cannot use a public cloud service.

What teams use it for

Root-cause conversation over alarms and trends

An engineer asks why a pump tripped. Claude calls tools for the alarm journal and tag history around the event, then explains the sequence and what to check next.

Project and script review

Export a Perspective view JSON or a Gateway script and ask Claude to find unused bindings, slow queries or blocking calls. The review uses files, not live data.

Tag model cleanup

Provide a UDT definition export and ask Claude to suggest naming consistency and missing documentation fields, then generate the changes for an engineer to apply in Designer.

Production reporting drafts

Claude calls a production summary tool and drafts a weekly line performance note with the figures attached, which a manager edits before sending.

MES query building

Describe a question in words and have Claude propose a parameterised named query against the MES schema, which a developer reviews and installs.

Incident write-ups

After a deviation, Claude assembles a timeline from alarm and downtime data and drafts the narrative section of the report.

Inductive Automation Ignition (MES/SCADA) integration surface

  • WebDev module resources provide HTTP endpoints running on the Gateway, which an MCP server can call or which can themselves be wrapped as tools.
  • Tag system functions, such as system.tag.readBlocking and browse, supply live state; the historian functions provide aggregated history.
  • Named queries and database connections let an MCP server call approved SQL with typed parameters against the MES and historian databases.
  • Alarm journal and active alarm queries give the event trail Claude needs for investigations. Confirm function names on your version.
  • Direct database access to the historian and MES tables is possible through a read-only SQL account, which suits an MCP server that sits beside the database instead of the Gateway.

How it works

  1. 1

    Choose where the MCP server runs

    Run it on a server in the same zone as the Gateway. Use stdio for a local desktop client, or an HTTP transport when several users or a hosted app connect.

  2. 2

    Define a small read-only tool set

    Start with get_tag_values, query_tag_history, list_active_alarms, get_production_summary and find_downtime_events. Give each strict input schemas and result size limits.

  3. 3

    Connect to Ignition with a restricted identity

    Call WebDev endpoints with a service token or read-only SQL credentials. Do not reuse an engineer's login.

  4. 4

    Register the server as a connector

    Add it to your Claude client or call it from an application built on the Anthropic API, using the tool-use loop to relay results back to the model.

  5. 5

    Pick the model hosting path

    Use the Anthropic API directly, or access Claude through AWS Bedrock or Google Vertex if your cloud agreements and region rules point there. Review data handling terms for each.

  6. 6

    Add logging and review

    Record every tool call and response. Review sampled conversations with the controls team before widening access.

Example flows

Pump trip investigation

Trigger: An engineer opens Claude and asks why Pump 4 tripped at 02:10.

  1. Claude calls list_active_alarms and an alarm journal tool around 02:00 to 02:20.
  2. Claude calls query_tag_history for motor current, discharge pressure and tank level over the same window.
  3. Claude correlates the low level alarm preceding the trip.
  4. Claude suggests checking the level transmitter and the inlet valve state.

Result: A sourced explanation in a minute or two, with each statement tied to a tag or alarm record.

Weekly line summary

Trigger: Monday morning, a manager requests last week's performance by line.

  1. Claude calls get_production_summary for each line and the week range.
  2. Claude requests downtime events for the three lowest lines.
  3. Claude drafts a concise summary with causes and open questions.

Result: A draft the manager edits and sends, instead of assembling figures by hand.

Keeping data on-prem

If the plant cannot reach an external API, pair the same MCP server with an open-weight model served locally through vLLM or Ollama, using an MCP-capable chat client or your own tool-use loop. The server code and tool definitions stay the same, only the model endpoint changes. Cloud-hosted Claude through Bedrock or Vertex may satisfy teams that need region control but are allowed a managed cloud. For fully air-gapped sites, the on-prem model is the realistic route, and a partner such as Netray can build and tune it.

Security checklist

  • Give the MCP server read-only access first, and keep write tools out of scope until approvals exist.
  • Authenticate users to the MCP server and map them to Ignition roles so people only see what they could see in Perspective.
  • Validate every tool argument server side, including tag path allow lists and time window limits.
  • Keep secrets in a vault or environment store, never in tool descriptions or prompts.
  • Audit logs should capture user, tool, parameters and returned row counts.

Ways to get it done

Claude with a self-built MCP server

Effort: One to three weeks for a read-only tool set.

Teams that want a fast way to query the Gateway from a Claude client.

Claude via Bedrock or Vertex in your cloud account

Effort: Add a few days for networking, IAM and approval.

Organisations with cloud governance and regional constraints.

Open-weight model on site with the same tools

Effort: Pilot in weeks, with Netray or your own team.

Air-gapped, defense and contract-restricted operations.

Pitfalls

  • !Exposing too many tools at once, which makes the model pick poorly. Start with five.
  • !Returning entire tag trees or unbounded history into the context window.
  • !Using an admin account for the connector, which hides who asked for what.
  • !Assuming the model knows your tag naming. Provide a searchable catalog tool.
  • !Skipping testing on a staging Gateway before pointing the server at production.

Frequently asked questions

Is there an official Claude connector for Ignition?

Check current marketplace and vendor announcements, as offerings change. If none fits, you can build an MCP server over WebDev and named queries, which is a modest project and gives you control over scope and permissions.

Can Claude run inside our air-gapped plant?

Claude models are accessed as a service through Anthropic or a cloud provider, so a fully air-gapped site cannot call them. Use the same MCP tool layer with an open-weight model hosted locally for that case.

Does Claude need access to the historian database?

Not directly. It is safer to call tools that run approved queries or historian functions and return aggregates. A read-only SQL account is an option if you prefer to bypass the Gateway for heavy queries.

Can Claude change tag values or acknowledge alarms?

Only if you build tools for that, and you should not at first. If you do, require explicit approval from an authorised user and log it. Alarm acknowledgement in particular has safety and procedure implications.

Which is better for Ignition work, Claude or ChatGPT?

Both can do the job. The difference is rarely the model and mostly the tool layer, data controls and cost. An MCP server works with several clients, so you avoid being locked to one.

Want Claude working on your Inductive Automation Ignition (MES/SCADA)?

A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.

Get a free assessment