genexus-mcp 2.3.0 → 2.3.1
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.
- package/README.md +33 -1
- package/cli/lib/config.js +8 -5
- package/package.json +1 -1
- package/publish/GxMcp.Gateway.deps.json +2 -2
- package/publish/GxMcp.Gateway.dll +0 -0
- package/publish/GxMcp.Gateway.exe +0 -0
- package/publish/GxMcp.Gateway.pdb +0 -0
- package/publish/worker/GxMcp.Worker.exe +0 -0
- package/publish/worker/GxMcp.Worker.pdb +0 -0
package/README.md
CHANGED
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/genexus-mcp)
|
|
4
4
|
[](https://www.npmjs.com/package/genexus-mcp)
|
|
5
|
-
[](https://lobehub.com/mcp/lennix1337-genexus18mcp)
|
|
6
5
|
[](https://opensource.org/licenses/MIT)
|
|
6
|
+
[](https://safeskill.dev/scan/lennix1337-genexus18mcp)
|
|
7
|
+
[](https://lobehub.com/mcp/lennix1337-genexus18mcp)
|
|
7
8
|
|
|
8
9
|
> **¿Hablás español?** → [Guía de inicio en español](docs/GETTING_STARTED.es.md)
|
|
9
10
|
> **Stuck?** → [Troubleshooting guide](TROUBLESHOOTING.md)
|
|
@@ -70,6 +71,37 @@ Replace the placeholders or let the AI ask you for them.
|
|
|
70
71
|
|
|
71
72
|
---
|
|
72
73
|
|
|
74
|
+
## Corporate install (fixed path, ASR-friendly)
|
|
75
|
+
|
|
76
|
+
If your machine has **Microsoft Defender ASR**, **SmartScreen**, or another endpoint policy blocking unsigned binaries, the default `npx` flow is painful — `npx` caches the package under `%LOCALAPPDATA%\npm-cache\_npx\<hash>\...`, and the `<hash>` changes per version, so IT can't whitelist a stable path without a wildcard over the whole npm cache (which is too broad).
|
|
77
|
+
|
|
78
|
+
Use the corporate installer instead. It extracts the binaries to a stable directory and registers the AI clients to launch the gateway directly from there — `npx` is never on the runtime path.
|
|
79
|
+
|
|
80
|
+
```pwsh
|
|
81
|
+
# One-liner — installs latest release, registers AI clients
|
|
82
|
+
iex (irm https://raw.githubusercontent.com/lennix1337/Genexus18MCP/main/scripts/install.ps1)
|
|
83
|
+
|
|
84
|
+
# With explicit KB and GeneXus paths
|
|
85
|
+
$s = irm https://raw.githubusercontent.com/lennix1337/Genexus18MCP/main/scripts/install.ps1
|
|
86
|
+
& ([scriptblock]::Create($s)) -Kb "C:\KBs\MyKB" -Gx "C:\Program Files (x86)\GeneXus\GeneXus18"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Install location:
|
|
90
|
+
|
|
91
|
+
- **Admin shell** → `C:\Tools\GenexusMCP\`
|
|
92
|
+
- **Non-admin shell** → `%LOCALAPPDATA%\Programs\GenexusMCP\`
|
|
93
|
+
|
|
94
|
+
Paths to give to IT for the ASR / Defender exclusion list:
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
<InstallDir>\GxMcp.Gateway.exe
|
|
98
|
+
<InstallDir>\worker\GxMcp.Worker.exe
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Re-run the same one-liner later to **upgrade** — it detects the installed version (`version.txt` in the install dir) and downloads only if a newer release is available. Use `-Force` to reinstall the same version, `-Version v2.3.0` to pin a specific tag, `-NoClient` to skip AI client registration. Node.js 18+ must be installed for client registration; without it the script still extracts the binaries but you'll need to edit the client config (`claude_desktop_config.json` etc.) manually.
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
73
105
|
## What can I ask the AI?
|
|
74
106
|
|
|
75
107
|
Once installed, here's what unlocks. Try these as your first prompts:
|
package/cli/lib/config.js
CHANGED
|
@@ -148,6 +148,13 @@ function createConfigFile(kbPath, gxPath) {
|
|
|
148
148
|
function patchClientConfig(targetConfigPath) {
|
|
149
149
|
const clients = getClientConfigTargets();
|
|
150
150
|
|
|
151
|
+
// Set by scripts/install.ps1 for fixed-path corporate installs — clients
|
|
152
|
+
// launch the gateway exe directly instead of resolving via the npx cache.
|
|
153
|
+
const directExe = process.env.GENEXUS_MCP_GATEWAY_EXE;
|
|
154
|
+
const launcher = directExe
|
|
155
|
+
? { command: directExe, args: [] }
|
|
156
|
+
: { command: process.platform === 'win32' ? 'npx.cmd' : 'npx', args: ['-y', 'genexus-mcp@latest'] };
|
|
157
|
+
|
|
151
158
|
const patched = [];
|
|
152
159
|
const failed = [];
|
|
153
160
|
|
|
@@ -163,11 +170,7 @@ function patchClientConfig(targetConfigPath) {
|
|
|
163
170
|
|
|
164
171
|
const cfgObj = parsed || {};
|
|
165
172
|
cfgObj.mcpServers = cfgObj.mcpServers || {};
|
|
166
|
-
cfgObj.mcpServers.genexus = {
|
|
167
|
-
command: process.platform === 'win32' ? 'npx.cmd' : 'npx',
|
|
168
|
-
args: ['-y', 'genexus-mcp@latest'],
|
|
169
|
-
env: { GX_CONFIG_PATH: targetConfigPath }
|
|
170
|
-
};
|
|
173
|
+
cfgObj.mcpServers.genexus = { ...launcher, env: { GX_CONFIG_PATH: targetConfigPath } };
|
|
171
174
|
|
|
172
175
|
fs.writeFileSync(client.path, JSON.stringify(cfgObj, null, 2));
|
|
173
176
|
patched.push(client.name);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "genexus-mcp",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.1",
|
|
4
4
|
"mcpName": "io.github.lennix1337/genexus",
|
|
5
5
|
"description": "GeneXus 18 MCP server — read, edit, and analyze GeneXus knowledge base objects (transactions, web panels, procedures, SDTs) directly from Claude, Cursor, and other AI agents over the Model Context Protocol.",
|
|
6
6
|
"keywords": [
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"compilationOptions": {},
|
|
7
7
|
"targets": {
|
|
8
8
|
".NETCoreApp,Version=v8.0": {
|
|
9
|
-
"GxMcp.Gateway/2.3.
|
|
9
|
+
"GxMcp.Gateway/2.3.1": {
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"Newtonsoft.Json": "13.0.3",
|
|
12
12
|
"System.Management": "10.0.5",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
}
|
|
82
82
|
},
|
|
83
83
|
"libraries": {
|
|
84
|
-
"GxMcp.Gateway/2.3.
|
|
84
|
+
"GxMcp.Gateway/2.3.1": {
|
|
85
85
|
"type": "project",
|
|
86
86
|
"serviceable": false,
|
|
87
87
|
"sha512": ""
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|