* fix: disable headless fallback by default Persistent mode silently fell back to running CODESYS with --noUI whenever the launch refused (e.g. another GUI instance was already running). That left the user staring at no window while the MCP spawned hidden processes per command. Flip the default of --fallback-headless to false so the MCP errors out loudly instead; opt in explicitly if silent --noUI is actually wanted. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix: clear stale lastError on launch retry and successful ready get_codesys_status kept reporting historical "Last Error: Refusing to launch..." messages forever because lastError was set on failure but never reset. Reset to null at the top of launch() so a retry starts clean, and again when the watcher signals ready so a successful re-launch wipes prior errors. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * release: v0.9.2 -- no headless fallback by default + clear stale lastError Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Karstein Phobic Nyvold Kvistad <karstein.kvistad@maritimerobotics.com> Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
62 lines
2.1 KiB
JSON
62 lines
2.1 KiB
JSON
{
|
|
"name": "codesys-mcp-sp21-plus",
|
|
"version": "0.9.2",
|
|
"description": "Codesys-MCP-SP21+ -- fork of luke-harriman/Codesys-MCP carrying CODESYS V3.5 SP22 Patch 1 fixes (and forward-compat with later SPs): script-engine API drift, online/runtime tool auto-login, dual-SHA release classifier, set_pou_code omitted-decl wipe fix, add_library managed-overload, etc. MCP server for CODESYS with persistent UI instance and file-based IPC.",
|
|
"main": "dist/server.js",
|
|
"bin": {
|
|
"codesys-mcp-sp21-plus": "dist/bin.js",
|
|
"phobiCS-tui": "dist/tui/index.js"
|
|
},
|
|
"files": [
|
|
"dist/",
|
|
"README.md",
|
|
"LICENSE"
|
|
],
|
|
"scripts": {
|
|
"build": "tsc && tsc -p tsconfig.tui.json && node -e \"require('fs').cpSync('src/scripts','dist/scripts',{recursive:true})\" && node -e \"const fs=require('fs');fs.writeFileSync('dist/tui/package.json','{\\\"type\\\":\\\"module\\\"}');const p='dist/tui/index.js';fs.writeFileSync(p,'#!/usr/bin/env node\\n'+fs.readFileSync(p,'utf8'));\"",
|
|
"build:tui": "tsc -p tsconfig.tui.json",
|
|
"test": "vitest --run",
|
|
"test:watch": "vitest",
|
|
"typecheck": "tsc --noEmit && tsc -p tsconfig.tui.json --noEmit",
|
|
"prepublishOnly": "npm run build && npm test"
|
|
},
|
|
"keywords": [
|
|
"codesys",
|
|
"mcp",
|
|
"plc",
|
|
"automation",
|
|
"persistent",
|
|
"ui"
|
|
],
|
|
"author": "luke-harriman (upstream); phobicdotno (SP21+ fork)",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/phobicdotno/Codesys-MCP-SP21-plus.git"
|
|
},
|
|
"homepage": "https://github.com/phobicdotno/Codesys-MCP-SP21-plus#readme",
|
|
"license": "MIT",
|
|
"engines": {
|
|
"node": ">=18"
|
|
},
|
|
"dependencies": {
|
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
"commander": "^11.1.0",
|
|
"diff": "^5.2.2",
|
|
"ink": "^5.2.1",
|
|
"react": "^18.3.1",
|
|
"ssh2": "^1.17.0",
|
|
"uuid": "^9.0.0",
|
|
"zod": "^3.24.3"
|
|
},
|
|
"devDependencies": {
|
|
"@types/diff": "^5.2.3",
|
|
"@types/node": "^20.14.1",
|
|
"@types/react": "^18.3.28",
|
|
"@types/ssh2": "^1.15.5",
|
|
"@types/uuid": "^9.0.0",
|
|
"ink-testing-library": "^4.0.0",
|
|
"tsx": "^4.21.0",
|
|
"typescript": "^5.5.3",
|
|
"vitest": "^1.6.0"
|
|
}
|
|
}
|