genexus-mcp 2.26.1 → 2.27.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 +98 -13
- 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/config.json +9 -9
- package/publish/tool_definitions.json +2 -1
- package/publish/worker/GxMcp.Worker.exe +0 -0
package/README.md
CHANGED
|
@@ -18,6 +18,27 @@ In practice: you point the MCP at your KB, then ask your AI assistant things lik
|
|
|
18
18
|
|
|
19
19
|
---
|
|
20
20
|
|
|
21
|
+
## What you can do with it
|
|
22
|
+
|
|
23
|
+
A quick map of what the agent can do against your real KB through the **44 tools** (details in [Tool Surface](#tool-surface)):
|
|
24
|
+
|
|
25
|
+
| Area | What the agent can do |
|
|
26
|
+
|---|---|
|
|
27
|
+
| 🔎 **Explore** | Search & list objects, read any part (source, rules, events, structure, docs, pattern XML), inspect metadata & callers, regex-search source, view the navigation report |
|
|
28
|
+
| ✏️ **Edit code** | Edit any object part (`full`/`patch`/`ops` modes), variables CRUD, format, create & delete objects, edit + rebuild callers in one shot |
|
|
29
|
+
| 🗄️ **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 |
|
|
30
|
+
| 🧩 **Author other objects** | External Object methods & properties, Menu options, REST API objects, WorkWithPlus / WorkWith patterns |
|
|
31
|
+
| 🎨 **UI & WorkWithPlus** | Full read/write of pattern XML (controls, actions, grids, orders, groups), theme classes & styling, native WebForm/layout edits, headless-browser verification |
|
|
32
|
+
| 🔬 **Analyze** | Impact/dependency analysis, complexity & code metrics, naming, explain-what-this-does, security audit, generated-SQL & DDL preview, schema-drift check |
|
|
33
|
+
| 🛠️ **Build & test** | Build (full or fast `compile_check`), validate, reorg, index, run native GXtest tests |
|
|
34
|
+
| 🔀 **Refactor & compare** | Rename across the KB, extract procedure, compare & merge objects (IDE parity) |
|
|
35
|
+
| 🌿 **Versioning & teams** | KB model versions/branches, GXserver (Team Development) sync, git-style history, multi-KB parallel work |
|
|
36
|
+
| 🔐 **Security** | GAM / integrated-security provisioning, KB security audit |
|
|
37
|
+
|
|
38
|
+
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.
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
21
42
|
## Prerequisites
|
|
22
43
|
|
|
23
44
|
Before you start, make sure you have:
|
|
@@ -145,6 +166,13 @@ Once installed, here's what unlocks. Try these as your first prompts:
|
|
|
145
166
|
- *"Add a new attribute CreatedAt of type DateTime to the Customer transaction."*
|
|
146
167
|
- *"Rename the variable &qty to &quantity in procedure CreateOrder."*
|
|
147
168
|
|
|
169
|
+
**Data model authoring** (no IDE round-trip)
|
|
170
|
+
- *"Make CustomerEmail unique on the Customer transaction."* (creates a unique index)
|
|
171
|
+
- *"Turn CustomerBalance into a formula: sum(InvoiceAmount)."*
|
|
172
|
+
- *"Add the enum values Active/Inactive/Pending to the Status domain."*
|
|
173
|
+
- *"Add a property apiKey and a method Connect(url) to the PaymentGateway external object."*
|
|
174
|
+
- *"Add a menu option 'Customers' to MainMenu that opens CustomerWW."*
|
|
175
|
+
|
|
148
176
|
**WorkWithPlus pattern editing** (full structural + theming control)
|
|
149
177
|
- *"In WorkWithPlusOrder, add a 'Duplicate' button to the transaction view alongside Save/Cancel/Delete."*
|
|
150
178
|
- *"Group the Customer transaction attributes into a 'Contact Info' section with theme class GroupTelaResp."*
|
|
@@ -162,7 +190,7 @@ Once installed, here's what unlocks. Try these as your first prompts:
|
|
|
162
190
|
- *"Build the KB and report any errors."*
|
|
163
191
|
- *"Run the unit tests and show me which failed."*
|
|
164
192
|
|
|
165
|
-
The agent picks the right tool from the **
|
|
193
|
+
The agent picks the right tool from the **40+ 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](#tool-surface) below.
|
|
166
194
|
|
|
167
195
|
---
|
|
168
196
|
|
|
@@ -206,22 +234,79 @@ Still stuck? [Open an issue](https://github.com/lennix1337/Genexus18MCP/issues)
|
|
|
206
234
|
|
|
207
235
|
## Tool Surface
|
|
208
236
|
|
|
209
|
-
The worker exposes
|
|
237
|
+
The worker exposes **44 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`](src/GxMcp.Gateway/tool_definitions.json).
|
|
238
|
+
|
|
239
|
+
**Orientation & health**
|
|
240
|
+
- `genexus_whoami` — KB context, version, worker/index/database health, self-update check, next-step hints
|
|
241
|
+
- `genexus_doctor` — connection + install + cache health check
|
|
242
|
+
- `genexus_recipe` — named playbooks / self-extending macros
|
|
243
|
+
- `genexus_telemetry` — observability (metrics, latency, errors)
|
|
244
|
+
|
|
245
|
+
**Search & discovery**
|
|
246
|
+
- `genexus_query` — object search (prefixes `name:`, `type:`, `usedby:`, `parent:`, …)
|
|
247
|
+
- `genexus_list_objects` — paginated object listing with aggregates
|
|
248
|
+
- `genexus_read` — read any part of an object (source, structure, rules, events, docs, pattern XML, …)
|
|
249
|
+
- `genexus_inspect` — one-shot object snapshot (metadata, variables, structure, signature, callers)
|
|
250
|
+
- `genexus_search_source` — regex/semantic search across Procedure/DataProvider/WebPanel/Transaction source
|
|
251
|
+
- `genexus_navigation` — the IDE "View Navigation" report
|
|
210
252
|
|
|
211
|
-
|
|
212
|
-
-
|
|
213
|
-
-
|
|
214
|
-
-
|
|
215
|
-
-
|
|
216
|
-
-
|
|
217
|
-
-
|
|
218
|
-
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
-
|
|
253
|
+
**Editing**
|
|
254
|
+
- `genexus_edit` — edit any object part; modes `full` / `patch` / `ops`
|
|
255
|
+
- `genexus_edit_and_build` — edit + rebuild callers in one call
|
|
256
|
+
- `genexus_edit_form` — semantic WebForm edits
|
|
257
|
+
- `genexus_variable` — Variables-part CRUD
|
|
258
|
+
- `genexus_create` — creation umbrella (Transaction, Procedure, Domain, SDT, API, Folder, Module, …)
|
|
259
|
+
- `genexus_delete_object` — delete an object
|
|
260
|
+
- `genexus_format` — format a code snippet with the worker's rules
|
|
261
|
+
|
|
262
|
+
**Data model & structure authoring**
|
|
263
|
+
- `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)
|
|
264
|
+
- `genexus_authoring` — members of object types the structure DSL doesn't cover: `add_external_method`/`add_external_property` (External Objects), `add_menu_option` (Menus)
|
|
265
|
+
- `genexus_properties` — read/update object-level properties
|
|
266
|
+
|
|
267
|
+
**Refactor, patterns & compare**
|
|
268
|
+
- `genexus_refactor` — rename, extract procedure, WWP condition set
|
|
269
|
+
- `genexus_apply_pattern` — apply a GeneXus pattern (WorkWith, WorkWithPlus, …)
|
|
270
|
+
- `genexus_compare` — IDE "Compare Objects" parity (`IComparerService`)
|
|
271
|
+
- `genexus_merge` — 2- or 3-way object merge (`IMergeService`)
|
|
272
|
+
|
|
273
|
+
**Analysis, docs & API**
|
|
274
|
+
- `genexus_analyze` — cross-object semantic analysis (impact, dependencies, complexity, naming, code_metrics, summary, explain, …)
|
|
275
|
+
- `genexus_doc` — generate wiki / sequence diagrams / health reports
|
|
276
|
+
- `genexus_api` — introspect REST endpoints exposed by HTTP procedures
|
|
277
|
+
- `genexus_security` — audit KB security
|
|
278
|
+
|
|
279
|
+
**Lifecycle, build, test & DB**
|
|
280
|
+
- `genexus_lifecycle` — build (incl. `compile_check`), validate, index, reorg, poll status
|
|
281
|
+
- `genexus_test` — run native GXtest tests
|
|
282
|
+
- `genexus_db` — DB umbrella: schema-drift, `sql_ddl`/`sql_navigation`, static index advisor, `sample_data`, Domain/SDT type introspection, translation import
|
|
283
|
+
- `genexus_run_object` / `genexus_browser` — resolve runtime URL and headless-browser verification
|
|
284
|
+
|
|
285
|
+
**Native layout / UI**
|
|
286
|
+
- `genexus_layout` — SDK layout/WebForm ops (`get_tree`, `find_controls`, `set_property`, `add_printblock`, `get_preview`, …)
|
|
287
|
+
|
|
288
|
+
**KB pool, versioning & team dev**
|
|
289
|
+
- `genexus_kb` — multi-KB pool (`list`/`open`/`close`/`set_default`)
|
|
290
|
+
- `genexus_module` — Module Manager (`IModuleManagerService`)
|
|
291
|
+
- `genexus_kb_version` — model version/branch management (Create/Activate/Revert)
|
|
292
|
+
- `genexus_versioning` — versioning umbrella (git-style history over the KB)
|
|
293
|
+
- `genexus_gxserver` — GXserver / Team Development sync
|
|
294
|
+
- `genexus_memory` — per-KB fact store for the agent
|
|
295
|
+
|
|
296
|
+
**Security provisioning, IO & meta**
|
|
297
|
+
- `genexus_gam` — GAM / integrated-security provisioning (`IIntegratedSecurityService`)
|
|
298
|
+
- `genexus_io` — assets, part-text exchange, screenshots, OCR
|
|
299
|
+
- `genexus_sdk_probe` — dump the live SDK surface (types/methods/props) for capability discovery
|
|
300
|
+
- `genexus_worker_reload` — hot-swap the worker without restarting the client
|
|
222
301
|
|
|
223
302
|
> **Multi-KB (v2.3.0+):** every non-meta tool takes an optional `kb` argument (alias or absolute path). The gateway can hold up to `Server.MaxOpenKbs` (default 3) KBs open at once, each in its own Worker process — calls to different KBs run truly in parallel. See [Advanced Configuration](#advanced-configuration) for the `KBs[]` schema.
|
|
224
303
|
|
|
304
|
+
### WorkWithPlus & theming (via `genexus_read` / `genexus_edit`)
|
|
305
|
+
|
|
306
|
+
- Full read/write of `PatternInstance` / `PatternVirtual` XML: containers (`<table>`, groups), controls (`<textBlock>`, `<attribute>`, `<gridAttribute>`, `<filterAttribute>`, `<errorViewer>`), actions (`<standardAction>`, `<userAction>`), grids, orders, rules, event blocks. Transaction and Selection views are addressable independently.
|
|
307
|
+
- `Documentation` (markdown) and `Help` (HTML) are first-class write targets.
|
|
308
|
+
- Apply real ThemeClass values (`themeClass`, `buttonClass`, `groupThemeClass`, …); discover them with `genexus_list_objects --typeFilter ThemeClass`.
|
|
309
|
+
|
|
225
310
|
**Edit modes** (`genexus_edit`): `full` (whole-part replacement, default), `patch` (Replace/Insert_After/Append over a context anchor — works on source code AND pattern XML), `ops` (typed semantic ops like `set_attribute`, `add_rule` for source-bearing parts).
|
|
226
311
|
|
|
227
312
|
**Pattern XML auto-reconcile**: WorkWithPlus encodes IDE rendering order in a per-parent `childrenOrderedList` attribute. The MCP now rebuilds (and **creates if missing**) every list from the actual XML child order on each write — callers only describe *where* an element goes in the tree and the MCP makes the IDE render it there. The response includes a `childrenOrderedListReconciliation` block listing each (re)written parent plus any structural elements that couldn't be inferred safely.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "genexus-mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.27.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": [
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"targets": {
|
|
8
8
|
".NETCoreApp,Version=v8.0": {},
|
|
9
9
|
".NETCoreApp,Version=v8.0/win-x64": {
|
|
10
|
-
"GxMcp.Gateway/2.
|
|
10
|
+
"GxMcp.Gateway/2.27.1": {
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"Newtonsoft.Json": "13.0.3",
|
|
13
13
|
"System.Management": "10.0.5",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
}
|
|
67
67
|
},
|
|
68
68
|
"libraries": {
|
|
69
|
-
"GxMcp.Gateway/2.
|
|
69
|
+
"GxMcp.Gateway/2.27.1": {
|
|
70
70
|
"type": "project",
|
|
71
71
|
"serviceable": false,
|
|
72
72
|
"sha512": ""
|
|
Binary file
|
|
Binary file
|
package/publish/config.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
"
|
|
2
|
+
"GeneXus": {
|
|
3
|
+
"InstallationPath": "C:\\\\Program Files (x86)\\\\GeneXus\\\\GeneXus18",
|
|
4
|
+
"WorkerExecutable": "C:\\Projetos\\Genexus18MCP\\publish\\\\worker\\\\GxMcp.Worker.exe"
|
|
5
5
|
},
|
|
6
6
|
"Environment": {
|
|
7
7
|
"KBPath": "C:\\\\KBs\\\\YourKB"
|
|
8
8
|
},
|
|
9
|
-
"GeneXus": {
|
|
10
|
-
"WorkerExecutable": "C:\\Projetos\\Genexus18MCP\\publish\\\\worker\\\\GxMcp.Worker.exe",
|
|
11
|
-
"InstallationPath": "C:\\\\Program Files (x86)\\\\GeneXus\\\\GeneXus18"
|
|
12
|
-
},
|
|
13
9
|
"Server": {
|
|
14
|
-
"
|
|
15
|
-
"
|
|
10
|
+
"HttpPort": 5000,
|
|
11
|
+
"McpStdio": true
|
|
12
|
+
},
|
|
13
|
+
"Logging": {
|
|
14
|
+
"Level": "Debug",
|
|
15
|
+
"Path": "logs"
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
{"name":"genexus_format","description":"Format a GeneXus code snippet using worker rules.","inputSchema":{"type":"object","properties":{"code":{"type":"string"},"kb":{"type":"string","description":"KB alias."}},"required":["code"],"examples":[{"code":"for each Customer where CustomerId = &Id\n &Name = CustomerName\nendfor"}]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},
|
|
18
18
|
{"name":"genexus_gam","description":"GAM / integrated-security provisioning via the SDK's IIntegratedSecurityService — distinct from genexus_security (env-scan/regex audit). action=status (default) is read-only: IsEnabledIntegratedSecurity + GAM-DB-reorganize flag. action=define_api / action=deploy are DESTRUCTIVE — they create/alter GAM security tables in the KB's datastore; no default reaches them, action must be set explicitly.","inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["status","define_api","deploy"],"description":"status (default, read-only) | define_api | deploy."},"force":{"type":"boolean","description":"define_api only: force flag passed to DefineAPI."},"forceTableCreation":{"type":"boolean","description":"deploy only: force GAM table creation."},"rebuild":{"type":"boolean","description":"deploy only: rebuild flag."},"kb":{"type":"string","description":"KB alias."}},"examples":[{"action":"status"},{"action":"deploy","forceTableCreation":true}]},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":false}},
|
|
19
19
|
{"name":"genexus_properties","description":"Read or update GeneXus object properties. Note: Description is the title-bar text shown when a WebPanel/Popup is opened via .Popup(). Uncertain a property exists or what values it takes? → resources/read uri=genexus://kb/skills/navigation (CallProtocol does NOT apply to Web/SD Panels and 'Modal' is not a value). Use genexus_layout set_property for layout control properties.","inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get","set"]},"name":{"type":"string"},"control":{"type":"string","description":"Optional. Layout control name (e.g. BtnConfirmar), variable name with & prefix (e.g. &Alu2RegProf), or attribute name."},"propertyName":{"type":"string"},"value":{"type":"string"},"kb":{"type":"string","description":"KB alias."}},"required":["action","name"],"examples":[{"action":"get","name":"MyPanel"},{"action":"set","name":"MyPanel","propertyName":"Description","value":"Customer Details"}]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},
|
|
20
|
-
{"name":"genexus_structure","description":"Read or
|
|
20
|
+
{"name":"genexus_structure","description":"Read or write the structure/data-model of GeneXus objects. Read: get_visual, get_logic, get_indexes (source=User indexes are droppable). Write: update_visual (structure DSL); create_index/drop_index (unique/non-unique indexes — the GeneXus way to enforce uniqueness, there is no Unique() rule); set_attribute (Formula, subtype, Title/ColumnTitle, IsCollection, basedOnDomain on a KB-global attribute); set_level (Transaction level DescriptionAttribute/ImageAttribute); set_domain (edit an existing Domain's enumValues/dataType). After index/type changes run genexus_lifecycle action=reorg. For layout control trees use genexus_layout.","inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get_visual","update_visual","get_indexes","create_index","drop_index","set_attribute","set_level","set_domain","get_logic"]},"name":{"type":"string","description":"Object name. For set_attribute it is the attribute name; for set_domain the domain name."},"payload":{"type":"object","description":"update_visual:{children:[...]}. create_index:{attributes:[\"Attr\"],unique?:true,name?,order?}. drop_index:{indexName}. set_attribute:{formula?,subtypeOf?,title?,columnTitle?,contextualTitle?,isCollection?,basedOnDomain?}. set_level:{level?,descriptionAttribute?,imageAttribute?}. set_domain:{enumValues:[{name,value,description?}],dataType?,length?,decimals?,signed?}."},"kb":{"type":"string","description":"KB alias."}},"required":["action","name"],"examples":[{"action":"get_indexes","name":"Customer"},{"action":"create_index","name":"Country","payload":{"attributes":["CountryName"],"unique":true}},{"action":"set_attribute","name":"CustomerBalance","payload":{"formula":"sum(InvoiceAmount)"}},{"action":"set_level","name":"Customer","payload":{"descriptionAttribute":"CustomerName"}}]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},
|
|
21
|
+
{"name":"genexus_authoring","description":"Author members of object types the structure DSL doesn't cover. add_external_method / add_external_property add a method (with parameters) or property to an External Object; add_menu_option adds an option to a Menu (target = a KB object to call); add_condition adds a filter expression to a Data Selector. name = the target object.","inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["add_external_method","add_external_property","add_menu_option","add_condition"]},"name":{"type":"string","description":"ExternalObject / Menu / DataSelector name."},"payload":{"type":"object","description":"add_external_method:{name,returnType?,parameters?:[{name,type?,inout?}]}. add_external_property:{name,type?}. add_menu_option:{description,target?,optionCode?}. add_condition:{source}."},"kb":{"type":"string","description":"KB alias."}},"required":["action","name"],"examples":[{"action":"add_external_property","name":"MyExternalObject","payload":{"name":"apiKey","type":"Character"}},{"action":"add_menu_option","name":"MainMenu","payload":{"description":"Customers","target":"CustomerWW"}},{"action":"add_condition","name":"ActiveCustomers","payload":{"source":"CustomerActive = True"}}]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},
|
|
21
22
|
{"name":"genexus_layout","description":"SDK layout/WebForm ops: get_tree, set_property, find_controls, inspect_surface, scan_mutators. For object-level properties use genexus_properties; for object-level visual structure use genexus_structure get_visual.","inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get_tree","set_property","find_controls","set_properties","inspect_surface","get_preview","scan_mutators","rename_printblock","add_printblock"]},"name":{"type":"string"},"control":{"type":"string"},"propertyName":{"type":"string"},"value":{"type":"string"},"query":{"type":"string"},"changes":{"type":"array","items":{"type":"object","properties":{"control":{"type":"string"},"propertyName":{"type":"string"},"value":{"type":"string"}},"required":["control","propertyName","value"]}},"limit":{"type":"integer"},"currentName":{"type":"string"},"newName":{"type":"string"},"printBlockName":{"type":"string"},"height":{"type":"integer"},"kb":{"type":"string","description":"KB alias."}},"required":["action"],"examples":[{"action":"get_tree","name":"WPMain"},{"action":"find_controls","name":"WPMain","query":"Button"}]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},
|
|
22
23
|
{"name":"genexus_doc","description":"Use to generate structured docs (wiki, sequence diagrams, health reports). Don't use for programmatic analysis (see genexus_analyze) or source (see genexus_read).","inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["wiki","visualize","health"]},"target":{"type":"string","description":"Object or domain name."}},"required":["action"],"examples":[{"action":"wiki","target":"Customer"},{"action":"health"}]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},
|
|
23
24
|
{"name":"genexus_search_source","description":"Regex/semantic search across Procedure/DataProvider/WebPanel/Transaction source. Requires the KB index to be Ready — check genexus_lifecycle action=status if results look empty.","inputSchema":{"type":"object","properties":{"callee":{"type":"string","description":"Method/function name (qualified or unqualified)."},"argMatches":{"type":"object","description":"Positional arg index to expected literal text."},"pattern":{"type":"string"},"typeFilter":{"type":"string"},"objectName":{"type":"string","description":"Restrict the scan to these exact object name(s), comma-separated. Makes a search inside one known object O(object) not O(KB), and bypasses the type whitelist."},"startIndex":{"type":"integer","description":"Resume cursor. On Timeout the response returns nextCursor; pass it here to continue where the scan stopped."},"timeoutMs":{"type":"integer","description":"Wall-clock budget (default 30000). Raise it to scan more objects per call."},"scope":{"type":"array","items":{"type":"string","enum":["source","rules","conditions","events","webForm","layout"]},"description":"Parts to scan with line-numbered context. Default [source]. webForm/layout scans the WebPanel/Transaction visual XML (control names, captions, classes, bindings)."},"fields":{"type":"array","items":{"type":"string","enum":["source","caption","description","parmNames","webForm"]},"description":"Whole-field metadata match (returns matchedValue, no line context). Default [source]. Prefer scope=[webForm] for line-context WebForm hits; use fields=[webForm] only for a coarse contains-match."},"maxResults":{"type":"integer"},"caseSensitive":{"type":"boolean"},"includeComments":{"type":"boolean"},"inline_read_top":{"type":"integer","description":"0-3. Inline reads of top N distinct objects in response."},"kb":{"type":"string","description":"KB alias."}},"examples":[{"pattern":"ControlType=\"Radio\""},{"pattern":"for each","typeFilter":"Procedure","maxResults":20}]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},
|
|
Binary file
|