easyeda-mcp-pro 0.5.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/README.md +37 -24
  2. package/dist/bom-quality/types.js.map +1 -1
  3. package/dist/bridge/manager.js +3 -7
  4. package/dist/bridge/manager.js.map +1 -1
  5. package/dist/bridge/protocol.d.ts +13 -2
  6. package/dist/bridge/protocol.js +10 -3
  7. package/dist/bridge/protocol.js.map +1 -1
  8. package/dist/bridge/types.d.ts +27 -27
  9. package/dist/circuit/circuit-ir.d.ts +235 -0
  10. package/dist/circuit/circuit-ir.js +174 -3
  11. package/dist/circuit/circuit-ir.js.map +1 -1
  12. package/dist/circuit/compiler.js +106 -5
  13. package/dist/circuit/compiler.js.map +1 -1
  14. package/dist/cli/auto-setup.js +6 -4
  15. package/dist/cli/auto-setup.js.map +1 -1
  16. package/dist/cli/client-definitions.js.map +1 -1
  17. package/dist/cli/local-setup.d.ts +7 -0
  18. package/dist/cli/local-setup.js +42 -0
  19. package/dist/cli/local-setup.js.map +1 -1
  20. package/dist/config/env.d.ts +2 -0
  21. package/dist/config/env.js +11 -0
  22. package/dist/config/env.js.map +1 -1
  23. package/dist/config/feature-flags.d.ts +1 -0
  24. package/dist/config/feature-flags.js +1 -0
  25. package/dist/config/feature-flags.js.map +1 -1
  26. package/dist/config/profiles.js +5 -5
  27. package/dist/config/profiles.js.map +1 -1
  28. package/dist/config/version.d.ts +1 -1
  29. package/dist/config/version.js +1 -1
  30. package/dist/easyeda-runtime/inventory.d.ts +69 -0
  31. package/dist/easyeda-runtime/inventory.js +165 -0
  32. package/dist/easyeda-runtime/inventory.js.map +1 -0
  33. package/dist/export-manifest/validation.js +9 -18
  34. package/dist/export-manifest/validation.js.map +1 -1
  35. package/dist/index.js.map +1 -1
  36. package/dist/live/easyeda-smoke.d.ts +47 -0
  37. package/dist/live/easyeda-smoke.js +167 -0
  38. package/dist/live/easyeda-smoke.js.map +1 -0
  39. package/dist/net-validation/validation.js +16 -18
  40. package/dist/net-validation/validation.js.map +1 -1
  41. package/dist/safety/runtime-safety.d.ts +43 -0
  42. package/dist/safety/runtime-safety.js +137 -0
  43. package/dist/safety/runtime-safety.js.map +1 -0
  44. package/dist/server/factory.js +2 -0
  45. package/dist/server/factory.js.map +1 -1
  46. package/dist/server/resources-prompts.d.ts +3 -0
  47. package/dist/server/resources-prompts.js +176 -0
  48. package/dist/server/resources-prompts.js.map +1 -0
  49. package/dist/server/transports/http.d.ts +1 -0
  50. package/dist/server/transports/http.js +105 -23
  51. package/dist/server/transports/http.js.map +1 -1
  52. package/dist/tools/L0_diagnostics_api.js +43 -41
  53. package/dist/tools/L0_diagnostics_api.js.map +1 -1
  54. package/dist/tools/L0_diagnostics_core.js +24 -0
  55. package/dist/tools/L0_diagnostics_core.js.map +1 -1
  56. package/dist/tools/L1_schematic_read.js.map +1 -1
  57. package/dist/tools/L1_schematic_write.js +1 -4
  58. package/dist/tools/L1_schematic_write.js.map +1 -1
  59. package/dist/tools/registry.d.ts +3 -0
  60. package/dist/tools/registry.js +109 -12
  61. package/dist/tools/registry.js.map +1 -1
  62. package/dist/tools/transaction.d.ts +68 -0
  63. package/dist/tools/transaction.js +80 -0
  64. package/dist/tools/transaction.js.map +1 -0
  65. package/dist/tools/types.d.ts +13 -0
  66. package/easyeda-bridge-extension.eext +0 -0
  67. package/package.json +15 -10
@@ -1 +1 @@
1
- {"version":3,"file":"L1_schematic_write.js","sourceRoot":"","sources":["../../src/tools/L1_schematic_write.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"L1_schematic_write.js","sourceRoot":"","sources":["../../src/tools/L1_schematic_write.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,gBAAgB,GAAG,CAAC;KACvB,MAAM,CAAC;IACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC;KACD,WAAW,EAAE,CAAC;AAEjB,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,gBAAgB;IAC5B,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;IACb,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;IACb,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAClC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC9B,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,CAAC,CAAC,KAAK,CACb,CAAC,CAAC,MAAM,CAAC;QACP,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;QACb,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;KACd,CAAC,CACH;IACD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC9B,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACjC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC9B,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAC3C,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC9B,CAAC,CAAC;AAEH,SAAS,2BAA2B,CAClC,QAAqD,EACrD,OAAkB;IAElB,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,mCAAmC;QACzC,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,iEAAiE;QAC9E,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,eAAe,CAAC;QAC3B,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,yBAAyB;QACtC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACjC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,CAAC,GAAG,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;oBAC/D,UAAU,EAAE,CAAC,CAAC,UAAU;oBACxB,CAAC,EAAE,CAAC,CAAC,CAAC;oBACN,CAAC,EAAE,CAAC,CAAC,CAAC;oBACN,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,UAAU,EAAE,CAAC,CAAC,UAAU;oBACxB,UAAU,EAAE,CAAC,CAAC,UAAU;iBACzB,CAAC,CAAC;gBACH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,SAAS,EAAE,MAAM;iBAClB,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,4BAA4B;QAClC,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,2DAA2D;QACxE,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,eAAe,CAAC;QAC3B,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,kBAAkB;QAC/B,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAC5B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;oBACxD,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;iBACrB,CAAC,CAAC;gBACH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,MAAM;iBACb,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,oCAAoC;QAC1C,KAAK,EAAE,6BAA6B;QACpC,WAAW,EACT,iGAAiG;QACnG,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,eAAe,CAAC;QAC3B,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,0BAA0B;QACvC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,EAAE,YAAY,EAAE,GAAG,0BAA0B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAClE,IAAI,CAAC;gBACH,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;gBACrE,OAAO;oBACL,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,oCAAoC;QAC1C,KAAK,EAAE,4BAA4B;QACnC,WAAW,EACT,yFAAyF;QAC3F,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,eAAe,CAAC;QAC3B,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,0BAA0B;QACvC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,0BAA0B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC3E,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;oBAChE,WAAW;oBACX,QAAQ;iBACT,CAAC,CAAC;gBACH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM;iBACP,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,mCAAmC;QACzC,KAAK,EAAE,iBAAiB;QACxB,WAAW,EACT,kJAAkJ;QACpJ,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,kDAAkD,CAAC;YACvF,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YAC9D,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YAC9D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YACjF,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SAC9B,CAAC;QACF,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC;gBACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;aACpB,CAAC;iBACD,QAAQ,EAAE;YACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,CAAC,GAAG,MAMT,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE;oBAC9D,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,CAAC,EAAE,CAAC,CAAC,CAAC;oBACN,CAAC,EAAE,CAAC,CAAC,CAAC;oBACN,QAAQ,EAAE,CAAC,CAAC,QAAQ;iBACrB,CAAC,CAAC;gBACH,MAAM,IAAI,GAAG,MAAoD,CAAC;gBAClE,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;wBACnC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO;qBACnC;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,mCAAmC;QACzC,KAAK,EAAE,iBAAiB;QACxB,WAAW,EACT,wEAAwE;YACxE,0EAA0E;YAC1E,mDAAmD;QACrD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qDAAqD,CAAC;YAC1F,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YAC9D,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YAC9D,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;iBACjE,QAAQ,EAAE;iBACV,QAAQ,CAAC,6BAA6B,CAAC;YAC1C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YACjF,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SAC9B,CAAC;QACF,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC;gBACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;aACpB,CAAC;iBACD,QAAQ,EAAE;YACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,CAAC,GAAG,MAOT,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE;oBAC9D,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,CAAC,EAAE,CAAC,CAAC,CAAC;oBACN,CAAC,EAAE,CAAC,CAAC,CAAC;oBACN,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;iBACrB,CAAC,CAAC;gBACH,MAAM,IAAI,GAAG,MAAoD,CAAC;gBAClE,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;wBACnC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO;qBACnC;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,sCAAsC;QAC5C,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EACT,4FAA4F;YAC5F,6FAA6F;YAC7F,6FAA6F;QAC/F,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YAC1D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACrE,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,CAAC,sEAAsE,CAAC;YACnF,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CAAC,2DAA2D,CAAC;YACxE,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SAC9B,CAAC;QACF,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,UAAU,EAAE,CAAC;iBACV,MAAM,CAAC;gBACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;gBACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;aACpB,CAAC;iBACD,QAAQ,EAAE;YACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,CAAC,GAAG,MAKT,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;oBAChE,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,OAAO,EAAE,CAAC,CAAC,OAAO;iBACnB,CAAC,CAAC;gBACH,MAAM,IAAI,GAAG,MAAiC,CAAC;gBAC/C,OAAO;oBACL,OAAO,EAAE,IAAI,EAAE,SAAS,KAAK,KAAK;oBAClC,UAAU,EAAE;wBACV,WAAW,EAAE,CAAC,CAAC,WAAW;wBAC1B,SAAS,EAAE,CAAC,CAAC,SAAS;wBACtB,OAAO,EAAE,CAAC,CAAC,OAAO;qBACnB;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,uCAAuC;QAC7C,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,wEAAwE;YACxE,qFAAqF;YACrF,8FAA8F;QAChG,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YACrE,IAAI,EAAE,CAAC;iBACJ,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;gBACP,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;gBACrE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;aACzD,CAAC,CACH;iBACA,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,8CAA8C,CAAC;YAC3D,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SAC9B,CAAC;QACF,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,WAAW,EAAE,CAAC;iBACX,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;gBACP,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;gBACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;aACpB,CAAC,CACH;iBACA,QAAQ,EAAE;YACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;YACrC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,CAAC,GAAG,MAIT,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;oBACjE,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,IAAI,EAAE,CAAC,CAAC,IAAI;iBACb,CAAC,CAAC;gBACH,MAAM,IAAI,GAAG,MAA4B,CAAC;gBAC1C,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBAE3C,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBAChC,WAAW,EAAE,GAAG,CAAC,WAAW;wBAC5B,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,OAAO,EAAE,CAAC,CAAC,OAAO;qBACnB,CAAC,CAAC;oBACH,KAAK;iBACN,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC;QAChB,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,cAAc;QACrB,WAAW,EACT,qFAAqF;YACrF,qFAAqF;YACrF,wFAAwF;QAC1F,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAClE,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SAC9B,CAAC;QACF,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACpB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;YACtB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,MAAe,EAAE,EAAE;YACnD,MAAM,EAAE,SAAS,EAAE,GAAG,MAA+B,CAAC;YACtD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;gBACpE,MAAM,IAAI,GAAG,MAA8B,CAAC;gBAC5C,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,UAAU,EAAE,SAAS;oBACrB,QAAQ,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACnD,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,SAAS;oBACrB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,2BAA2B,EAAE,CAAC"}
@@ -8,6 +8,8 @@ export declare const ErrorCodes: {
8
8
  readonly TOOL_EXECUTION: "ERR_TOOL_EXECUTION";
9
9
  readonly TOOL_NOT_FOUND: "ERR_TOOL_NOT_FOUND";
10
10
  readonly INVALID_INPUT: "ERR_INVALID_INPUT";
11
+ readonly TOOL_OUTPUT_INVALID: "ERR_TOOL_OUTPUT_INVALID";
12
+ readonly FORBIDDEN_SCOPE: "ERR_FORBIDDEN_SCOPE";
11
13
  };
12
14
  export type ErrorCode = (typeof ErrorCodes)[keyof typeof ErrorCodes];
13
15
  export interface StructuredError {
@@ -16,6 +18,7 @@ export interface StructuredError {
16
18
  /** Optional structured details for the client */
17
19
  details?: Record<string, unknown>;
18
20
  }
21
+ export declare function getRequiredToolScopes(tool: ToolDefinition): string[];
19
22
  export interface ToolMetadata {
20
23
  name: string;
21
24
  title: string;
@@ -1,3 +1,4 @@
1
+ import { registeredOutputSchema, getRawInput, parseWriteMode, omitWriteControls, writePlanResponse, } from './transaction.js';
1
2
  import { getEnabledProfiles } from '../config/profiles.js';
2
3
  import { ZodError } from 'zod';
3
4
  import { SERVER_VERSION } from '../config/version.js';
@@ -8,7 +9,63 @@ export const ErrorCodes = {
8
9
  TOOL_EXECUTION: 'ERR_TOOL_EXECUTION',
9
10
  TOOL_NOT_FOUND: 'ERR_TOOL_NOT_FOUND',
10
11
  INVALID_INPUT: 'ERR_INVALID_INPUT',
12
+ TOOL_OUTPUT_INVALID: 'ERR_TOOL_OUTPUT_INVALID',
13
+ FORBIDDEN_SCOPE: 'ERR_FORBIDDEN_SCOPE',
11
14
  };
15
+ const READ_ALL_SCOPE = 'easyeda:read';
16
+ const WRITE_ALL_SCOPE = 'easyeda:write';
17
+ function parseToolScopes(value) {
18
+ if (typeof value !== 'string')
19
+ return null;
20
+ const trimmed = value.trim();
21
+ if (!trimmed || trimmed === '*')
22
+ return null;
23
+ return new Set(trimmed
24
+ .split(/[\s,]+/)
25
+ .map((scope) => scope.trim())
26
+ .filter(Boolean));
27
+ }
28
+ export function getRequiredToolScopes(tool) {
29
+ if (tool.name === 'easyeda_execute')
30
+ return ['bridge:execute'];
31
+ if (tool.name === 'easyeda_api_call')
32
+ return [tool.confirmWrite ? 'api:write' : 'api:read'];
33
+ if (tool.name === 'easyeda_api_inventory' || tool.name === 'easyeda_component_probe') {
34
+ return ['api:read'];
35
+ }
36
+ switch (tool.group) {
37
+ case 'diagnostics':
38
+ return ['diagnostics:read'];
39
+ case 'schematic':
40
+ return [tool.confirmWrite ? 'schematic:write' : 'schematic:read'];
41
+ case 'bom':
42
+ return [tool.name.includes('sourcing') ? 'bom:source' : 'bom:read'];
43
+ case 'drc-erc':
44
+ return ['checks:read'];
45
+ case 'board':
46
+ case 'pcb-constraints':
47
+ return ['pcb:read'];
48
+ case 'pcb-write':
49
+ return ['pcb:write'];
50
+ case 'export':
51
+ return ['export:write'];
52
+ default:
53
+ return [tool.confirmWrite ? WRITE_ALL_SCOPE : READ_ALL_SCOPE];
54
+ }
55
+ }
56
+ function hasRequiredToolScopes(allowedScopes, requiredScopes) {
57
+ if (allowedScopes === null)
58
+ return true;
59
+ if (allowedScopes.has('*'))
60
+ return true;
61
+ if (requiredScopes.some((scope) => allowedScopes.has(scope)))
62
+ return true;
63
+ if (requiredScopes.some((scope) => scope.endsWith(':write')) &&
64
+ allowedScopes.has(WRITE_ALL_SCOPE)) {
65
+ return true;
66
+ }
67
+ return (allowedScopes.has(READ_ALL_SCOPE) && requiredScopes.every((scope) => scope.endsWith(':read')));
68
+ }
12
69
  /**
13
70
  * Build a structured error content block for MCP responses.
14
71
  */
@@ -76,30 +133,70 @@ export class ToolRegistry {
76
133
  title: tool.title,
77
134
  description: tool.description,
78
135
  inputSchema: tool.inputSchema,
79
- outputSchema: tool.outputSchema,
136
+ outputSchema: registeredOutputSchema(tool),
80
137
  annotations: tool.annotations,
81
138
  }, async (input) => {
82
139
  try {
83
- // ── confirmWrite gate ──────────────────────────────────────
84
- if (tool.confirmWrite) {
85
- const raw = (input ?? {});
86
- if (raw.confirmWrite !== true) {
140
+ const raw = getRawInput(input);
141
+ const writeMode = parseWriteMode(raw);
142
+ if (writeMode instanceof ZodError) {
143
+ return structuredErrorResponse({
144
+ errorCode: ErrorCodes.INVALID_INPUT,
145
+ message: `Invalid writeMode for "${tool.name}": ${writeMode.message}`,
146
+ details: { toolName: tool.name, issues: writeMode.issues },
147
+ });
148
+ }
149
+ // ── Capability scope gate ────────────────────────────
150
+ const allowedScopes = parseToolScopes(context.config.TOOL_SCOPES);
151
+ const requiredScopes = getRequiredToolScopes(tool);
152
+ if (!hasRequiredToolScopes(allowedScopes, requiredScopes)) {
153
+ return structuredErrorResponse({
154
+ errorCode: ErrorCodes.FORBIDDEN_SCOPE,
155
+ message: `Tool "${tool.name}" requires one of: ${requiredScopes.join(', ')}.`,
156
+ details: {
157
+ toolName: tool.name,
158
+ requiredScopes,
159
+ configuredScopes: allowedScopes ? Array.from(allowedScopes) : ['*'],
160
+ },
161
+ });
162
+ }
163
+ // ── Write transaction planning / preview / verification ─────
164
+ if (tool.confirmWrite && writeMode !== 'apply') {
165
+ const parsedPlan = tool.inputSchema.safeParse({ ...raw, confirmWrite: true });
166
+ if (!parsedPlan.success) {
87
167
  return structuredErrorResponse({
88
- errorCode: ErrorCodes.CONFIRM_WRITE_REQUIRED,
89
- message: `Tool "${tool.name}" can mutate design state and requires confirmWrite=true.`,
90
- details: { toolName: tool.name, toolGroup: tool.group, risk: tool.risk },
168
+ errorCode: ErrorCodes.INVALID_INPUT,
169
+ message: `Invalid input for "${tool.name}": ${parsedPlan.error.message}`,
170
+ details: { toolName: tool.name, issues: parsedPlan.error.issues },
91
171
  });
92
172
  }
173
+ return writePlanResponse(tool, writeMode, omitWriteControls(parsedPlan.data), requiredScopes);
174
+ }
175
+ // ── confirmWrite gate for apply ─────────────────────────────
176
+ if (tool.confirmWrite && raw.confirmWrite !== true) {
177
+ return structuredErrorResponse({
178
+ errorCode: ErrorCodes.CONFIRM_WRITE_REQUIRED,
179
+ message: `Tool "${tool.name}" can mutate design state and requires confirmWrite=true.`,
180
+ details: { toolName: tool.name, toolGroup: tool.group, risk: tool.risk },
181
+ });
93
182
  }
94
183
  // ── Parse & execute ───────────────────────────────────────
95
184
  const parsed = tool.inputSchema.parse(input ?? {});
96
185
  const result = await tool.handler(context, parsed);
97
- const structuredContent = typeof result === 'object' && result !== null
98
- ? result
99
- : { value: result };
186
+ const output = tool.outputSchema.safeParse(result);
187
+ if (!output.success) {
188
+ return structuredErrorResponse({
189
+ errorCode: ErrorCodes.TOOL_OUTPUT_INVALID,
190
+ message: `Tool "${tool.name}" returned output that does not match its declared outputSchema.`,
191
+ details: { toolName: tool.name, issues: output.error.issues },
192
+ });
193
+ }
194
+ const structuredContent = typeof output.data === 'object' && output.data !== null
195
+ ? output.data
196
+ : { value: output.data };
100
197
  return {
101
198
  structuredContent,
102
- content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
199
+ content: [{ type: 'text', text: JSON.stringify(output.data, null, 2) }],
103
200
  };
104
201
  }
105
202
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ import { ZodError, z } from 'zod';
2
+ import { type ToolDefinition } from './types.js';
3
+ export declare const writeModeSchema: z.ZodEnum<{
4
+ plan: "plan";
5
+ preview: "preview";
6
+ apply: "apply";
7
+ verify: "verify";
8
+ }>;
9
+ export type WriteMode = z.infer<typeof writeModeSchema>;
10
+ export declare const writePlanOutputSchema: z.ZodObject<{
11
+ success: z.ZodLiteral<true>;
12
+ transaction: z.ZodObject<{
13
+ id: z.ZodString;
14
+ toolName: z.ZodString;
15
+ phase: z.ZodEnum<{
16
+ plan: "plan";
17
+ preview: "preview";
18
+ apply: "apply";
19
+ verify: "verify";
20
+ }>;
21
+ willApply: z.ZodBoolean;
22
+ bridgeCallRequired: z.ZodBoolean;
23
+ confirmWriteRequired: z.ZodBoolean;
24
+ confirmWriteSatisfied: z.ZodBoolean;
25
+ risk: z.ZodEnum<{
26
+ low: "low";
27
+ medium: "medium";
28
+ high: "high";
29
+ }>;
30
+ requiredScopes: z.ZodArray<z.ZodString>;
31
+ summary: z.ZodString;
32
+ inputPreview: z.ZodRecord<z.ZodString, z.ZodUnknown>;
33
+ nextStep: z.ZodOptional<z.ZodObject<{
34
+ writeMode: z.ZodLiteral<"apply">;
35
+ confirmWrite: z.ZodLiteral<true>;
36
+ }, z.core.$strip>>;
37
+ }, z.core.$strip>;
38
+ }, z.core.$strip>;
39
+ export declare function getRawInput(input: unknown): Record<string, unknown>;
40
+ export declare function parseWriteMode(raw: Record<string, unknown>): WriteMode | ZodError;
41
+ export declare function omitWriteControls(input: unknown): Record<string, unknown>;
42
+ export declare function writePlanResponse(tool: ToolDefinition, phase: Exclude<WriteMode, 'apply'>, inputPreview: Record<string, unknown>, requiredScopes: string[]): {
43
+ structuredContent: {
44
+ success: true;
45
+ transaction: {
46
+ id: string;
47
+ toolName: string;
48
+ phase: "plan" | "preview" | "apply" | "verify";
49
+ willApply: boolean;
50
+ bridgeCallRequired: boolean;
51
+ confirmWriteRequired: boolean;
52
+ confirmWriteSatisfied: boolean;
53
+ risk: "low" | "medium" | "high";
54
+ requiredScopes: string[];
55
+ summary: string;
56
+ inputPreview: Record<string, unknown>;
57
+ nextStep?: {
58
+ writeMode: "apply";
59
+ confirmWrite: true;
60
+ } | undefined;
61
+ };
62
+ };
63
+ content: {
64
+ type: "text";
65
+ text: string;
66
+ }[];
67
+ };
68
+ export declare function registeredOutputSchema(tool: ToolDefinition): z.ZodType;
@@ -0,0 +1,80 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { z } from 'zod';
3
+ export const writeModeSchema = z.enum(['plan', 'preview', 'apply', 'verify']);
4
+ export const writePlanOutputSchema = z.object({
5
+ success: z.literal(true),
6
+ transaction: z.object({
7
+ id: z.string(),
8
+ toolName: z.string(),
9
+ phase: writeModeSchema,
10
+ willApply: z.boolean(),
11
+ bridgeCallRequired: z.boolean(),
12
+ confirmWriteRequired: z.boolean(),
13
+ confirmWriteSatisfied: z.boolean(),
14
+ risk: z.enum(['low', 'medium', 'high']),
15
+ requiredScopes: z.array(z.string()),
16
+ summary: z.string(),
17
+ inputPreview: z.record(z.string(), z.unknown()),
18
+ nextStep: z
19
+ .object({
20
+ writeMode: z.literal('apply'),
21
+ confirmWrite: z.literal(true),
22
+ })
23
+ .optional(),
24
+ }),
25
+ });
26
+ export function getRawInput(input) {
27
+ if (typeof input !== 'object' || input === null || Array.isArray(input))
28
+ return {};
29
+ return input;
30
+ }
31
+ export function parseWriteMode(raw) {
32
+ if (raw.writeMode === undefined)
33
+ return 'apply';
34
+ const parsed = writeModeSchema.safeParse(raw.writeMode);
35
+ return parsed.success ? parsed.data : parsed.error;
36
+ }
37
+ export function omitWriteControls(input) {
38
+ if (typeof input !== 'object' || input === null || Array.isArray(input))
39
+ return {};
40
+ const { confirmWrite: _confirmWrite, writeMode: _writeMode, ...rest } = input;
41
+ return rest;
42
+ }
43
+ function transactionId(toolName, phase, inputPreview) {
44
+ const payload = JSON.stringify({ toolName, phase, inputPreview });
45
+ return `wtx_${createHash('sha256').update(payload).digest('hex').slice(0, 16)}`;
46
+ }
47
+ export function writePlanResponse(tool, phase, inputPreview, requiredScopes) {
48
+ const transaction = {
49
+ id: transactionId(tool.name, phase, inputPreview),
50
+ toolName: tool.name,
51
+ phase,
52
+ willApply: false,
53
+ bridgeCallRequired: false,
54
+ confirmWriteRequired: true,
55
+ confirmWriteSatisfied: false,
56
+ risk: tool.risk,
57
+ requiredScopes,
58
+ summary: phase === 'verify'
59
+ ? `Verification checkpoint prepared for "${tool.name}". No bridge call was executed; run read-only diagnostics after apply to verify project state.`
60
+ : `${phase === 'plan' ? 'Plan' : 'Preview'} prepared for "${tool.name}". No bridge call was executed.`,
61
+ inputPreview,
62
+ nextStep: phase === 'verify'
63
+ ? undefined
64
+ : {
65
+ writeMode: 'apply',
66
+ confirmWrite: true,
67
+ },
68
+ };
69
+ const structuredContent = writePlanOutputSchema.parse({ success: true, transaction });
70
+ return {
71
+ structuredContent,
72
+ content: [{ type: 'text', text: JSON.stringify(structuredContent, null, 2) }],
73
+ };
74
+ }
75
+ export function registeredOutputSchema(tool) {
76
+ if (!tool.confirmWrite)
77
+ return tool.outputSchema;
78
+ return z.union([tool.outputSchema, writePlanOutputSchema]);
79
+ }
80
+ //# sourceMappingURL=transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/tools/transaction.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,14 @@ export interface ToolDefinition<TInput extends z.ZodType = z.ZodType, TOutput ex
35
35
  outputSchema: TOutput;
36
36
  handler: (context: ToolContext, input: z.infer<TInput>) => Promise<z.infer<TOutput>>;
37
37
  }
38
+ export interface BridgeDiagnosticsSnapshot {
39
+ manager_uptime_ms?: number;
40
+ active_port?: number;
41
+ last_heartbeat_ms?: number;
42
+ heartbeat_silence_ms?: number;
43
+ method_registry_hash?: string;
44
+ reconnect?: unknown;
45
+ }
38
46
  export interface ToolContext {
39
47
  profile: ToolProfile;
40
48
  bridge: {
@@ -43,6 +51,11 @@ export interface ToolContext {
43
51
  timeoutMs?: number;
44
52
  traceparent?: string;
45
53
  }) => Promise<TResult>;
54
+ uptimeMs?: number;
55
+ activePort?: number;
56
+ lastHeartbeatMs?: number;
57
+ methodRegistryHash?: string;
58
+ telemetry?: unknown;
46
59
  };
47
60
  config: {
48
61
  bridgeTimeoutMs: number;
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easyeda-mcp-pro",
3
- "version": "0.5.2",
3
+ "version": "0.6.0",
4
4
  "mcpName": "io.github.oaslananka/easyeda-mcp-pro",
5
5
  "description": "Production-grade MCP server for EasyEDA Pro: safe PCB design inspection, BOM sourcing, manufacturing export, and AI-assisted hardware review.",
6
6
  "keywords": [
@@ -39,7 +39,7 @@
39
39
  ],
40
40
  "packageManager": "pnpm@11.5.1",
41
41
  "engines": {
42
- "node": ">=20",
42
+ "node": ">=24 <27",
43
43
  "pnpm": ">=11"
44
44
  },
45
45
  "scripts": {
@@ -53,12 +53,14 @@
53
53
  "start": "node dist/index.js",
54
54
  "typecheck": "tsc --noEmit",
55
55
  "typecheck:extension": "pnpm --filter @easyeda-mcp-pro/bridge-extension typecheck",
56
- "lint": "eslint .",
56
+ "lint": "eslint . --max-warnings 0",
57
+ "lint:tools": "tsx scripts/lint-tool-metadata.mts",
57
58
  "format": "prettier --write .",
58
59
  "format:check": "prettier --check .",
59
60
  "test": "vitest run",
60
61
  "test:watch": "vitest",
61
62
  "test:coverage": "vitest run --coverage",
63
+ "smoke:easyeda": "tsx scripts/live-easyeda-smoke.mts",
62
64
  "verify:extension": "pnpm --filter @easyeda-mcp-pro/bridge-extension verify",
63
65
  "inspector": "pnpm build && npx @modelcontextprotocol/inspector node dist/index.js",
64
66
  "generate:methods": "tsx scripts/generate-method-registry.ts",
@@ -67,29 +69,32 @@
67
69
  "docs:dev": "vitepress dev docs",
68
70
  "docs:build": "vitepress build docs",
69
71
  "docs:preview": "vitepress preview docs",
70
- "check:metadata": "node scripts/check-metadata.mjs"
72
+ "check:metadata": "node scripts/check-metadata.mjs",
73
+ "inventory:capture": "tsx scripts/capture-runtime-inventory.mts",
74
+ "inventory:diff": "tsx scripts/diff-runtime-inventory.mts"
71
75
  },
72
76
  "dependencies": {
73
77
  "@modelcontextprotocol/sdk": "^1.29.0",
74
78
  "dotenv": "^17.4.2",
75
79
  "jose": "^6.2.3",
76
80
  "pino": "^10.3.1",
77
- "undici": "^8.4.1",
81
+ "undici": "^8.5.0",
78
82
  "ws": "^8.21.0",
79
83
  "zod": "^4.4.3"
80
84
  },
81
85
  "devDependencies": {
82
86
  "@eslint/js": "^10.0.1",
83
- "@jlceda/pro-api-types": "^0.2.57",
87
+ "@jlceda/pro-api-types": "^0.2.66",
84
88
  "@types/express": "^5.0.6",
85
89
  "@types/node": "^24.13.2",
86
90
  "@types/ws": "^8.18.1",
87
- "eslint": "^10.4.1",
88
- "prettier": "^3.8.4",
91
+ "@vitest/coverage-v8": "^4.1.9",
92
+ "eslint": "^10.6.0",
93
+ "prettier": "^3.9.4",
89
94
  "tsx": "^4.22.4",
90
95
  "typescript": "^6.0.3",
91
- "typescript-eslint": "^8.61.0",
96
+ "typescript-eslint": "^8.62.1",
92
97
  "vitepress": "^1.6.4",
93
- "vitest": "^4.1.8"
98
+ "vitest": "^4.1.9"
94
99
  }
95
100
  }