{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"awesome-codesys-mcp-toolkit","slug":"codesys-mcp-toolkit","name":"Codesys-mcp-toolkit","type":"mcp","url":"https://github.com/johannesPettersson80/codesys-mcp-toolkit","page_url":"https://unfragile.ai/codesys-mcp-toolkit","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"awesome-codesys-mcp-toolkit__cap_0","uri":"capability://tool.use.integration.mcp.protocol.translation.to.codesys.scripting.engine.operations","name":"mcp protocol translation to codesys scripting engine operations","description":"Implements a Model Context Protocol server that translates standardized MCP requests into CODESYS Scripting Engine operations through a layered architecture. The McpServer class from the MCP SDK handles protocol negotiation and request routing, while a Python script execution layer bridges MCP tool calls to CODESYS automation APIs. This enables AI clients (like Claude Desktop) to programmatically control CODESYS V3 environments without direct API knowledge.","intents":["Enable Claude or other MCP clients to control CODESYS projects programmatically","Automate industrial automation development workflows through standardized protocol","Integrate CODESYS with AI-powered development assistants"],"best_for":["Industrial automation teams integrating AI assistants into CODESYS workflows","Developers building automation tools that need to control multiple CODESYS installations","Organizations standardizing on MCP for tool integration across heterogeneous environments"],"limitations":["Requires CODESYS V3 with Scripting Engine enabled — not compatible with CODESYS 2.3 or earlier","Python script execution adds latency (~500ms-2s per operation) compared to direct API calls","Single-threaded request processing — concurrent MCP requests are queued sequentially","No built-in authentication beyond CODESYS project file permissions"],"requires":["Node.js 18.0.0 or higher","CODESYS V3.5 SP19 or later with Scripting Engine enabled","Python 3.7+ installed and accessible in system PATH","@codesys/mcp-toolkit npm package (v1.1.16+)"],"input_types":["MCP protocol JSON-RPC 2.0 requests","Tool parameters (project paths, POU names, code strings)","Resource URIs (codesys://project/status, codesys://project/{path}/structure)"],"output_types":["MCP protocol JSON-RPC 2.0 responses","Project structure metadata (hierarchical object trees)","Compilation results (error/warning lists with line numbers)","POU code (declaration and implementation sections)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_1","uri":"capability://automation.workflow.codesys.project.lifecycle.management.via.mcp.tools","name":"codesys project lifecycle management via mcp tools","description":"Exposes MCP tools for complete project lifecycle operations: open_project, create_project, save_project, and compile_project. Each tool translates MCP parameters into Python scripts that invoke CODESYS Scripting Engine APIs to manipulate project files, manage in-memory project state, and trigger compilation with error reporting. The toolkit maintains awareness of the currently open project context across multiple tool invocations within a single MCP session.","intents":["Programmatically open and create CODESYS projects from AI-driven workflows","Automate project compilation and error checking as part of CI/CD pipelines","Save project changes triggered by AI code generation without manual user intervention","Manage multiple CODESYS installations and project versions through a single MCP interface"],"best_for":["CI/CD pipeline builders automating CODESYS project compilation and validation","AI-assisted code generation systems that need to persist changes to CODESYS projects","Multi-project automation environments where project switching must be automated"],"limitations":["Project creation limited to standard CODESYS templates — custom project structures require manual setup","Compilation errors are reported as text strings without structured AST-level error metadata","No transactional rollback — failed operations may leave projects in inconsistent states","Project file locking: if CODESYS GUI has project open, scripting operations may fail or block"],"requires":["CODESYS V3 project file (.project) accessible on the same machine or network share","Write permissions to project directory for save_project operations","CODESYS Scripting Engine enabled in target CODESYS installation"],"input_types":["Project file paths (absolute or relative)","Project template names (e.g., 'Standard', 'Embedded')","Project metadata (name, author, description)"],"output_types":["Project status object (open/closed, current file path, unsaved changes flag)","Compilation report (error count, warning count, detailed error list with line/column)","Success/failure confirmation with operation metadata"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_2","uri":"capability://code.generation.editing.pou.program.organization.unit.code.generation.and.manipulation","name":"pou (program organization unit) code generation and manipulation","description":"Implements MCP tools for creating and modifying POUs (Programs, Function Blocks, Functions) with separate declaration and implementation code sections. The create_pou tool generates new POUs with specified type and initial code, while set_pou_code updates existing POU code. The toolkit reads POU code through MCP resources (codesys://project/{path}/pou/{pou_path}/code) that parse CODESYS project XML to extract declaration and implementation sections separately, enabling AI systems to understand and modify POU structure.","intents":["Generate new Programs, Function Blocks, or Functions with AI-assisted code generation","Update POU implementation code while preserving declarations","Read and analyze POU structure for code completion or refactoring suggestions","Maintain separation between POU interface (declarations) and implementation for modular development"],"best_for":["AI code generation systems targeting industrial automation logic","Developers using Claude or similar AI assistants to write CODESYS automation code","Teams automating POU generation from specifications or templates"],"limitations":["No syntax validation before code insertion — invalid IEC 61131-3 code is accepted and reported only at compile time","POU code must be provided as complete text strings — no incremental/patch-based updates","No support for POU inheritance or interface implementation — only basic POU creation","Code formatting is preserved as-is; no automatic indentation or style normalization"],"requires":["Active CODESYS project open via open_project tool","Valid POU path within project hierarchy (e.g., 'Application.MyProgram')","IEC 61131-3 compliant code for declaration and implementation sections"],"input_types":["POU type (Program, FunctionBlock, Function)","POU name (identifier)","Declaration code (VAR declarations, parameters)","Implementation code (IEC 61131-3 statements)"],"output_types":["POU creation confirmation with generated POU path","POU code as structured object with separate declaration and implementation fields","Compilation errors if code is syntactically invalid"],"categories":["code-generation-editing","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_3","uri":"capability://code.generation.editing.function.block.property.and.method.generation","name":"function block property and method generation","description":"Exposes MCP tools create_property and create_method for adding properties and methods to Function Blocks. These tools generate Python scripts that invoke CODESYS Scripting Engine APIs to add typed properties (with getter/setter code) and methods (with parameters and return types) to existing Function Blocks. The toolkit handles the code generation for property accessors and method stubs, reducing boilerplate for AI-assisted development.","intents":["Automatically generate property accessors (getters/setters) for Function Block data members","Create method stubs with parameter declarations for Function Block behavior","Build complete Function Block interfaces through AI-driven property and method generation","Maintain consistent property and method naming conventions across projects"],"best_for":["AI code generation systems building complete Function Block interfaces","Teams automating boilerplate property/method generation from specifications","Developers using AI assistants to scaffold Function Block structures"],"limitations":["Property and method code is generated as stubs — implementation must be added separately via set_pou_code","No support for property attributes (e.g., read-only, persistent) — only basic getter/setter generation","Method overloading not supported — each method name must be unique within Function Block","No validation of property/method naming conventions — relies on caller to enforce standards"],"requires":["Target Function Block must exist in active CODESYS project","Valid property/method names (IEC 61131-3 identifiers)","Property type must be valid CODESYS data type (INT, REAL, BOOL, custom types, etc.)"],"input_types":["Function Block path (e.g., 'Application.MyFunctionBlock')","Property name and data type","Method name, parameter list, return type"],"output_types":["Property creation confirmation with generated getter/setter code","Method creation confirmation with parameter stub","Compilation errors if property/method conflicts with existing members"],"categories":["code-generation-editing","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_4","uri":"capability://memory.knowledge.project.structure.introspection.via.mcp.resources","name":"project structure introspection via mcp resources","description":"Implements MCP resource endpoints (codesys://project/{path}/structure) that parse CODESYS project XML files to expose hierarchical project structure as queryable resources. The toolkit extracts object metadata (POUs, properties, methods, variables) from the project file and returns structured JSON representations without requiring CODESYS GUI interaction. This enables AI clients to understand project topology for code generation, refactoring, or analysis tasks.","intents":["Retrieve complete project structure for AI context and code generation planning","Analyze POU hierarchy and dependencies for refactoring or optimization","Discover available POUs, properties, and methods for code completion suggestions","Validate project structure before generating new code or modifications"],"best_for":["AI code generation systems that need project context before generating code","Code analysis tools building dependency graphs or impact analysis","IDE integrations providing code completion or navigation for CODESYS projects"],"limitations":["Structure is read-only — modifications require separate create_pou/set_pou_code tools","No real-time updates — structure reflects project file state at read time, not in-memory CODESYS state","Large projects (>10k POUs) may have slow structure parsing and large JSON responses","No filtering or search — full structure must be retrieved and filtered by client"],"requires":["CODESYS project file (.project) accessible and readable","Project must be valid XML (malformed projects will fail parsing)"],"input_types":["Project file path","Optional POU path filter (to retrieve structure of specific POU)"],"output_types":["Hierarchical JSON structure with POU metadata (name, type, path, members)","Property and method listings with type information","Variable declarations with data types"],"categories":["memory-knowledge","search-retrieval"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_5","uri":"capability://automation.workflow.codesys.scripting.engine.status.monitoring.via.mcp.resources","name":"codesys scripting engine status monitoring via mcp resources","description":"Implements MCP resource endpoint (codesys://project/status) that queries CODESYS Scripting Engine state and returns current project status, including whether a project is open, the current project file path, unsaved changes flag, and scripting engine availability. This resource is generated by executing a Python script that invokes CODESYS Scripting Engine APIs to introspect runtime state, enabling MCP clients to determine system readiness before executing project operations.","intents":["Check if CODESYS scripting engine is available and responsive before executing operations","Determine if a project is currently open and get its file path","Detect unsaved changes to warn users before closing or switching projects","Validate system state for CI/CD pipelines before triggering automated builds"],"best_for":["CI/CD systems that need to verify CODESYS availability before running automation","AI assistants that need to confirm project state before executing code modifications","Monitoring systems tracking CODESYS scripting engine health"],"limitations":["Status reflects scripting engine state only — does not detect CODESYS GUI state or user interactions","Polling-based status check adds ~100-500ms latency per query","No event notifications — clients must poll for status changes","Status may become stale if CODESYS crashes or loses connection between checks"],"requires":["CODESYS V3 with Scripting Engine enabled","Python 3.7+ with CODESYS scripting libraries installed"],"input_types":["None — status is queried without parameters"],"output_types":["Status object with fields: engine_available (boolean), project_open (boolean), project_path (string), unsaved_changes (boolean)"],"categories":["automation-workflow","memory-knowledge"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_6","uri":"capability://automation.workflow.python.script.template.generation.and.execution.for.codesys.automation","name":"python script template generation and execution for codesys automation","description":"Implements a Python script templating system that generates CODESYS Scripting Engine automation scripts from MCP tool parameters. The toolkit maintains Python script templates for each operation (project management, POU creation, compilation) that are populated with parameters and executed via subprocess calls. This approach decouples MCP protocol handling from CODESYS-specific logic, enabling easy extension with new operations and version-specific script variants.","intents":["Execute CODESYS Scripting Engine operations without requiring direct CODESYS process integration","Support multiple CODESYS versions through version-specific script templates","Enable rapid addition of new automation capabilities without modifying core MCP server","Isolate CODESYS-specific logic from MCP protocol implementation"],"best_for":["Teams extending the toolkit with new CODESYS automation capabilities","Environments supporting multiple CODESYS versions requiring version-specific scripts","Organizations maintaining custom CODESYS automation scripts that need MCP integration"],"limitations":["Script execution adds subprocess overhead (~200-500ms per operation) compared to in-process APIs","No direct error propagation from Python scripts — errors must be parsed from stdout/stderr","Script templates are version-specific — CODESYS version mismatches may cause script failures","No built-in script caching — identical operations re-generate and re-execute scripts"],"requires":["Python 3.7+ installed and in system PATH","CODESYS Scripting Engine Python libraries installed in Python environment","Write permissions to temporary directory for script generation"],"input_types":["MCP tool parameters (project paths, POU names, code strings)","CODESYS version identifier for template selection"],"output_types":["Script execution results (stdout/stderr captured as strings)","Structured results parsed from script output (JSON, error lists)"],"categories":["automation-workflow","code-generation-editing"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_7","uri":"capability://automation.workflow.multi.installation.codesys.environment.management","name":"multi-installation codesys environment management","description":"Supports configuration and management of multiple CODESYS installations through environment variables and configuration files. The toolkit can target different CODESYS versions or instances by specifying installation paths, enabling users to work with multiple CODESYS environments through a single MCP server. Configuration is managed via command-line options and environment variables that are passed to Python scripts for installation-specific scripting engine access.","intents":["Manage projects across multiple CODESYS versions (e.g., V3.5 and V4.0) from single MCP interface","Support development teams using different CODESYS installations on same machine","Enable CI/CD pipelines to test projects against multiple CODESYS versions","Switch between CODESYS installations without restarting MCP server"],"best_for":["Organizations maintaining projects across multiple CODESYS versions","CI/CD systems requiring multi-version compatibility testing","Development teams with heterogeneous CODESYS installations"],"limitations":["Only one CODESYS installation can be active per MCP server instance — requires separate servers for concurrent multi-version work","Installation switching requires server restart or configuration reload","No automatic installation detection — paths must be explicitly configured","Cross-version project compatibility issues are not detected or handled by toolkit"],"requires":["Multiple CODESYS V3 installations with known installation paths","Configuration file or environment variables specifying installation paths","Each CODESYS installation must have Scripting Engine enabled"],"input_types":["CODESYS installation path (e.g., 'C:\\Program Files\\CODESYS V3.5')","CODESYS version identifier"],"output_types":["Configuration confirmation","Installation validation status"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_8","uri":"capability://automation.workflow.cli.entry.point.for.standalone.mcp.server.execution","name":"cli entry point for standalone mcp server execution","description":"Provides a command-line interface (codesys-mcp-tool binary) that launches the MCP server with configurable options for CODESYS installation path, logging level, and port binding. The CLI entry point (dist/bin.js) parses command-line arguments and initializes the McpServer with specified configuration, enabling deployment as a standalone service or integration into automation frameworks. Supports both stdio-based MCP communication (for Claude Desktop integration) and network-based communication.","intents":["Launch MCP server as standalone service for Claude Desktop or other MCP clients","Configure CODESYS installation path and logging verbosity from command line","Integrate MCP server into Docker containers or CI/CD pipeline environments","Enable multiple MCP server instances with different configurations"],"best_for":["DevOps teams deploying MCP server in containerized environments","Users integrating MCP server with Claude Desktop or other MCP clients","CI/CD systems launching MCP server as part of automation pipelines"],"limitations":["CLI options are limited to basic configuration — complex setups require environment variables or config files","No built-in process management — requires external tools (systemd, Docker, PM2) for production deployment","Stdio-based communication limits to single client per server instance","No graceful shutdown handling — process termination may leave CODESYS projects in inconsistent state"],"requires":["Node.js 18.0.0 or higher","@codesys/mcp-toolkit npm package installed globally or in PATH","CODESYS V3 installation with Scripting Engine enabled"],"input_types":["Command-line arguments: --codesys-path, --log-level, --port","Environment variables for configuration"],"output_types":["MCP server process listening on stdio or specified port","Log output to console or file"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-codesys-mcp-toolkit__cap_9","uri":"capability://safety.moderation.error.handling.and.reporting.with.codesys.specific.error.context","name":"error handling and reporting with codesys-specific error context","description":"Implements error handling that captures CODESYS Scripting Engine errors, compilation errors, and script execution failures, returning structured error responses through MCP protocol. Compilation errors include line numbers, column positions, and error messages extracted from CODESYS compiler output. Script execution errors are captured from Python subprocess stderr and mapped to user-friendly MCP error responses with diagnostic context.","intents":["Provide detailed compilation error feedback with line/column information for code fixes","Report script execution failures with diagnostic context for troubleshooting","Enable AI systems to understand and respond to CODESYS-specific errors","Surface CODESYS Scripting Engine errors without exposing raw Python tracebacks"],"best_for":["AI code generation systems that need to understand and fix compilation errors","Development teams debugging automation failures","CI/CD systems that need structured error reporting for build failures"],"limitations":["Error messages are text-based — no structured error codes or error hierarchies","Compilation errors may be aggregated without individual error isolation","Script execution errors lose context if Python subprocess crashes","No error recovery suggestions — errors are reported without remediation guidance"],"requires":["CODESYS Scripting Engine producing error output in expected format","Python subprocess execution completing with error output captured"],"input_types":["CODESYS compiler output (error lists with line/column info)","Python subprocess stderr output"],"output_types":["MCP error response with error message and optional diagnostic context","Structured error list with line numbers and column positions for compilation errors"],"categories":["safety-moderation","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":27,"verified":false,"data_access_risk":"high","permissions":["Node.js 18.0.0 or higher","CODESYS V3.5 SP19 or later with Scripting Engine enabled","Python 3.7+ installed and accessible in system PATH","@codesys/mcp-toolkit npm package (v1.1.16+)","CODESYS V3 project file (.project) accessible on the same machine or network share","Write permissions to project directory for save_project operations","CODESYS Scripting Engine enabled in target CODESYS installation","Active CODESYS project open via open_project tool","Valid POU path within project hierarchy (e.g., 'Application.MyProgram')","IEC 61131-3 compliant code for declaration and implementation sections"],"failure_modes":["Requires CODESYS V3 with Scripting Engine enabled — not compatible with CODESYS 2.3 or earlier","Python script execution adds latency (~500ms-2s per operation) compared to direct API calls","Single-threaded request processing — concurrent MCP requests are queued sequentially","No built-in authentication beyond CODESYS project file permissions","Project creation limited to standard CODESYS templates — custom project structures require manual setup","Compilation errors are reported as text strings without structured AST-level error metadata","No transactional rollback — failed operations may leave projects in inconsistent states","Project file locking: if CODESYS GUI has project open, scripting operations may fail or block","No syntax validation before code insertion — invalid IEC 61131-3 code is accepted and reported only at compile time","POU code must be provided as complete text strings — no incremental/patch-based updates","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.3,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.52,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-06-17T09:51:02.371Z","last_scraped_at":"2026-05-03T14:00:15.503Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=codesys-mcp-toolkit","compare_url":"https://unfragile.ai/compare?artifact=codesys-mcp-toolkit"}},"signature":"a14TDFtE11AG6ZgmDVglWLWvpyUAKqZyur9WQKKyNYfA7B3Yv+mJxNJnv3wNdZumn0+w939Kvv9g48fDyccGCg==","signedAt":"2026-06-22T18:15:02.890Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/codesys-mcp-toolkit","artifact":"https://unfragile.ai/codesys-mcp-toolkit","verify":"https://unfragile.ai/api/v1/verify?slug=codesys-mcp-toolkit","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}