.
| Key | Issue Type | Summary | Resolution | Note |
|---|---|---|---|---|
| IDEMCP-290 | Bug | MCP Server - create_folder tool can't create folder in POUs in root level |
Fixed | [[GENERAL]] The create_folder and create_or_replace_st tools can now create objects on the root level if the path parameter is left empty. |
| IDEMCP-259 | Improvement | Improve visibility of tool calls |
Fixed | [GENERAL] Every tool call is now logged in the MCP Server Messagecategory. The parameters of the call can be viewed via the "..." action on the message itself. |
| IDEMCP-253 | Improvement | The set of tools should be customizable |
Fixed | [[GENERAL]] The user can now disable specific tools via the Options dialog. By default, all tools but those, that access more than the current project, are allowed. |
| IDEMCP-239 | Bug | The claude config should not be edited directly |
Fixed | [[GENERAL]] Automatic configuration by directly editing the Claude Desktop config file has been deprecated, as this approach was unstable across installer types (MSIX vs. EXE). Users are now guided to configure the connection manually instead. |
| IDEMCP-211 | Bug | MCP Server Loses Connection During Active Sessions |
Fixed | [[GENERAL]] Added an automatic reconnect to the bridge and IDE connection in case of a disconnect. |
| IDEMCP-208 | Improvement | Create Folder: Do Not Allow Creating of Multiple Folders With Conflicitng Names |
Fixed | [[GENERAL]] The Create Folder tool no longer allows creating a folder with a name that conflicts with an existing object (folder, POU, library manager, etc.) at the same level. Attempting to do so now returns a clear error message pointing to the existing object instead of creating a duplicate. |
| IDEMCP-205 | Improvement | GetActivePathAndSelectionTool: Behavior Doesn’t Match Its Name or Description |
Fixed | [[GENERAL]] GetActivePathAndSelection now only returns the actual active selection (the focused editor's path and highlighted text, or the selected navigator node) instead of scanning other open editors or falling back to unrelated context. If nothing is actively selected, it now explicitly reports that no selection is active. |
| IDEMCP-190 | Bug | Starting CDS with elevated rights also makes it neccessary to start the mcp-client with elevated rights |
Fixed | [[GENERAL]] Fixed an issue where the MCP connection could not be established when CODESYS was started with elevated (administrator) rights, previously requiring the MCP client to also run elevated. The MCP client can now connect and execute tools normally regardless of the rights level CODESYS was started with. |
| IDEMCP-186 | Bug | changing multiple property-accessors at once returns misleading text |
Fixed | [[GENERAL]] We improved the message, the LLM gets back, when editing with conflicting types for getter and setter of one property (which is not allowed). |
| IDEMCP-185 | Bug | deletions of subpou via replace_st returns misleading text message |
Fixed | [[GENERAL]] Fixed a misleading response from replace_text_in_structured_text: when a call would have deleted a sub-POU (interface, function block, or program sub-POU), the tool previously reported success without actually removing anything. It now leaves the sub-POU untouched (as intended) and returns a clear message pointing to the dedicated deletion tool instead. |
| IDEMCP-179 | Bug | Change minimum required version to 3.5.22.10 |
Fixed | [[COMPATIBILITY_INFORMATION-EndUser]] the mcp server could be installed with Codesys 3.5.22.0, which was unwanted. The minimium version was now lifted to 3.5.22.10. |
| IDEMCP-174 | Bug | ReplaceTextInStructuredText does not work with subpous in folders |
Fixed | [[GENERAL]] `replace_text_in_structured_text` now correctly handles sub-objects (Methods, Actions, Properties) inside folders beneath a POU. Previously these failed with a "name already exists" error. They are now written back to the correct location. |
| IDEMCP-161 | Improvement | AddProgramCallToTask should allow deleting entries |
Fixed | [[GENERAL]] AddProgramCallToTask is now AddOrRemoveProgrammCallInTask. |
| IDEMCP-160 | Improvement | AddLibrary should allow deleting library references |
Fixed | [[GENERAL]] The Add Library tool now also supports removing library references via a new mode parameter (add/remove), in addition to adding them. |
| IDEMCP-159 | Improvement | GetLibrariesReferencedInApplication should also work for inactive applications |
Fixed | [[GENERAL]] Get Libraries Referenced In Application now works for any application specified by path, not just the currently active one. |
| IDEMCP-157 | Improvement | Replace ProjectStructureUtils.GetNodeByPath by IObjectManager.GetObjectNamePath |
Fixed | [[GENERAL]] Fixed path resolution to correctly handle non-unique object names across multiple applications and added full support for folder-based paths in all tools. |
| IDEMCP-141 | Improvement | create_or_replace_structured_text_object: Property GET and SET produce identical success messages |
Fixed | [[GENERAL]] create_or_replace_structured_text_object now returns distinct success messages for property GET and SET accessors (e.g. "Successfully set content of X.Get." and "Successfully set content of X.Set.") instead of identical, ambiguous messages. |
| IDEMCP-140 | Improvement | get_st_content returns empty response for out-of-range line numbers |
Fixed | [[GENERAL]] get_structured_text_content now returns a clear error message when the requested line range is out of bounds, instead of silently returning an empty response. |
| IDEMCP-134 | Improvement | CreateOrSet: Implementation comments are placed in declaration panel |
Fixed | [[GENERAL]] Fixed create_or_replace_structured_text_object placing a comment immediately after VAR...END_VAR into the declaration panel instead of the implementation panel, for functions, function blocks, methods, and property GET/SET. |
| IDEMCP-87 | Improvement | Introduce rename_object tool |
Fixed | [[GENERAL]] We introduced a new tool, rename_object, which also changes all references to that object. Partial renames, where the changes of some references may fail (e.g. because of denied permissions), are rolled back. |