Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Page properties
hiddentrue
idconnector-metadata


Property

Value

Sector

AI Analysis & MCP

Group

Cloud Services

Connector

AI MCP for Designer

Name

DesignerMCP



Enable AI-powered solution configuration through Model Context Protocol integration.

  • Name: DesignerMCP
  • Version: 0.9.0.0
  • Interface: TCP/IP
  • Configuration: ( native)

Table of Contents
maxLevel2
minLevel2
stylenone



Documentation pages: AI Integration  | MCP for Designer In Action | AI MCP for Designer Connector

 


Info
titlePreview Connector

Preview Version for tests and training, not released for production.


Overview

The AI MCP for Designer

service

enables AI models to interact with

the

FrameworX Designer

application

, providing intelligent assistance for solution configuration

tasks. Instead of manually creating and configuring objects, you can describe

. Describe what you need in natural

language and let AI generate

language—AI generates the configuration.

Note: This connector is for configuration-time operations (building solutions in Designer.exe). For querying live data from running solutions, see .


Table of Contents
maxLevel2
minLevel2
indent10px
excludeOverview
stylenone


Integration Architecture

AI ModelMCP ProtocolSolution Configuration
Claude, GPT, GitHub Copilot
Model Context Protocol
Designer.exe
Structured Methods


Manage SolutionsCreate ObjectsCreate User InterfaceAuxiliary tools

Create or open solutions.
Get Solution Information

List, Create or Update
Solution objects
List, create or update
Displays and Symbols
Navigate, TrackChanges
CrossRef, Docs Access 



Visual Indicator

When AI is connected to Designer, you'll see:

  • "AI MCP" badge — Orange label in the toolbar area
  • Orange border — Glowing border around the main working area

This provides clear visual feedback that AI is actively controlling the Designer.

AI MCP for Runtime Connector.

Key Capabilities

  • Navigate Designer UI — AI can observe and navigate the Designer interface
  • Create Objects — Generate Tags, Displays, Alarms, Devices, and other solution objects
  • Query Objects — Search and inspect existing solution configuration
  • Validate Configuration — Pre-check configurations before creating objects
  • Generate Displays — Create Canvas and Dashboard displays with proper FrameworX patterns
  • Discover Protocols — Search available communication protocols and their configuration schemas
  • Track Changes — Query audit trails, cross-references, and version control
  • Access Documentation — Search docs and download example solutions

When to Use MCP for Designer

Use CaseExampleBulk object creation"Create 50 temperature tags following naming pattern Area{N}_Temp"Display generation"Create a dashboard showing all pump statuses in a 2×3 grid"Device configuration"Connect to a Siemens S7-1500 PLC at IP 192.168.1.10"Configuration review"Review my alarm configuration and suggest improvements"Learning assistance"Show me how to configure historian logging for this tag"Object discovery"List all tags in the Boiler area that don't have alarms configured"Protocol discovery"What protocols are available for Siemens PLCs?"Cross-reference analysis"Where is tag Tank1Level used in the solution?"


Prerequisites

  • FrameworX 10.1 Designer
  • .NET 8.0 runtime
  • Claude Desktop or compatible MCP client
  • Network connectivity (if Designer runs on remote machine)

Configuration

Enable/Disable MCP for Designer

The MCP for Designer is Enabled by default. If you want to To disable it:

  1. Open FrameworX Designer
  2. Navigate to Solutions → Settings
  3. Uncheck Allow MCP For Designer

This configuration has the scope of that solution onlysetting is per-solution.

Connecting Claude Desktop

Configure Claude Desktop to connect to the Designer MCP server:

  1. Open Claude Desktop
  2. Go to Settings → Developer → Edit Config
  3. Open
the
  1. "claude_desktop_config.json"
file
  1. Add the
MCP for Designer
  1. configuration:
{
  "mcpServers": {
    "FrameworX-Designer": {
      "command": "<ProductPath>\\MCP\\DesignerMCP.exe",
      "transport": "stdio"
    }
  }
}
  1. Replace <ProductPath> with your FrameworX installation directory (use double backslashes)
  2. Save and close
the file
  1. Restart Claude Desktop completely (close via
Windows
  1. Task Manager)

Tip: You can run both MCP for Designer and MCP for Runtime simultaneously by including both configurations in your claude_desktop_config.json file.

Verifying Connection

  1. Open Claude Desktop
  2. Go to Settings → Developer
  3. Verify "FrameworX-Designer" shows status "running"
  4. Open a new chat and click Search and Tools
you should see the
  1. Designer tools should be listed
  2. In Designer, verify the orange "AI MCP" badge appears

Available Tools

AI MCP for Designer provides 17 tools organized by category:

Solution Management (3 tools)

ToolPurpose
create_solutionCreate a new FrameworX solution
(.dbsln file)
open_solutionOpen an existing solution
to work with
get_solution_infoGet solution overview with object counts
per table


Info

The solutions visible to the MCP for Designer are only the ones in folders defined as Allow Remove Access, by the Solution Center tool. By Default the solutions in the  sub-folder  ..\Documents\FrameworXSolutions are visible.

→ See Solution Center ? Server Information

Object Operations (7 tools)

ToolPurpose
list_objectsList objects in a table
OR
or browse runtime namespaces
(Server, Client, Tag, etc.)
get_objects_configGet full JSON configuration for specific objects
get_table_schemaGet field definitions and valid values for any table
type
create_objectsCreate new objects from JSON configuration
validate_jsonValidate
JSON
configuration before creating objects
update_objectModify existing objects (respects MCP Category
permissions
)
delete_objectsRemove objects from
the
solution

Runtime Values: When runtime is connected, object tools include live values. Use designer_action('get_runtime_diagnostics') to check connection status.

Designer Control (1 tool)

ToolPurpose
designer_actionNavigate UI, get state, control runtime
, set execution profile

Available actions:

  • navigate — Go to module, table, or object path
  • get_state — Get current Designer view and selection
(optional screenshot)
  • get_runtime_status — Check if runtime is running
  • get_startup_config — Get startup module settings
  • start_runtime / stop_runtime — Control runtime execution
  • set_execution_profile — Switch between Development and Production

Display Tools (1 tool)

ToolPurpose
get_element_schemaGet display element properties (Canvas, Dashboard,
TextBox, WizardSymbol, etc.
controls)

Special queries:

  • get_element_schema('Canvas') — Canvas display structure
with layout info
  • get_element_schema('Dashboard') — Dashboard grid and cell structure
  • get_element_schema('WizardSymbol') — Industrial symbols: BLOWER, MOTOR, PUMP, TANK, VALVE

Protocol Tools (2 tools)

ToolPurpose
list_protocolsSearch
available
protocols by equipment name (fuzzy matching)
get_protocol_schemaGet protocol-specific
field schema for
configuration fields

Search examples:

  • list_protocols(search='siemens') → S7, S7Plus
  • list_protocols(search='allen') → EtherNet/IP, DF1, ControlLogix
  • list_protocols(search='modbus') → Modbus TCP, Modbus RTU
list_protocols(search='opc') → OPC UA, OPC DA

Documentation Tools (2 tools)

ToolPurpose
search_docsSearch FrameworX documentation with
label/section
filters
get_example_solutionDownload example solution JSON configuration

Documentation labels: concept, tutorial, how-to, example, reference, connector, code, control

Track Changes (1 tool)

ToolPurpose
get_track_changesQuery audit trail, cross-references,
version control, usage counts
versions

Available tables:

  • RecentChanges — Audit trail
of who changed what and when
  • VersionControl — Table versions
and modification dates
  • CrossReference — Where an object is used (requires object_name)
  • UseCount — Usage frequency
per object

Table Types

ReferenceObjects are organized by module. Use these TableType names with object tools:

Quick Reference

CategoryTableType
Designer
Tab
Description
UNSUnsTagsTags

UnsUserTypes
Process variable tagsUnsUserTypesUserTypesCustom data structures (UDT)
UserTypes

UnsTagProvidersTagProviders
External data sources (MQTT, OPC UA)

UnsEnumerationsEnumerations
Number-to-string mappings
DevicesDevicesChannelsChannels
Protocol connections

DevicesNodesNodes
Device addresses

DevicesPointsPoints
Tag-to-address mappings
AlarmsAlarmsGroupsGroups
Alarm behavior settings

AlarmsItemsItems
Individual alarm definitions

AlarmsAreasAreas
Alarm hierarchy
HistorianHistorianTagsHistorianTags
Tags configured for logging

HistorianTablesHistorianTables
Storage configurations

HistorianStorageLocationsStorageLocations
Database connections
DatasetsDatasetsDBsDBs
Database connections

DatasetsQueriesQueries
SQL query definitions

DatasetsTablesTables
Direct table access

DatasetsFilesFiles
File operations
ScriptsScriptsTasksTasks
Event-triggered code

ScriptsClassesClasses
Reusable code libraries

ScriptsExpressionsExpressions
One-liner calculations
ReportsReportsFormsForms
Document templates

ReportsWebDataWebData
JSON/XML data objects
DisplaysDisplaysListList
UI screens and pages

DisplaysSymbolsSymbols
Reusable visual components

DisplaysLayoutsLayouts
Screen layout definitions

DisplaysImagesImages
Image library
SecuritySecurityUsersUsers
User accounts

SecurityPermissionsPermissions
Permission flags

SecurityPoliciesPolicies
Security rules

Syntax

Reference

Quick Reference

Tag Access Methods

MethodSyntaxWhen to Use
Direct pathTag.Folder/Name.ValueStandard tag reference
Asset functionAsset("Folder/Name").ValueWorks everywhere, required for TagProvider dynamic paths

Context-Specific Syntax

Context
Context
SyntaxExample
Scripts (C#, VB, Python)@ prefix
required
+ .Value@Tag.Tank1.Level
.Value or @Asset("Tank1")
.Value
ExpressionsNo
@
prefix, no .ValueTag.Tank1.Level + 10
Display bindings@ prefix + .Value@Tag.Tank1.Level
.ValueDynamic bindingsAsset with expression@Asset(Tag.SelectedPath)
.Value
String embeddingCurly braces"Level: {Tag.Tank1.Level} %"

System Namespaces

NamespacePurposeExamples
ServerServer-wide information@Server.DateTime, @Server.MachineName, @Server.ProductVersion
ClientPer-client information (different per user)@Client.Username, @Client.StationName, @Client.MachineName
InfoSystem diagnostics@Info.CPU, @Info.Memory, @Info.DiskSpace

Module Namespaces

Every configured object has runtime properties accessible via namespace:

  • Alarm.Group.Critical.AckRequired, Alarm.Item.HighTemp.Active
  • Device.Channel.Modbus1.Status, Device.Node.PLC1.Error
  • Script.Task.Startup.LastRun, Display.MainPage.IsOpen

Use list_objects('Server') or list_objects('Alarm.Group') to explore.

MCP Category System

Tag Path Syntax

  • Folders: Tag.Folder1/Folder2/TagName
  • UDT members: Tag.Controller1.SP
  • Arrays: Tag.ArrayTag[5]

MCP Category and Update Protection

Objects created by AI

automatically

receive Category = "MCP" to track AI-created vs manually-created

objects

.

Update Permissions

Object CategoryWhat AI Can Update
Contains "MCP"All fields (full replacement)
No "MCP" (user edited)Description field only

How

It Works

it works:

  1. AI creates object → Category
automatically
  1. set to "MCP"
  2. User edits
object
  1. in Designer → "MCP" removed
from Category
  1. AI
tries to update
  1. updates → Limited to Description field
only
  1. To re-enable
full AI updates
  1. → Manually add "MCP" to Category

Display JSON Formats

Canvas Display

Canvas displays use absolute pixel positioning with an Elements array:

{
  "Name": "TankOverview",
  "PanelType": "Canvas",
  "Size": "1366 x 728",
  "Elements": [
    {
      "Type": "TextBox",
      "Left": 100,
      "Top": 50,
      "Width": 120,
      "Height": 28,
      "LinkedValue": "@Tag.Tank1.Level.Value"
    },
    {
      "Type": "Symbol",
      "WizardType": "TANK",
      "Left": 100,
      "Top": 100,
      "Width": 65,
      "Height": 65
    }
  ]
}

Dashboard Display

Dashboard displays use grid-based positioning with Cells array:

{
  "Name": "MotorDashboard",
  "PanelType": "Dashboard",
  "Size": "1366 x 728",
  "DashboardDisplay": {
    "Columns": ["*", "*"],
    "Rows": ["*", "*"]
  },
  "Cells": [
    {
      "Row": 0,
      "Col": 0,
      "Cell": { "HeaderLink": "Motor 1" },
      "Content": {
        "Type": "TextBox",
        "LinkedValue": "@Tag.Motor1.Speed.Value"
      }
    }
  ]
}

Wizard Symbols

Pre-built industrial symbols with default appearance:
  • Types: BLOWER, MOTOR, PUMP, TANK, VALVE
  • Usage: { "Type": "Symbol", "WizardType": "VALVE", "Left": 100, "Top": 200 }
  • User customizes appearance in Designer after creation

Common Workflows

Creating Tags

"Create a Double tag called TankLevel in the Tanks folder with range 0-100"

Setting Up

Device Communication

"

I need to connect

Connect to a Siemens S7-1500 PLC at

IP

192.168.1.10"

AI will: Search protocols → Present options → Create Channel → Create Node → Help map Points

Creating Displays

"Create a dashboard with 4 cells showing TankLevel, TankTemp, PumpStatus, and AlarmCount"

Configuring Alarms

"Create high and low alarms for TankLevel: High at 90 (Critical), Low at 10 (Warning)"

Finding

Where Objects Are Used

Object Usage

"Where is tag Tank1Level used

in the solution

?"

AI

will use

uses: get_track_changes('CrossReference', object_name='Tag.Tank1Level')


Best Practices

Be Specific

Instead of "Create some tags", say:

"Create these tags in the Production folder: MixerSpeed (Double, 0-1000 RPM), MixerRunning (Digital), BatchCount (Integer)"

Validate Before Bulk Operations

"Validate this configuration before creating 50 tags"

Review Changes

"Show me the recent changes" or "Navigate to the Tags tab"

Use Documentation

"Search the documentation for alarm configuration options"


Troubleshooting

Designer MCP Server not starting

  • Verify .NET 8.0 runtime is installed
  • Check that Designer is running
  • Confirm MCP is enabled in Designer settings
  • Check firewall settings
for the configured port

Claude doesn't see Designer tools

  • Ensure claude_desktop_config.json path is correct (
use
  • double backslashes)
  • Restart Claude completely (close via Task Manager)
  • Verify Designer MCP shows "running" in Claude settings

"Update blocked" message

The object
  • Object doesn't have MCP in
its
  • Category
  • User edited the object
in Designer
  • , removing MCP
  • AI can only update
the
  • Description field
  • To enable
full updates
  • : add "MCP" to Category in Designer

Changes not appearing in Designer

  • Refresh
the
  • Designer view (F5)
  • For displays, close and reopen the display editor
  • Verify
the
  • operation completed
successfully
  • in Claude's response

No visual indicator (orange border)

  • Verify MCP connection is active in Claude Desktop
  • Check Designer settings for MCP enabled
  • Restart Designer if needed

Related Documentation

  • AI MCP for Runtime Connector — Query live tags, alarms, and historian
  • AI-Ready by Design — Technical architecture for AI integration
  • Devices Module Reference — Channel, Node, Point configuration
    • Overview and examples
    • Query live data
    • Deep technical details
    • Technical architecture
    Displays Module Reference — Canvas and Dashboard formats



    In this section...

    Page Tree
    root@parent