gx3-cli-mcp 0.1.0__tar.gz

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 (64) hide show
  1. gx3_cli_mcp-0.1.0/LICENSE.txt +32 -0
  2. gx3_cli_mcp-0.1.0/MANIFEST.in +15 -0
  3. gx3_cli_mcp-0.1.0/PKG-INFO +225 -0
  4. gx3_cli_mcp-0.1.0/README.md +207 -0
  5. gx3_cli_mcp-0.1.0/gx3_cli_mcp.egg-info/PKG-INFO +225 -0
  6. gx3_cli_mcp-0.1.0/gx3_cli_mcp.egg-info/SOURCES.txt +62 -0
  7. gx3_cli_mcp-0.1.0/gx3_cli_mcp.egg-info/dependency_links.txt +1 -0
  8. gx3_cli_mcp-0.1.0/gx3_cli_mcp.egg-info/entry_points.txt +3 -0
  9. gx3_cli_mcp-0.1.0/gx3_cli_mcp.egg-info/top_level.txt +1 -0
  10. gx3_cli_mcp-0.1.0/gx3cli/__init__.py +5 -0
  11. gx3_cli_mcp-0.1.0/gx3cli/analyze_gx3_intermediate_parse_gaps.py +372 -0
  12. gx3_cli_mcp-0.1.0/gx3cli/extract_comm_refresh_areas.py +700 -0
  13. gx3_cli_mcp-0.1.0/gx3cli/extract_gx3_extended_instruction_knowledge.py +918 -0
  14. gx3_cli_mcp-0.1.0/gx3cli/extract_hmi_build_info.py +783 -0
  15. gx3_cli_mcp-0.1.0/gx3cli/extract_used_devices_without_comments.py +398 -0
  16. gx3_cli_mcp-0.1.0/gx3cli/gtx_probe.py +804 -0
  17. gx3_cli_mcp-0.1.0/gx3cli/gx3_ai_context.py +89 -0
  18. gx3_cli_mcp-0.1.0/gx3cli/gx3_alarm_map.py +228 -0
  19. gx3_cli_mcp-0.1.0/gx3cli/gx3_arg_decode.py +347 -0
  20. gx3_cli_mcp-0.1.0/gx3cli/gx3_audit.py +102 -0
  21. gx3_cli_mcp-0.1.0/gx3cli/gx3_cli.py +667 -0
  22. gx3_cli_mcp-0.1.0/gx3cli/gx3_comm_detail.py +779 -0
  23. gx3_cli_mcp-0.1.0/gx3cli/gx3_convertdata_probe.py +373 -0
  24. gx3_cli_mcp-0.1.0/gx3cli/gx3_coverage.py +202 -0
  25. gx3_cli_mcp-0.1.0/gx3cli/gx3_dead_logic.py +265 -0
  26. gx3_cli_mcp-0.1.0/gx3cli/gx3_dependency_flow.py +626 -0
  27. gx3_cli_mcp-0.1.0/gx3cli/gx3_dm_probe.py +283 -0
  28. gx3_cli_mcp-0.1.0/gx3cli/gx3_doctor.py +165 -0
  29. gx3_cli_mcp-0.1.0/gx3cli/gx3_exec_config.py +214 -0
  30. gx3_cli_mcp-0.1.0/gx3cli/gx3_external_inputs.py +779 -0
  31. gx3_cli_mcp-0.1.0/gx3cli/gx3_index_lite.py +633 -0
  32. gx3_cli_mcp-0.1.0/gx3cli/gx3_interlock.py +355 -0
  33. gx3_cli_mcp-0.1.0/gx3cli/gx3_intermediate_tool.py +1412 -0
  34. gx3_cli_mcp-0.1.0/gx3cli/gx3_iut_probe.py +256 -0
  35. gx3_cli_mcp-0.1.0/gx3cli/gx3_label_probe.py +279 -0
  36. gx3_cli_mcp-0.1.0/gx3cli/gx3_ladder_diagram.py +383 -0
  37. gx3_cli_mcp-0.1.0/gx3cli/gx3_ladder_logic.py +598 -0
  38. gx3_cli_mcp-0.1.0/gx3cli/gx3_ladder_print.py +1190 -0
  39. gx3_cli_mcp-0.1.0/gx3cli/gx3_link_map.py +735 -0
  40. gx3_cli_mcp-0.1.0/gx3cli/gx3_lint.py +824 -0
  41. gx3_cli_mcp-0.1.0/gx3cli/gx3_matiec_export.py +362 -0
  42. gx3_cli_mcp-0.1.0/gx3cli/gx3_mc_zones.py +197 -0
  43. gx3_cli_mcp-0.1.0/gx3cli/gx3_mcp_server.py +522 -0
  44. gx3_cli_mcp-0.1.0/gx3cli/gx3_mildb_probe.py +295 -0
  45. gx3_cli_mcp-0.1.0/gx3cli/gx3_motion_rd77.py +287 -0
  46. gx3_cli_mcp-0.1.0/gx3cli/gx3_network_map.py +226 -0
  47. gx3_cli_mcp-0.1.0/gx3cli/gx3_program_map.py +378 -0
  48. gx3_cli_mcp-0.1.0/gx3cli/gx3_project_paths.py +275 -0
  49. gx3_cli_mcp-0.1.0/gx3cli/gx3_project_survey.py +789 -0
  50. gx3_cli_mcp-0.1.0/gx3cli/gx3_redaction.py +277 -0
  51. gx3_cli_mcp-0.1.0/gx3cli/gx3_reliability_report.py +120 -0
  52. gx3_cli_mcp-0.1.0/gx3cli/gx3_scan_order.py +713 -0
  53. gx3_cli_mcp-0.1.0/gx3cli/gx3_semantic_diff.py +228 -0
  54. gx3_cli_mcp-0.1.0/gx3cli/gx3_support_bundle.py +141 -0
  55. gx3_cli_mcp-0.1.0/gx3cli/gx3_synthetic_project.py +122 -0
  56. gx3_cli_mcp-0.1.0/gx3cli/gx3_timing_chart.py +720 -0
  57. gx3_cli_mcp-0.1.0/gx3cli/gx3_tools.py +743 -0
  58. gx3_cli_mcp-0.1.0/gx3cli/gx3_version.py +63 -0
  59. gx3_cli_mcp-0.1.0/gx3cli/gx3_w3pa_probe.py +216 -0
  60. gx3_cli_mcp-0.1.0/gx3cli/gx3_xref.py +420 -0
  61. gx3_cli_mcp-0.1.0/gx3cli/review_gx3_project.py +941 -0
  62. gx3_cli_mcp-0.1.0/gx3cli/trace_gx3_device_dependencies.py +976 -0
  63. gx3_cli_mcp-0.1.0/pyproject.toml +32 -0
  64. gx3_cli_mcp-0.1.0/setup.cfg +4 -0
@@ -0,0 +1,32 @@
1
+ SOURCE-AVAILABLE PROPRIETARY LICENSE
2
+
3
+ Copyright (c) 2026 purinzan. All rights reserved.
4
+
5
+ This software is published as source-available proprietary software. It is not
6
+ open-source software.
7
+
8
+ Permission is granted to view, clone, and run this repository locally for
9
+ evaluation and personal/internal analysis, subject to the restrictions below.
10
+
11
+ You may not redistribute, sublicense, sell, host as a service, or use this
12
+ software as part of a paid product or commercial service without prior written
13
+ permission from the copyright holder.
14
+
15
+ You may not use this software to bypass, modify, or violate the terms of GX
16
+ Works3, Mitsubishi Electric software, or any other third-party product.
17
+
18
+ This software performs static analysis of PLC project files. Its output is
19
+ advisory only. It does not execute, validate, certify, or guarantee the behavior
20
+ of any programmable logic controller, safety system, machine, or physical
21
+ equipment.
22
+
23
+ Users are solely responsible for verifying all results in the official
24
+ engineering environment and through their own safety, quality, and operational
25
+ review process before applying any change to a live system.
26
+
27
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
28
+ IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR
29
+ A PARTICULAR PURPOSE, NON-INFRINGEMENT, ACCURACY, OR SAFETY. IN NO EVENT SHALL
30
+ THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES, EQUIPMENT LOSS,
31
+ PRODUCTION LOSS, OR OTHER LIABILITY ARISING FROM USE OF THE SOFTWARE OR ITS
32
+ ANALYSIS OUTPUT.
@@ -0,0 +1,15 @@
1
+ include pyproject.toml
2
+ include README.md
3
+ include LICENSE.txt
4
+ recursive-include gx3cli *.py
5
+ prune tests
6
+ prune scripts
7
+ prune dist
8
+ prune dist_sdist
9
+ prune build
10
+ prune .git
11
+ global-exclude __pycache__/* *.py[cod]
12
+ # Belt-and-suspenders: no data of any kind ships, even if it lands here.
13
+ global-exclude *.gx3 *.GX3 *.gtx *.GTX *.zip *.BACKUP.GTX
14
+ global-exclude *.db *.sqlite *.sqlite3 *.cab *.CAB *.dat *.PRM *.xml *.bin *.w3pa *.iut *.gpj *.prj *.pji *.col *.qpg *.pcode *.info
15
+ global-exclude *.csv *.xlsx *.xls *.pdf
@@ -0,0 +1,225 @@
1
+ Metadata-Version: 2.4
2
+ Name: gx3-cli-mcp
3
+ Version: 0.1.0
4
+ Summary: Local GX Works3 project analysis CLI with a stdio MCP server
5
+ Author: purinzan
6
+ License-Expression: LicenseRef-Source-Available-Proprietary
7
+ Project-URL: Homepage, https://github.com/purinzan/gx3-cli-mcp
8
+ Project-URL: Repository, https://github.com/purinzan/gx3-cli-mcp
9
+ Project-URL: Issues, https://github.com/purinzan/gx3-cli-mcp/issues
10
+ Keywords: plc,gx-works3,mitsubishi,ladder,mcp
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: Operating System :: Microsoft :: Windows
13
+ Classifier: Intended Audience :: Manufacturing
14
+ Requires-Python: >=3.10
15
+ Description-Content-Type: text/markdown
16
+ License-File: LICENSE.txt
17
+ Dynamic: license-file
18
+
19
+ # gx3-cli-mcp
20
+
21
+ Local GX Works3 project analysis for engineers and AI agents.
22
+
23
+ `gx3-cli-mcp` provides a Windows-first CLI and stdio MCP server for inspecting
24
+ GX Works3 (`.gx3`) projects on your own machine. It helps you search devices,
25
+ comments, cross references, ladder conditions, communication boundaries, and
26
+ static review signals without modifying the source project.
27
+
28
+ 日本語: GX Works3 (`.gx3`) プロジェクトをローカルで読み取り解析し、AI
29
+ エージェントからも使える CLI / MCP サーバーです。プロジェクトを書き換えず、
30
+ デバイス、コメント、xref、ラダー根拠、通信境界を確認するための道具です。
31
+
32
+ This is an unofficial, independent tool. It is not endorsed by Mitsubishi
33
+ Electric.
34
+
35
+ ## What You Can Do
36
+
37
+ - Find where a device is used and whether it is read, written, or referenced.
38
+ - Search device comments such as start, stop, alarm, cycle, step, or manual
39
+ operation keywords.
40
+ - Trace upstream conditions for a coil and print nearby ladder evidence.
41
+ - Build xref and SQLite indexes so AI agents can answer from structured facts.
42
+ - Review static risks such as duplicate coils, multi-writers, dead logic, and
43
+ interlock possibilities.
44
+ - Inspect external inputs, HMI/communication boundaries, IP maps, link maps,
45
+ timing candidates, and project-wide summaries.
46
+
47
+ ## What It Does Not Do
48
+
49
+ - It does not include real customer or production PLC projects.
50
+ - It does not send project data to an online service by itself.
51
+ - It does not provide a GUI in this release.
52
+ - It does not require a license token or paid-plan token.
53
+ - The MCP server does not expose project-mutating commands.
54
+
55
+ ## Install
56
+
57
+ ```powershell
58
+ python -m pip install gx3-cli-mcp
59
+ gx3-cli --version
60
+ gx3-mcp-server --version
61
+ ```
62
+
63
+ Requires Python 3.10 or later. Installing into a virtual environment is
64
+ recommended so the two console scripts stay off the system PATH.
65
+
66
+ If your site blocks PyPI, install the latest source directly:
67
+
68
+ ```powershell
69
+ python -m pip install git+https://github.com/purinzan/gx3-cli-mcp.git
70
+ ```
71
+
72
+ For a local source checkout:
73
+
74
+ ```powershell
75
+ python -m pip install -e .
76
+ ```
77
+
78
+ 日本語: 通常は `pip install gx3-cli-mcp` だけで CLI と MCP サーバーの両方が
79
+ 入ります。社内プロキシで PyPI に到達できない場合のみ、上の git 直接指定を
80
+ 使ってください。
81
+
82
+ ## First Analysis
83
+
84
+ Run these three commands first for a real project:
85
+
86
+ ```powershell
87
+ gx3-cli doctor --root C:\path\to\project.gx3
88
+ gx3-cli index-lite build --root C:\path\to\project.gx3
89
+ gx3-cli xref build --root C:\path\to\project.gx3
90
+ ```
91
+
92
+ Then inspect a device:
93
+
94
+ ```powershell
95
+ gx3-cli query-device M100 --root C:\path\to\project.gx3
96
+ gx3-cli xref where-used M100 --root C:\path\to\project.gx3
97
+ gx3-cli trace-device M100 --root C:\path\to\project.gx3 --strict-logic --compact
98
+ ```
99
+
100
+ When you pass a `.gx3` file, the tool extracts it into
101
+ `.gx3_cache\<sha256>\` and analyzes that local cache.
102
+
103
+ ## Common Tasks
104
+
105
+ | Goal | Command |
106
+ |---|---|
107
+ | Check project readiness | `gx3-cli doctor --root project.gx3` |
108
+ | Build the search index | `gx3-cli index-lite build --root project.gx3` |
109
+ | Build cross references | `gx3-cli xref build --root project.gx3` |
110
+ | Look up one device | `gx3-cli query-device M100 --root project.gx3` |
111
+ | Search by comment text | `gx3-cli query-comment "起動" --root project.gx3` |
112
+ | Show external/HMI/communication boundary devices | `gx3-cli query-external --root project.gx3` |
113
+ | Find cycle, step, or state candidates | `gx3-cli query-cycle --root project.gx3` |
114
+ | Show used/free device ranges | `gx3-cli device-map --root project.gx3 --types M,D,W --min-free 100` |
115
+ | Show writers/readers | `gx3-cli xref where-used M100 --root project.gx3` |
116
+ | Trace coil conditions | `gx3-cli trace-device M100 --root project.gx3 --strict-logic --compact` |
117
+ | Print ladder evidence | `gx3-cli ladder-print <PROGRAM_OR_LDDB> --root project.gx3 --device M100` |
118
+ | Check static interlock possibility | `gx3-cli interlock-check M100 M200 --root project.gx3` |
119
+ | Run static review checks | `gx3-cli lint project.gx3` |
120
+ | Create a support summary | `gx3-cli support-bundle --root project.gx3 -o support.zip` |
121
+
122
+ Use the indexed commands above for normal lookup and discovery. Avoid starting
123
+ AI workflows with raw text search over extracted GX3 files; GX Works3 projects
124
+ contain binary/database files, and the CLI preserves device, comment, POU, role,
125
+ and step context.
126
+
127
+ ## Use With MCP
128
+
129
+ The MCP server is intended for AI clients that support stdio MCP servers.
130
+
131
+ ```json
132
+ {
133
+ "mcpServers": {
134
+ "gx3": {
135
+ "command": "python",
136
+ "args": ["-m", "gx3cli.gx3_mcp_server"]
137
+ }
138
+ }
139
+ }
140
+ ```
141
+
142
+ If your client can resolve console scripts from PATH:
143
+
144
+ ```json
145
+ {
146
+ "mcpServers": {
147
+ "gx3": {
148
+ "command": "gx3-mcp-server"
149
+ }
150
+ }
151
+ }
152
+ ```
153
+
154
+ The MCP server exposes read-only analysis tools and a restricted command
155
+ runner. Synthetic demo generation is local CLI-only.
156
+
157
+ ## Demo Project
158
+
159
+ Use a synthetic project for screenshots, tutorials, and first-time tests.
160
+
161
+ ```powershell
162
+ gx3-cli synthetic-project demo.gx3 --overwrite
163
+ gx3-cli doctor --root demo.gx3
164
+ gx3-cli trace-device M100 --root demo.gx3 --strict-logic --compact
165
+ ```
166
+
167
+ ## Data And Safety
168
+
169
+ - Project files stay on your machine unless you pass outputs to another tool.
170
+ - Some commands create local files such as SQLite indexes, CSV reports, ZIP
171
+ support bundles, or Markdown summaries.
172
+ - Analysis output is advisory. Verify findings in GX Works3 and through your
173
+ own safety/quality process before changing real equipment.
174
+ - The tool is not a substitute for PLC validation, machine safety review, or
175
+ official engineering software.
176
+
177
+ ## Documentation
178
+
179
+ Recommended reading:
180
+
181
+ 1. [User manual (JA)](docs/USER_MANUAL_JA.md): Japanese install and usage guide.
182
+ 2. [Agent usage guide (JA)](docs/AGENT_USAGE_JA.md): how AI agents should use the indexed tools.
183
+ 3. [Security note (JA)](docs/SECURITY_JA.md): local data handling and read-only MCP policy.
184
+ 4. [Validation matrix (JA)](docs/VALIDATION_MATRIX.md): verified scope and limitations.
185
+ 5. [File usage guide (JA)](docs/FILE_USAGE_GUIDE_JA.md): repository file map for agents and contributors.
186
+
187
+ MCP configuration examples:
188
+
189
+ - [MCP client config](docs/mcp_client_config.json): robust `python -m gx3cli.gx3_mcp_server` launch.
190
+ - [MCP client config, console script](docs/mcp_client_config_console_script.json): direct `gx3-mcp-server` launch when PATH is reliable.
191
+
192
+ ## License In Plain Words
193
+
194
+ Full terms are in [LICENSE.txt](LICENSE.txt); this section is only a summary and
195
+ the license text governs.
196
+
197
+ This is **source-available proprietary software**, not open source. In practice:
198
+
199
+ - You **may** clone it, read the source, and run it for evaluation and for
200
+ internal analysis work, including inside a company.
201
+ - You **may not** redistribute it, host it as a service, resell it, or ship it
202
+ as part of a paid product or commercial service without written permission.
203
+ - There is **no license token, activation, or paid plan** to run it.
204
+ - It is provided as is, with no warranty, and its output is advisory only.
205
+
206
+ 日本語: 社内での評価・業務利用は許諾されています。禁止しているのは再配布、
207
+ SaaS としての提供、有償製品やサービスへの組み込みです。実行にライセンス
208
+ キーや課金は不要です。商用利用の相談は Issue からご連絡ください。
209
+
210
+ ## For Contributors
211
+
212
+ Bug reports, questions, and small pull requests are welcome, in Japanese or
213
+ English. Start with [CONTRIBUTING.md](CONTRIBUTING.md), which covers the
214
+ no-project-data rule, the development setup, and what a useful bug report
215
+ contains. Issues labeled `good first issue` are scoped to be approachable
216
+ without deep knowledge of the GX Works3 file format.
217
+
218
+ Before changing or publishing this project, run the same checks used by CI:
219
+
220
+ ```powershell
221
+ python run_tests.py
222
+ python scripts\release_gate.py .
223
+ python -m build --wheel
224
+ python scripts\release_gate.py dist\gx3_cli_mcp-*.whl
225
+ ```
@@ -0,0 +1,207 @@
1
+ # gx3-cli-mcp
2
+
3
+ Local GX Works3 project analysis for engineers and AI agents.
4
+
5
+ `gx3-cli-mcp` provides a Windows-first CLI and stdio MCP server for inspecting
6
+ GX Works3 (`.gx3`) projects on your own machine. It helps you search devices,
7
+ comments, cross references, ladder conditions, communication boundaries, and
8
+ static review signals without modifying the source project.
9
+
10
+ 日本語: GX Works3 (`.gx3`) プロジェクトをローカルで読み取り解析し、AI
11
+ エージェントからも使える CLI / MCP サーバーです。プロジェクトを書き換えず、
12
+ デバイス、コメント、xref、ラダー根拠、通信境界を確認するための道具です。
13
+
14
+ This is an unofficial, independent tool. It is not endorsed by Mitsubishi
15
+ Electric.
16
+
17
+ ## What You Can Do
18
+
19
+ - Find where a device is used and whether it is read, written, or referenced.
20
+ - Search device comments such as start, stop, alarm, cycle, step, or manual
21
+ operation keywords.
22
+ - Trace upstream conditions for a coil and print nearby ladder evidence.
23
+ - Build xref and SQLite indexes so AI agents can answer from structured facts.
24
+ - Review static risks such as duplicate coils, multi-writers, dead logic, and
25
+ interlock possibilities.
26
+ - Inspect external inputs, HMI/communication boundaries, IP maps, link maps,
27
+ timing candidates, and project-wide summaries.
28
+
29
+ ## What It Does Not Do
30
+
31
+ - It does not include real customer or production PLC projects.
32
+ - It does not send project data to an online service by itself.
33
+ - It does not provide a GUI in this release.
34
+ - It does not require a license token or paid-plan token.
35
+ - The MCP server does not expose project-mutating commands.
36
+
37
+ ## Install
38
+
39
+ ```powershell
40
+ python -m pip install gx3-cli-mcp
41
+ gx3-cli --version
42
+ gx3-mcp-server --version
43
+ ```
44
+
45
+ Requires Python 3.10 or later. Installing into a virtual environment is
46
+ recommended so the two console scripts stay off the system PATH.
47
+
48
+ If your site blocks PyPI, install the latest source directly:
49
+
50
+ ```powershell
51
+ python -m pip install git+https://github.com/purinzan/gx3-cli-mcp.git
52
+ ```
53
+
54
+ For a local source checkout:
55
+
56
+ ```powershell
57
+ python -m pip install -e .
58
+ ```
59
+
60
+ 日本語: 通常は `pip install gx3-cli-mcp` だけで CLI と MCP サーバーの両方が
61
+ 入ります。社内プロキシで PyPI に到達できない場合のみ、上の git 直接指定を
62
+ 使ってください。
63
+
64
+ ## First Analysis
65
+
66
+ Run these three commands first for a real project:
67
+
68
+ ```powershell
69
+ gx3-cli doctor --root C:\path\to\project.gx3
70
+ gx3-cli index-lite build --root C:\path\to\project.gx3
71
+ gx3-cli xref build --root C:\path\to\project.gx3
72
+ ```
73
+
74
+ Then inspect a device:
75
+
76
+ ```powershell
77
+ gx3-cli query-device M100 --root C:\path\to\project.gx3
78
+ gx3-cli xref where-used M100 --root C:\path\to\project.gx3
79
+ gx3-cli trace-device M100 --root C:\path\to\project.gx3 --strict-logic --compact
80
+ ```
81
+
82
+ When you pass a `.gx3` file, the tool extracts it into
83
+ `.gx3_cache\<sha256>\` and analyzes that local cache.
84
+
85
+ ## Common Tasks
86
+
87
+ | Goal | Command |
88
+ |---|---|
89
+ | Check project readiness | `gx3-cli doctor --root project.gx3` |
90
+ | Build the search index | `gx3-cli index-lite build --root project.gx3` |
91
+ | Build cross references | `gx3-cli xref build --root project.gx3` |
92
+ | Look up one device | `gx3-cli query-device M100 --root project.gx3` |
93
+ | Search by comment text | `gx3-cli query-comment "起動" --root project.gx3` |
94
+ | Show external/HMI/communication boundary devices | `gx3-cli query-external --root project.gx3` |
95
+ | Find cycle, step, or state candidates | `gx3-cli query-cycle --root project.gx3` |
96
+ | Show used/free device ranges | `gx3-cli device-map --root project.gx3 --types M,D,W --min-free 100` |
97
+ | Show writers/readers | `gx3-cli xref where-used M100 --root project.gx3` |
98
+ | Trace coil conditions | `gx3-cli trace-device M100 --root project.gx3 --strict-logic --compact` |
99
+ | Print ladder evidence | `gx3-cli ladder-print <PROGRAM_OR_LDDB> --root project.gx3 --device M100` |
100
+ | Check static interlock possibility | `gx3-cli interlock-check M100 M200 --root project.gx3` |
101
+ | Run static review checks | `gx3-cli lint project.gx3` |
102
+ | Create a support summary | `gx3-cli support-bundle --root project.gx3 -o support.zip` |
103
+
104
+ Use the indexed commands above for normal lookup and discovery. Avoid starting
105
+ AI workflows with raw text search over extracted GX3 files; GX Works3 projects
106
+ contain binary/database files, and the CLI preserves device, comment, POU, role,
107
+ and step context.
108
+
109
+ ## Use With MCP
110
+
111
+ The MCP server is intended for AI clients that support stdio MCP servers.
112
+
113
+ ```json
114
+ {
115
+ "mcpServers": {
116
+ "gx3": {
117
+ "command": "python",
118
+ "args": ["-m", "gx3cli.gx3_mcp_server"]
119
+ }
120
+ }
121
+ }
122
+ ```
123
+
124
+ If your client can resolve console scripts from PATH:
125
+
126
+ ```json
127
+ {
128
+ "mcpServers": {
129
+ "gx3": {
130
+ "command": "gx3-mcp-server"
131
+ }
132
+ }
133
+ }
134
+ ```
135
+
136
+ The MCP server exposes read-only analysis tools and a restricted command
137
+ runner. Synthetic demo generation is local CLI-only.
138
+
139
+ ## Demo Project
140
+
141
+ Use a synthetic project for screenshots, tutorials, and first-time tests.
142
+
143
+ ```powershell
144
+ gx3-cli synthetic-project demo.gx3 --overwrite
145
+ gx3-cli doctor --root demo.gx3
146
+ gx3-cli trace-device M100 --root demo.gx3 --strict-logic --compact
147
+ ```
148
+
149
+ ## Data And Safety
150
+
151
+ - Project files stay on your machine unless you pass outputs to another tool.
152
+ - Some commands create local files such as SQLite indexes, CSV reports, ZIP
153
+ support bundles, or Markdown summaries.
154
+ - Analysis output is advisory. Verify findings in GX Works3 and through your
155
+ own safety/quality process before changing real equipment.
156
+ - The tool is not a substitute for PLC validation, machine safety review, or
157
+ official engineering software.
158
+
159
+ ## Documentation
160
+
161
+ Recommended reading:
162
+
163
+ 1. [User manual (JA)](docs/USER_MANUAL_JA.md): Japanese install and usage guide.
164
+ 2. [Agent usage guide (JA)](docs/AGENT_USAGE_JA.md): how AI agents should use the indexed tools.
165
+ 3. [Security note (JA)](docs/SECURITY_JA.md): local data handling and read-only MCP policy.
166
+ 4. [Validation matrix (JA)](docs/VALIDATION_MATRIX.md): verified scope and limitations.
167
+ 5. [File usage guide (JA)](docs/FILE_USAGE_GUIDE_JA.md): repository file map for agents and contributors.
168
+
169
+ MCP configuration examples:
170
+
171
+ - [MCP client config](docs/mcp_client_config.json): robust `python -m gx3cli.gx3_mcp_server` launch.
172
+ - [MCP client config, console script](docs/mcp_client_config_console_script.json): direct `gx3-mcp-server` launch when PATH is reliable.
173
+
174
+ ## License In Plain Words
175
+
176
+ Full terms are in [LICENSE.txt](LICENSE.txt); this section is only a summary and
177
+ the license text governs.
178
+
179
+ This is **source-available proprietary software**, not open source. In practice:
180
+
181
+ - You **may** clone it, read the source, and run it for evaluation and for
182
+ internal analysis work, including inside a company.
183
+ - You **may not** redistribute it, host it as a service, resell it, or ship it
184
+ as part of a paid product or commercial service without written permission.
185
+ - There is **no license token, activation, or paid plan** to run it.
186
+ - It is provided as is, with no warranty, and its output is advisory only.
187
+
188
+ 日本語: 社内での評価・業務利用は許諾されています。禁止しているのは再配布、
189
+ SaaS としての提供、有償製品やサービスへの組み込みです。実行にライセンス
190
+ キーや課金は不要です。商用利用の相談は Issue からご連絡ください。
191
+
192
+ ## For Contributors
193
+
194
+ Bug reports, questions, and small pull requests are welcome, in Japanese or
195
+ English. Start with [CONTRIBUTING.md](CONTRIBUTING.md), which covers the
196
+ no-project-data rule, the development setup, and what a useful bug report
197
+ contains. Issues labeled `good first issue` are scoped to be approachable
198
+ without deep knowledge of the GX Works3 file format.
199
+
200
+ Before changing or publishing this project, run the same checks used by CI:
201
+
202
+ ```powershell
203
+ python run_tests.py
204
+ python scripts\release_gate.py .
205
+ python -m build --wheel
206
+ python scripts\release_gate.py dist\gx3_cli_mcp-*.whl
207
+ ```