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

  • Name: DesignerMCP, ConsoleMCP
  • Version: 0.9.0.0
  • Interface: TCP/IP
  • Configuration: native



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

Preview Connector

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


Overview

The AI Designer connector enables AI models to interact with FrameworX Designer, providing intelligent assistance for solution configuration. Describe what you need in natural language, AI generates the configuration.

Two MCP servers are available:

  • DesignerMCP — Live IDE co-pilot. Claude connects to the running Designer and builds solutions with real-time visual feedback. 18 tools covering the full solution lifecycle.
  • ConsoleMCP — File-based engineering via Claude Code. Generates JSON configuration files without a running Designer. 12 tools (a subset of the full set). The engineer imports files into Designer for validation and deployment.

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



Integration Architecture

AI ModelMCP ProtocolSolution Configuration
Claude Desktop, Claude.ai, Cursor, GitHub Copilot
Model Context Protocol
Designer.exe (live co-pilot)
Claude Code (console tool)
Model Context Protocol
JSON files (ConsoleMCP)


Structured Methods

Manage SolutionsRead & Write ObjectsSchema & DiscoveryDesigner ControlDocumentation
Create, open, list solutions, get info & audit.List, create, update, delete, rename objects.Table schemas, display elements, protocol search.Navigate, find, screenshot, runtime, security.Search docs, fetch pages, inspect examples.


Overview

The AI Designer connector enables AI models to interact with FrameworX Designer, providing intelligent assistance for solution configuration. Describe what you need in natural language, AI generates the configuration.

Two MCP servers are available:

  • DesignerMCP — Live IDE co-pilot. Claude connects to the running Designer and builds solutions with real-time visual feedback. 16 tools covering the full solution lifecycle.
  • ConsoleMCP — File-based engineering via Claude Code. Generates JSON configuration files without a running Designer. 12 tools (a subset of the full set). The engineer imports files into Designer for validation and deployment.

Both share the same schema, documentation, and core object tools. ConsoleMCP simply operates on files instead of a live IDE, and excludes the Designer UI control tools.

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


Visual Indicator

When AI is connected to Designer (DesignerMCP mode), you'll see:

  • "AI Designer" 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. ConsoleMCP has no visual indicator — it operates on files without a running Designer.


Configuration

For installation and connection setup (DesignerMCP, ConsoleMCP, HTTP/SSE mode, Claude Skill), see [Claude Skill and MCP Setup](Claude Skill and MCP Setup).

Enable/Disable AI Designer

AI Designer is Enabled by default. To disable:

  1. Open FrameworX Designer
  2. Navigate to Uns → DataServers
  3. Uncheck Allow MCP For Designer

This setting is per-solution.


Available Tools (18)

All tools are available in DesignerMCP. ConsoleMCP provides a subset of 12 — see ConsoleMCP: Claude Code below for what's different.

Tools marked ? are DesignerMCP-only — they require a running Designer IDE.

Solution Management (4 tools)

ToolPurpose
list_solutionsList available solutions and templates on this machine (works without Designer running)
create_solutionCreate a new solution, launch Designer, and return the MCP Context document with security info
open_solutionOpen an existing solution, launch Designer, and return the MCP Context document with security info
get_solution_info ?Get solution statistics — object counts per module, recent changes, audit trail

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

→ See Solution Center — Server Information

MCP Authorization

The first open_solution, create_solution, or inspect_external_solution call in a conversation triggers an MCP authorization prompt. Approve it once — subsequent calls need no further authorization.

Object Operations (5 tools)

ToolPurpose
get_objectsRead objects from config tables. detail='summary' for listing, detail='full' for complete JSON. Singletons always return full config.
browse_runtime_properties ?Browse runtime namespace paths (Server, Client, Tag, Alarm, Device, etc.)
write_objectsCreate or update objects from JSON. Modes: upsert (default), create. Supports dry_run for validation. Multi-table writes handle dependency order automatically.
delete_objectsDelete objects by name. Backend prevents deletion of referenced objects — use find_object to inspect usage first.
rename_objectRename an object with safe refactoring — all cross-references update automatically (linked by ID, not name).

Singleton Tables: SolutionSettings, AlarmsGlobalSettings, RuntimeStartup, and RuntimeExecutionProfiles have a single configuration row — no Name column needed. Use get_objects to read, write_objects(mode='upsert') to modify.

Schema & Discovery (4 tools)

ToolPurpose
get_table_schemaGet field definitions for any table type. No parameter lists all table types.
list_protocolsSearch and discover communication protocols. Fuzzy matching by vendor name. Auto-includes protocol schema when search returns exactly one match.
list_elementsGet display element properties. No parameter lists all element types by category. Query by type: list_elements('Canvas'), list_elements('Dashboard'), list_elements('WizardSymbol').
list_dynamicsBrowse dynamic behaviors (FillColor, Visibility, Action, Rotate, etc.) by category or search. Returns property schemas and ready-to-use JSON patterns.

Protocol search examples:

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

Display element queries:

  • list_elements() — List all element types by category
  • list_elements('Canvas') — Canvas display structure
  • list_elements('Dashboard') — Dashboard grid and cell structure
  • list_elements('WizardSymbol') — Industrial symbols: BLOWER, MOTOR, PUMP, TANK, VALVE

Dynamic behavior queries:

  • list_dynamics() — Overview of all dynamics grouped by category
  • list_dynamics('color') — FillColor, LineColor, TextColor dynamics
  • list_dynamics('action') — ActionDynamic for click handlers
  • list_dynamics('animation') — Rotate, Move, Scale, Skew dynamics
  • list_dynamics('FillColorDynamic') — Full schema with property definitions

Designer UI & Control (3 tools)

ToolPurpose
get_stateGet current Designer or Runtime state as lightweight text data. Active page, selected object, compilation errors, runtime health.
get_screenshotCapture a screenshot of the Designer UI, Runtime view, or display/symbol previews. Saves image to the Exchange/Screenshots/ folder with a descriptive filename. AI reads the image via the filesystem MCP server.
designer_actionPerform Designer commands: navigation, find, runtime control, and security (8 actions).

designer_action available actions:

ActionPurposeOptions
navigateGo to any module, table, or objectTarget path: 'DataExplorer.MQTTTools', 'Tag.Folder1/Level', 'Display.MainPage'
find_objectFind where an object is used — opens Find Results panelObject name: 'Tag.Folder1/Level'
find_nextStep through Find Results — Designer navigates to each location(none)
start_runtimeStart solution runtime(none)
stop_runtimeStop runtime(none)
hot_reloadPush design changes to running runtime without restart(none)
logonAuthenticate a user for secured solutions'username:password'
logoffReturn to Guest (anonymous) user(none)

Note: get_objects and write_objects auto-navigate the Designer UI to the relevant context. Use navigate only for pages without configuration objects (DataExplorer tools, AlarmsMonitor, etc.).

Page-specific actions: Some Designer pages expose additional context-specific actions (e.g., expand_all, collapse_all on table views). These appear in get_state responses as tabActions and can be passed directly to designer_action.

Documentation & Knowledge (2 tools)

ToolPurpose
search_docsSearch FrameworX documentation with label/section filtering — or fetch full page content by URL. Supports skills, code snippets, examples, and tutorials.
inspect_external_solution

Open an external reference solution (local or from web) to inspect its full JSON configuration. Use to study and replicate complete implementation patterns.

Creates a subfolder at Exchange named after the application containing solution json files.  AI reads files via the filesystem MCP server.

search_docs modes:

  • Search mode: search_docs('alarm configuration') — returns titles and snippets
  • Fetch mode: search_docs(fetch_url='<url from results>') — returns full page content with code examples

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

AI Skills: Use search_docs('', labels='skill') to discover available step-by-step implementation guides. Skills are multi-module playbooks that prevent common mistakes in complex configurations.

inspect_external_solution workflow:

  1. search_docs(query, labels='example') — find documented solution examples
  2. inspect_external_solution(solution_path) — list available JSON files
  3. inspect_external_solution(solution_path, file_name='Tags.json') — read specific configuration

inspect_application workflow:

  1. inspect_application() — exports current solution to Exchange/<AppName>/ folder
  2. AI uses the filesystem MCP server to list and read exported JSON files
  3. Useful for solution analysis, documentation, comparison, and migration

ConsoleMCP: Claude Code

ConsoleMCP is the file-based companion for Claude Code. It uses 12 of the 16 tools listed above — the same schemas, the same documentation, the same object operations — but writes to JSON files instead of a live Designer.

For installation and configuration, see [Claude Skill and MCP Setup — Option C](Claude Skill and MCP Setup).

What's Different

Tools that require a running Designer IDE and are not available in ConsoleMCP:

Excluded ToolWhy
get_solution_infoQueries live solution state (object counts, audit trail)
browse_runtime_propertiesBrowses the live runtime namespace
designer_action (includes get_state, get_screenshot, find_object, hot_reload, navigate, start/stop runtime, logon/logoff)Controls the Designer UI

Behavioral differences in shared tools:

ToolDesignerMCPConsoleMCP
create_solution / open_solutionLaunches Designer.exe, opens solution in IDECreates or opens a <n>-json/ folder in Documents/FrameworX/Exchange/
list_solutionsScans Solution Center folders for .fxproj filesScans Exchange folder for *-json/ folders
write_objectsWrites to live solution via named pipe, backend validates in real timeWrites JSON files following ExportFormat 1.2, validates against local schema
get_objectsReads from live solutionReads from JSON files in the solution folder
delete_objectsDeletes in live solution, backend prevents deletion of referenced objectsRemoves from JSON files, cleans up empty files
rename_objectRenames with automatic cross-reference updates (linked by ID)Updates Name field in JSON — cross-references resolved on Designer import

ExportFormat 1.2 File Structure

Each JSON file generated by ConsoleMCP follows this envelope:

{
  "ObjectIdentification": {
    "TableType": "UnsTags",
    "SolutionName": "MySolution"
  },
  "ExportMetadata": {
    "ExportDate": "2026-02-21T14:30:00Z",
    "ExportUser": "ConsoleMCP",
    "ExportProduct": "FrameworX",
    "ExportFormat": "1.2"
  },
  "Data": [
    { "Name": "Tank1/Level", "Type": "Analog", "EngUnits": "%" },
    { "Name": "Tank1/Pump", "Type": "Digital" }
  ]
}

When to Use ConsoleMCP vs DesignerMCP

ScenarioUse
Claude Code on same machine as Designer — want live co-pilotDesignerMCP
Claude Desktop or Claude.ai — want live co-pilot over the networkDesignerMCPHttp
Claude Code — generate configs without a running DesignerConsoleMCP
Analyzing existing projects, auditing configurationsConsoleMCP
Batch-building or generating solutions from specificationsConsoleMCP

Both servers can be installed side by side. They register as separate MCP servers and do not conflict.


Exchange Folder

Several AI Designer tools use the Exchange folder to share files between the Designer and AI, rather than embedding large data in MCP responses. The filesystem MCP server (configured during [setup](Claude Skill and MCP Setup)) gives AI direct read access to these files.

SubfolderToolContents
Exchange/<AppName>/inspect_applicationSolution JSON files (Tags.json, Channels.json, Displays.json, etc.)
Exchange/Screenshots/get_screenshotCaptured images with descriptive filenames (e.g., Screenshot_MainPage_2026-02-15_14-30-00.jpg)
Exchange/<SolutionName>-json/ConsoleMCPJSON configuration files generated by Claude Code

This file-based approach keeps MCP responses lightweight and avoids large base64-encoded data in the conversation context.


Security

MCP Category and Update Protection

Objects created by AI receive Category = "MCP" (via SolutionCategories) to track AI-created vs manually-created.

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

How it works:

  1. AI creates object → Category set to "MCP"
  2. User edits in Designer → "MCP" removed
  3. AI updates → Limited to Description field
  4. To re-enable → Manually add "MCP" to Category

Note: MCP Category protection applies to DesignerMCP only. ConsoleMCP writes plain JSON files — ownership is managed when the engineer imports into Designer.


Solution Authentication

Solutions can have security enabled with user accounts and edit permissions.

How authentication works with AI (DesignerMCP):

  1. AI opens solution → response includes current username (Guest by default) and edit permissions
  2. If permissions are not Unrestricted, AI informs the user that some operations may be restricted
  3. User provides credentials → AI calls designer_action('logon', 'username:password')
  4. Successful login → permissions expand to match the user's role
  5. designer_action('logoff') returns to Guest

AI can browse and read the solution even as Guest. Permission restrictions only affect write operations.

Security: AI never echoes, logs, or repeats passwords in its responses.

Note: ConsoleMCP does not have authentication — it operates on JSON files in the Exchange folder. Security is enforced when the engineer imports files into a secured solution in Designer.


Table Types Quick Reference

ModuleTableTypeNotes
UNSUnsTagsProcess tags organized in folder paths

UnsUserTypesUDT templates

UnsTagProvidersExternal data sources

UnsEnumerationsEnum mappings
DevicesDevicesChannelsProtocol configuration

DevicesNodesDevice addresses

DevicesPointsTag-to-address mapping
AlarmsAlarmsGroupsBehavior rules

AlarmsItemsTag-bound triggers

AlarmsAreasOptional hierarchy

AlarmsGlobalSettingsModule configuration (singleton)
HistorianHistorianStorageLocationsData repository

HistorianHistorianTablesStorage coordination

HistorianHistorianTagsTags to log
DatasetsDatasetsDBsDatabase connections

DatasetsQueriesSQL queries

DatasetsTablesDirect table access

DatasetsFilesFile operations
ScriptsScriptsTasksEvent-triggered code

ScriptsClassesReusable libraries

ScriptsExpressionsOne-liner calculations

ScriptsReferencesExternal DLL references
ReportsReportsFormsDocuments

ReportsWebDataJSON/XML
DisplaysDisplaysListUI screens (Canvas or Dashboard)

DisplaysSymbolsReusable user-authored components

DisplaysLayoutsLayout regions

DisplaysImagesImage library
SecuritySecurityUsersAccounts

SecurityPermissionsPermission groups

SecurityPoliciesSession/password rules

SecuritySecretsCredentials (not accessible by AI)
SolutionSolutionCategoriesObject labels (MCP flag)

SolutionSettingsGlobal solution config (singleton)
RuntimeRuntimeStartupStartup configuration (singleton)

RuntimeExecutionProfilesDev/Prod replacement connections (singleton)

Syntax Quick Reference

ContextSyntaxExample
Scripts (C#, VB, Python)@ prefix + .Value@Tag.Tank1/Level.Value
ExpressionsNo prefix, no .ValueTag.Tank1/Level + 10
Display bindings@ prefix + .Value@Tag.Tank1/Level.Value
String embeddingCurly braces"Level: {Tag.Tank1/Level} %"

Path Syntax

  • Folder separator: / (slash) — only for Tags and Symbols: Tag.Area1/Line1/Tank1
  • Namespace/member separator: . (dot) — for all other access: Server.DateTimeInfo.Second
  • UDT members: Tag.Area1/Line1/Loop1.Setpoint (dot after tag path for member access)
  • Built-in namespaces: dot only, never slash: Alarm.Group.Critical.TotalCount

Critical: Never use . for folders or / for members. Tag.Area1.Line1.Tank1 is WRONG. Tag.Area1/Line1/Loop1/Setpoint is WRONG.


Common Workflows

  • Creating Tags — "Create a Double tag called TankLevel in the Tanks folder with range 0-100"
  • Device Communication — "Connect to a Siemens S7-1500 PLC at 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 Object Usage — "Where is tag Tank1Level used?" AI uses: designer_action('find_object', 'Tag.Tank1Level') — opens Find Results panel in Designer showing all cross-references.
  • Deleting Objects Safely — "Delete the old TestDisplay" AI uses: designer_action('find_object', 'Display.TestDisplay') to check references first, then delete_objects if safe.
  • Renaming with Safe Refactoring — "Rename Tag.OldName to Tag.NewName" AI uses: rename_object — all cross-references update automatically (linked by ID, not name).
  • Applying Changes Without Restart — "Apply my tag changes to the running system" AI uses: designer_action('hot_reload')
  • Logging In to Secured Solutions — "Log in as admin" AI prompts for password, then uses: designer_action('logon', 'admin:password')
  • Inspecting Application Configuration — "Export and analyze the current solution" AI uses: inspect_application() to export JSON files to the Exchange folder, then reads them via the filesystem server for analysis.

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"

AI uses write_objects with dry_run=true to check for errors without committing.

Use Skills for Complex Tasks

"Search for a skill on Modbus TCP configuration"

AI searches for step-by-step guides that prevent common mistakes.

Review Changes

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


Troubleshooting

AI Designer 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

Claude doesn't see Designer tools

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

Filesystem MCP server not connecting

  • Verify Node.js is installed (node --version in command prompt)
  • Check that the Exchange folder path in config matches your Windows username
  • Verify "filesystem" shows "running" in Claude Desktop → Settings → Developer

"Update blocked" message

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

Changes not appearing in Designer

  • Refresh Designer view (F5)
  • For displays, close and reopen the display editor
  • Verify operation completed 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

Permission errors on write operations

  • Solution may have security enabled
  • Ask AI to check current permissions: look at the security field in the response
  • Log in with appropriate credentials: tell AI "log in as [username]"
  • After successful login, retry the operation

ConsoleMCP: "No active solution"

  • Call open_solution or create_solution first

ConsoleMCP: "Control schemas not found"

  • Ensure ControlSchemas.json is in the MCP folder alongside ConsoleMCP.exe

ConsoleMCP fails to launch


Related Documentation

  • [AI Integration](AI Integration)
  • [AI Designer In Action](AI Designer In Action)
  • [Claude Skill and MCP Setup](Claude Skill and MCP Setup) — covers AI Designer, ConsoleMCP, and Claude Skill installation
  • [AI Runtime Connector](AI Runtime Connector)
  • [AI ML Integration Connector](AI ML Integration Connector)

In this section...