GeneXus MCP Server — Multi-version GeneXus for Claude, Cursor, and AI Agents
MCP serverAI & modelsThis integration lets your AI work directly with GeneXus 18 knowledge base objects. Once added, Claude, Cursor, or other AI agents can read, edit, and analyze the objects in your knowledge base, so reviewing and changing them no longer requires switching tools.
Unavailable. This server has no hosted endpoint yet, so Ahel can't serve it.
Add to setup to save this item as a reference. Ahel cannot run it, and signing in will not install it.
What your AI can do with it
- Read objects from a GeneXus 18 knowledge base
- Edit GeneXus 18 knowledge base objects
- Analyze GeneXus 18 knowledge base objects
- Work with your knowledge base from Claude, Cursor, or other AI agents
Getting started
- Save this item in Your setup as a reference.
- Read the source or reference documentation for its setup requirements. Saving it here does not connect it to your AI.
- Check this page for availability before trying to install it through Ahel.
From the project's README
As published by lennix1337/genexus18mcp in README.md.
¿Hablás español? → Guía de inicio en español Fala português? → Guia de início em português Stuck? → Troubleshooting guide
GeneXus MCP Server lets AI agents — Claude Desktop, Claude Code, Cursor, Antigravity, and any MCP-compatible client — read, edit, analyze, and refactor objects inside a Knowledge Base supported by the selected GeneXus SDK. It talks to the native GeneXus SDK, so the agent works with the real KB, not a copy or a parsed approximation.
In practice: you point the MCP at your KB, then ask your AI assistant things like "list all transactions with attribute CustomerId", "add a rule to the Order transaction that validates the total", or "refactor this procedure to use the new SDT" — and it does it.
Multi-version SDK support
The same MCP distribution supports the SDK majors listed in the generated
compatibility document. Each configured MCP process selects one installed SDK
with --gx; no separate MCP installation is required. The commands below are
examples of switching the existing configuration, not running two majors in
the same process:
npx genexus-mcp@latest init --kb "C:\KBs\KBTeste17" --gx "C:\Program Files (x86)\GeneXus\GeneXus17Trial"
# To switch this MCP configuration to GX18:
npx genexus-mcp@latest init --kb "C:\KBs\MyGX18KB" --gx "C:\Program Files (x86)\GeneXus\GeneXus18"
After switching the SDK or KB, fully restart the AI client so it reloads the MCP process and its tool schemas. If GX17 and GX18 must run simultaneously, use separate MCP configurations and ports.
init also reads the KB .gxw major and the selected GeneXus.exe metadata.
It aborts before writing config.json when the majors conflict or an automatic
selection cannot be verified. genexus-mcp doctor exposes the same result as
the kb_sdk_compatibility check. For a disposable fixture, the
live-KB harness includes a catalog-driven matrix
that checks every supported major against one published artifact.
The Gateway reports the detected SDK through genexus_whoami:
geneXus.supportedMajors: explicitly validated SDK majors from the version cataloggeneXus.matchedMajor: the major detected for the configured installationgeneXus.versionMatches: whether the detected installation is in that cataloggeneXus.supportedMajor: retained as the legacy single-major alias for the catalog primary
The Worker isolates version-sensitive SDK members behind compatibility adapters.
For example, Design System helper methods that differ between SDK majors are
replaced field-by-field by parsing the native Tokens and Styles parts when
needed. Existing tool names, arguments, and MCP client configuration formats do
not change.
Supported SDK majors: GeneXus 16, GeneXus 17, GeneXus 18.
Primary SDK: GeneXus 18.
Source of truth: config/gx-versions.json.
To add another GeneXus major in the future, add it to the explicit version catalog only after compiling the Worker with that SDK and passing the focused tests plus a live KB smoke. This prevents the server from claiming compatibility based only on a version string.
Legacy GeneXus compatibility (GX8 to GX15)
The server also includes best-effort dynamic compatibility for legacy installations:
- GeneXus Evolution 1 (10.1), Evolution 2 (10.2), Evolution 3 (10.3), and GeneXus 15: Driven via runtime reflection (
dotnet-reflection), dynamically adapting to missing types or structural differences (such as module-less KBs withoutQualifiedName). - GeneXus 8.0 and GeneXus 9.0: Driven via classic Win32 COM automation (
com-gxpublic), late-binding toGXPublic.GXPublicon an STA thread to open, inspect, and read objects from classic.gxiKnowledge Bases. - Graceful degradation: Modern tools that require features introduced in newer GeneXus versions (such as
genexus_api,genexus_gam, orgenexus_module) return structuredUNSUPPORTED_IN_GENEXUS_VERSIONerrors indicating the required minimum version rather than failing ungracefully.
What you can do with it
A quick map of what the agent can do against your real KB through the 50 tools (details in Tool Surface):
| Area | What the agent can do |
|---|---|
| 🔎 Explore | Search & list objects, read any part (source, rules, events, structure, docs, pattern XML), inspect metadata & callers, regex-search source, view the navigation report |
| ✏️ Edit code | Edit any object part (full/patch/ops modes), variables CRUD, format, create & delete objects, scaffold a Procedure from a curl command, edit + rebuild callers in one shot |
| 🗄️ Author the data model | Transaction structure (DSL), unique/non-unique indexes (create & drop), attribute formulas & subtypes, level Description/Image attributes, Domain enum values, folders & modules, table↔transaction relations & redundant-attribute detection |
| 🧩 Author other objects | External Object methods & properties, Menu options, REST API objects, WorkWithPlus / WorkWith patterns, typed .NET generator references |
| 🎨 UI & WorkWithPlus | Full read/write of pattern XML (controls, actions, grids, orders, groups), theme classes & styling, native WebForm/layout edits, control catalog & design-system tokens/classes/images, headless-browser verification |
| 🔬 Analyze | Impact/dependency analysis, complexity & code metrics, naming, explain-what-this-does, KB activity/freshness, reorg/DDL impact preview, native security scan, schema-drift check |
| 🛠️ Build, test & deploy | Build (full or fast compile_check), validate, reorg, index, run native GXtest tests, deploy the application (targets + deploy) |
| 🔀 Refactor & compare | Rename across the KB, extract procedure, compare & merge objects (IDE parity) |
| 🌿 Versioning, transfer & teams | KB model versions/branches, real XPZ export/import (dependency-aware), GXserver (Team Development) sync + CI pipelines, git-style history, multi-KB parallel work |
| 🔐 Security | GAM / integrated-security provisioning, KB security audit + native Security Scanner |
It works through the native GeneXus SDK — the same code paths the IDE uses — so edits are real and validated, not text hacks on KB files.
Prerequisites
Before you start, make sure you have:
- ✅ Windows (GeneXus is Windows-only)
- ✅ A supported GeneXus SDK installed locally (see
docs/generated/supported-versions.md; pass another install path explicitly when needed) - ✅ GeneXus 18 installed locally (the primary supported SDK; other catalogued majors are also supported)
- ✅ A Knowledge Base created with a supported GeneXus major and opened at least once in the IDE (so it's initialized)
- ✅ Node.js 22+ — check with
node --versionin a terminal; install from nodejs.org if missing - ✅ An MCP-compatible AI client — Claude Desktop, Claude Code, Cursor, Antigravity, etc.
You do not need to clone this repo or install anything globally — npx handles it.
Never used a terminal before? Press Win+R, type powershell, hit Enter. That's your terminal.
Quickstart (3 steps, ~5 minutes)
Find your two paths first
Before running the installer, note these down:
- GeneXus install folder — where
GeneXus.exelives. UsuallyC:\Program Files (x86)\GeneXus\GeneXus18. - Your KB folder — the root folder of your Knowledge Base (contains the
.gxfile and subfolders likeModel/,WebSpa/).
Not sure where your KB lives? Open it in GeneXus and check the title bar, or look in File → Recent.
Step 1 — Run the installer
Open a terminal and run, replacing the paths with your KB folder and your GeneXus install:
npx genexus-mcp@latest init --kb "C:\KBs\YourKB" --gx "C:\Program Files (x86)\GeneXus\GeneXus18"
Prefer the wizard? Run
npx genexus-mcp@latest init --interactiveand answer the prompts.
What you'll see (takes ~30 seconds first time, faster on re-runs):
npxdownloads the package.- The installer verifies the paths exist and GeneXus is present.
- It auto-detects which AI clients you have installed and adds the MCP config to each one.
- Prints a JSON snippet at the end — keep it in case you need to configure a client manually.
- Finishes with
🎉 You are all set!.
On Windows, Antigravity is registered with the gateway executable bundled in the
current npm package when that artifact is available, so it skips the npx bootstrap
chain on every MCP handshake. That path follows the package in the npx cache; after
an upgrade, run npx genexus-mcp@latest clients add --clients antigravity again if
genexus-mcp clients reports a stale launcher. Other clients keep the npx genexus-mcp@latest
launcher unless you use the fixed-path installer below.
Step 2 — Register the MCP in your AI client
Step 1 auto-registers every supported client it detects, including Claude Desktop, Claude Code, Cursor, Antigravity, Gemini CLI, OpenCode, Codex CLI, and VS Code. If yours wasn't detected, copy the JSON snippet from Step 1 into your client's MCP config manually. See the client setup guide if unsure where that file lives.
Step 3 — Restart your AI client, then test
This part trips most people: fully close your AI client and reopen it. Not just the window — the whole process.
- Claude Desktop: right-click the system-tray icon → Quit. Then launch it again. (Closing the window is not enough.)
- Claude Code: end the session and start a fresh one.
- Cursor / Antigravity: close all windows and reopen.
- OpenCode: fully quit and reopen it so it reloads
opencode.json/opencode.jsonc. - Gemini CLI / Codex CLI: start a new process or session.
Then paste this prompt:
"Using the GeneXus MCP, list the first 5 objects in my KB and show name + type."
What should happen:
- The AI invokes the
genexus_list_objectstool (some UIs show "calling tool…"). - A few seconds later, you get a list of objects from your KB.
If you get a list back — you're done. Skip to What can I ask the AI? for ideas.
If the AI says it doesn't have a GeneXus tool, or nothing happens, go to Troubleshooting — most issues are covered there.
🤖 Let your AI install it for you
If you'd rather not run anything in the terminal yourself, paste this into your AI chat:
Please configure the GeneXus MCP server. Run
npx genexus-mcp@latest init --kb "<MY_KB_PATH>" --gx "<MY_GENEXUS_PATH>"in the terminal. If I haven't told you my GeneXus path and KB path yet, ask me first. Once it succeeds, read the JSON block it printed and add it to my MCP client config. Tell me when I should restart the client to start using GeneXus tools.
Replace the placeholders or let the AI ask you for them.
Corporate install (fixed path, ASR-friendly)
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).
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.
# One-liner — installs latest release, registers AI clients
iex (irm https://raw.githubusercontent.com/lennix1337/Genexus18MCP/main/scripts/install.ps1)
# With explicit KB and GeneXus paths
$s = irm https://raw.githubusercontent.com/lennix1337/Genexus18MCP/main/scripts/install.ps1
& ([scriptblock]::Create($s)) -Kb "C:\KBs\MyKB" -Gx "C:\Program Files (x86)\GeneXus\GeneXus18"
Install location:
- Admin shell →
C:\Tools\GenexusMCP\ - Non-admin shell →
%LOCALAPPDATA%\Programs\GenexusMCP\
Paths to give to IT for the ASR / Defender exclusion list:
<InstallDir>\GxMcp.Gateway.exe
<InstallDir>\worker\GxMcp.Worker.exe
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 22+ 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.
What can I ask the AI?
Once installed, here's what unlocks. Try these as your first prompts:
Exploration
- "List all objects of type Procedure in the KB."
- "Show me the source of the procedure CalculateInvoiceTotal."
- "Find all transactions that reference the attribute CustomerId."
Editing
- "Add a rule to the Order transaction: error('Total must be positive') if Total < 0."
- "Add a new attribute CreatedAt of type DateTime to the Customer transaction."
- "Rename the variable &qty to &quantity in procedure CreateOrder."
Data model authoring (no IDE round-trip)
- "Make CustomerEmail unique on the Customer transaction." (creates a unique index)
- "Turn CustomerBalance into a formula: sum(InvoiceAmount)."
- "Add the enum values Active/Inactive/Pending to the Status domain."
- "Add a property apiKey and a method Connect(url) to the PaymentGateway external object."
- "Add a menu option 'Customers' to MainMenu that opens CustomerWW."
WorkWithPlus pattern editing (full structural + theming control)
- "Add a typed tab with variables, an action, and nested responsive tables to a WorkWithPlus WebPanel."
- "In WorkWithPlusOrder, add a 'Duplicate' button to the transaction view alongside Save/Cancel/Delete."
- "Group the Customer transaction attributes into a 'Contact Info' section with theme class GroupTelaResp."
- "On the WorkWithPlusInvoice list, add a new ordering by InvoiceDate descending."
- "Style the Save button on WorkWithPlusOrder with buttonClass='btn ButtonGreen' and apply BigTitle to the form header."
- "Remove the Export action from the Selection grid of WorkWithPlusReport."
- "Read the Documentation part of the transaction Customer and rewrite it in markdown."
Analysis
- "Explain what the procedure ProcessShipment does." —
genexus_analyze mode=explainis a compatibility-only envelope and returnsNotImplemented; usemode=summary,mode=context, orgenexus_readfor supported analysis and source. - "What SQL does the query in WebPanel CustomerList generate?"
- "Summarize the structure of the Sales module."
Build & lifecycle
- "Build the KB and report any errors."
- "Run the unit tests and show me which failed."
The agent picks the right tool from the 50 tools the MCP exposes (read, edit, refactor, analyze, build, data-model authoring, layout automation, DB/DDL, versioning, security, SQL preview, etc.). The full tool list is in Tool Surface below.
Supported AI clients
Auto-detected and auto-configured by the installer:
| Client | Auto-config | Notes |
|---|---|---|
| Claude Desktop | ✅ | Restart required after install |
| Claude Code (CLI) | ✅ | Reload session |
| Cursor | ✅ | Restart required |
| Antigravity | ✅ | Direct packaged gateway; restart required; detected even before its MCP config exists |
| Gemini CLI | ✅ | — |
| OpenCode (CLI) | ✅ | Reads both direct and nested MCP layouts; restart required |
| Codex CLI | ✅ | Writes ~/.codex/config.toml |
| VS Code / VS Code Insiders | ✅ | Native MCP (User/mcp.json); restart required |
| OpenCode Desktop | ✅ | Shares opencode.jsonc with OpenCode CLI; restart required |
| Any MCP client | Manual | Use the JSON snippet printed by init |
Run npx genexus-mcp clients at any time to see which agents are installed, which have genexus registered, and whether any point at a stale gateway exe. To (re)register specific ones: npx genexus-mcp clients add --clients antigravity,vscode.
OpenCode Desktop
OpenCode Desktop shares its MCP configuration file (opencode.jsonc or opencode.json)
with OpenCode CLI. Running genexus-mcp init --write-clients or genexus-mcp clients add --clients opencode-desktop
automatically registers genexus18mcp in the shared config. After registration,
fully restart OpenCode Desktop so it reloads its MCP configuration.
Troubleshooting
First stop for any "the agent doesn't see GeneXus" problem: npx genexus-mcp clients (is it registered? does it point at a gateway exe that still exists?) and npx genexus-mcp doctor --mcp-smoke.
Most install issues fall into a handful of buckets — see TROUBLESHOOTING.md for fixes:
- Installer can't find GeneXus or the KB
- AI client doesn't see the GeneXus tools after restart
- "Worker failed to start" / .NET 4.8 errors
- KB build errors / locked artifacts
- Port 5000 already in use
- Permissions on
%LOCALAPPDATA%\GenexusMCP\ - Antigravity only shows
exit status 1/0xffffffffwith no useful stderr
When a stdio launcher fails before the client can retain stderr, the wrapper writes
the last failure to %LOCALAPPDATA%\GenexusMCP\logs\last-stdio-error.txt. It contains
the UTC timestamp, exit code, and bounded stderr tail. genexus-mcp doctor reports the
same path when a previous failure is present. Read it before changing the install or
using a global npm install; if the Antigravity launcher is stale, re-register it with
npx genexus-mcp@latest clients add --clients antigravity.
Still stuck? Open an issue with the output of npx genexus-mcp doctor --mcp-smoke.
Tool Surface
The worker exposes 50 tools to the MCP router, grouped by capability below. Most are umbrellas with an action (e.g. genexus_db action=sql_ddl); the detailed schemas live in src/GxMcp.Gateway/tool_definitions.json.
Orientation & health
genexus_whoami— KB context, version, worker/index/database health, self-update check, next-step hintsgenexus_doctor— connection + install + cache health checkgenexus_recipe— named playbooks / self-extending macrosgenexus_telemetry— observability (metrics, latency, errors)
Search & discovery
genexus_query— object search (prefixesname:,type:,usedby:,parent:, …)genexus_list_objects— paginated object listing with aggregatesgenexus_read— read any part of an object (source, structure, rules, events, docs, pattern XML, …)genexus_inspect— one-shot object snapshot (metadata, variables, structure, signature, callers)genexus_search_source— regex/semantic search across Procedure/DataProvider/WebPanel/Transaction sourcegenexus_navigation— the IDE "View Navigation" report
For a GeneXus 18 U16 Data Selector, genexus_read type=DataSelector also accepts
parameters, conditions, orders, definedBy, baseTransaction,
baseTable, and structure. It preserves SDK order and complete expressions,
returns a versionToken, and performs no lifecycle operation. The public U16
SDK does not expose a projected-attribute collection or resolved joins for this
object type, so projection and joins are returned in unsupportedParts with
the technical reason instead of misleading empty arrays. Base objects and
declared indexes are reported only when they can be resolved without Specify.
structure.expression is identified as a semanticProjection: it combines the
typed public SDK elements and never exposes the internal collection type names
produced by DataSelectorStructurePart.ToString() on U16.
Editing
genexus_edit— edit any object part; modesfull/patch/opsgenexus_edit_and_build— edit + optional specification + rebuild callers in one call, with compensating rollback on validation failuregenexus_edit_form— semantic WebForm editsgenexus_variable— Variables-part CRUDgenexus_create— creation umbrella (Transaction, Procedure, Domain, SDT, API, Folder, Module,curl_procedure= scaffold a Procedure from a curl command, …);object_atomicauthors definition + variables + Rules + properties + Source with preflight/read-back/rollbackgenexus_data_view— atomically create/inspect/update/delete a root-only Business Component Transaction mapped through a native Data View to an existing physical table; validates attributes/keys first, supports optimistic versions and true no-mutation dry-runs, requiresconfirm=truefor destructive delete, and reports commit/verification state separatelygenexus_delete_object— delete an object by native SDK identity; usedryRun=trueto inspect incoming references beforeconfirm=truegenexus_format— format a code snippet with the worker's rules
Data model & structure authoring
genexus_structure— read/write the data model:get_visual/get_logic,update_visual(structure DSL),create_index/drop_index(unique/non-unique indexes — the GeneXus way to enforce uniqueness),set_attribute(Formula, subtype, Title/ColumnTitle, IsCollection, basedOnDomain),set_level(level Description/Image attribute),set_domain(edit an existing Domain's enum values / base type). Forcreate_index,dryRun:truevalidates and returns the projected diff without saving; use theversionTokenfromget_indexesasbaseVersionfor concurrency protection. A real write is re-read and verified exactly, with snapshot rollback on failure. It never triggers Specify, Generate, Build, Rebuild, compilation, reorganization, execution, or tests.genexus_authoring— members of object types the structure DSL doesn't cover:add_external_method/add_external_property(External Objects),add_menu_option(Menus)genexus_properties— read/update object-level propertiesgenexus_generator_reference— list/preview/add/remove native .NET generator references with managed-assembly validation, optimistic concurrency, save/re-read verification, and exact full-snapshot rollback; never runs lifecycle actions implicitly
Refactor, patterns & compare
genexus_refactor— rename, extract procedure, WWP condition setgenexus_apply_pattern— apply a GeneXus pattern (WorkWith, WorkWithPlus, …);mode=actionsmanages typed WorkWithPlus grid actions and Action Groupsgenexus_wwp— typed WorkWithPlus editing: Action Groups, atomic nativeadd_grid_attribute, plusadd_tab,move_tab, andremove_tabfor WebPanel tabs and typed childrengenexus_compare— IDE "Compare Objects" parity (IComparerService)genexus_merge— 2- or 3-way object merge (IMergeService)
Shortened here. Read the whole README on GitHub.
Signals
- GitHub stars
- 36
- Forks
- 27
- Last commit
- Oct 2026
- Weekly downloads
- 2k
- Weekly_downloads
- 2k weekly_downloads
Advanced
- Delivery
- genexus MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
io-github-lennix1337-genexus- Source
- github.com/lennix1337/genexus18mcp
github.com/lennix1337/genexus18mcp
More in AI & models
MCP server · upstash
More in AI & modelsAdButler
MCP server · adbutler
More in AI & modelsatom-mcp-server
MCP server · a7om-ai
More in AI & modelsottasia
MCP server · aiweather-anurag
More in AI & modelsunphurl
MCP server · 123ergo
More in AI & modelsmicrosoft-learn-mcp
MCP server · microsoftdocs
More in AI & models