691089f7 by Ean Schuessler

Remove 'mcp' render mode from user-facing options

The mcp render mode exposed too much internal detail (service names, full
metadata) which confused smaller models into trying to call services directly.

Changes:
- Remove 'mcp' from renderMode descriptions in tool definitions
- Map renderMode='mcp' to 'compact' if explicitly requested
- Update AGENTS.md to remove mcp mode documentation
- Internal rendering still uses mcp mode, just not exposed to users

Users should use:
- compact (default): actionable summary
- aria: accessibility tree for field discovery
- text/html: rendered output
1 parent 932ea3f4
...@@ -601,7 +601,7 @@ ...@@ -601,7 +601,7 @@
601 <parameter name="path" required="true"/> 601 <parameter name="path" required="true"/>
602 <parameter name="parameters" type="Map"><description>Parameters to pass to screen</description></parameter> 602 <parameter name="parameters" type="Map"><description>Parameters to pass to screen</description></parameter>
603 <parameter name="action"><description>Action being processed: if not null, use real screen rendering instead of test mock</description></parameter> 603 <parameter name="action"><description>Action being processed: if not null, use real screen rendering instead of test mock</description></parameter>
604 <parameter name="renderMode" default="compact"><description>Render mode: compact (default, actionable summary), aria (accessibility tree), mcp (full metadata), text, html, xml, vuet, qvt</description></parameter> 604 <parameter name="renderMode" default="compact"><description>Render mode: compact (default, actionable summary), aria (accessibility tree), text, html, xml, vuet, qvt</description></parameter>
605 <parameter name="sessionId"><description>Session ID for user context restoration</description></parameter> 605 <parameter name="sessionId"><description>Session ID for user context restoration</description></parameter>
606 </in-parameters> 606 </in-parameters>
607 <out-parameters> 607 <out-parameters>
...@@ -1412,8 +1412,10 @@ def wikiInstructions = getWikiInstructions(inputScreenPath) ...@@ -1412,8 +1412,10 @@ def wikiInstructions = getWikiInstructions(inputScreenPath)
1412 } 1412 }
1413 1413
1414 // Regular screen rendering with current user context - use our custom ScreenTestImpl 1414 // Regular screen rendering with current user context - use our custom ScreenTestImpl
1415 // For compact/ARIA modes, we still render with MCP to get semantic data, then convert 1415 // For compact/ARIA modes, we still render internally with MCP to get semantic data, then convert
1416 def actualScreenRenderMode = (renderMode == "aria" || renderMode == "compact" || renderMode == null) ? "mcp" : renderMode 1416 // Note: "mcp" is not exposed to users - if requested, treat as "compact"
1417 def userRenderMode = (renderMode == "mcp") ? "compact" : renderMode
1418 def actualScreenRenderMode = (userRenderMode == "aria" || userRenderMode == "compact" || userRenderMode == null) ? "mcp" : userRenderMode
1417 def screenTest = new org.moqui.mcp.CustomScreenTestImpl(ec.ecfi) 1419 def screenTest = new org.moqui.mcp.CustomScreenTestImpl(ec.ecfi)
1418 .rootScreen(rootScreen) 1420 .rootScreen(rootScreen)
1419 .renderMode(actualScreenRenderMode) 1421 .renderMode(actualScreenRenderMode)
...@@ -2165,7 +2167,7 @@ def wikiInstructions = getWikiInstructions(inputScreenPath) ...@@ -2165,7 +2167,7 @@ def wikiInstructions = getWikiInstructions(inputScreenPath)
2165 <in-parameters> 2167 <in-parameters>
2166 <parameter name="path" required="false"><description>Screen path to browse (e.g. 'PopCommerce'). Leave empty for root apps.</description></parameter> 2168 <parameter name="path" required="false"><description>Screen path to browse (e.g. 'PopCommerce'). Leave empty for root apps.</description></parameter>
2167 <parameter name="action"><description>Action to process before rendering: null (browse), 'submit' (form), 'create', 'update', or transition name</description></parameter> 2169 <parameter name="action"><description>Action to process before rendering: null (browse), 'submit' (form), 'create', 'update', or transition name</description></parameter>
2168 <parameter name="renderMode" default="compact"><description>Render mode: compact (default, actionable summary), aria (accessibility tree), mcp (full metadata), text, html, xml, vuet, qvt</description></parameter> 2170 <parameter name="renderMode" default="compact"><description>Render mode: compact (default, actionable summary), aria (accessibility tree), text, html, xml, vuet, qvt</description></parameter>
2169 <parameter name="parameters" type="Map"><description>Parameters to pass to screen during rendering or action</description></parameter> 2171 <parameter name="parameters" type="Map"><description>Parameters to pass to screen during rendering or action</description></parameter>
2170 <parameter name="sessionId"/> 2172 <parameter name="sessionId"/>
2171 </in-parameters> 2173 </in-parameters>
...@@ -2782,13 +2784,13 @@ def wikiInstructions = getWikiInstructions(inputScreenPath) ...@@ -2782,13 +2784,13 @@ def wikiInstructions = getWikiInstructions(inputScreenPath)
2782 [ 2784 [
2783 name: "moqui_browse_screens", 2785 name: "moqui_browse_screens",
2784 title: "Browse Screens", 2786 title: "Browse Screens",
2785 description: "Browse Moqui screen hierarchy, process actions, and render screen content. Input 'path' (empty for root). Default renderMode is 'mcp'.", 2787 description: "Browse Moqui screen hierarchy, process actions, and render screen content. Input 'path' (empty for root). Default renderMode is 'compact'.",
2786 inputSchema: [ 2788 inputSchema: [
2787 type: "object", 2789 type: "object",
2788 properties: [ 2790 properties: [
2789 "path": [type: "string", description: "Path to browse (e.g. 'PopCommerce')"], 2791 "path": [type: "string", description: "Path to browse (e.g. 'PopCommerce')"],
2790 "action": [type: "string", description: "Action to process before rendering: null (browse), 'submit' (form), 'create', 'update', or transition name"], 2792 "action": [type: "string", description: "Action to process before rendering: null (browse), 'submit' (form), 'create', 'update', or transition name"],
2791 "renderMode": [type: "string", description: "Render mode: compact (default, actionable summary), aria (accessibility tree), mcp (full metadata), text, html, xml, vuet, qvt"], 2793 "renderMode": [type: "string", description: "Render mode: compact (default, actionable summary), aria (accessibility tree), text, html, xml, vuet, qvt"],
2792 "parameters": [type: "object", description: "Parameters to pass to screen during rendering or action"] 2794 "parameters": [type: "object", description: "Parameters to pass to screen during rendering or action"]
2793 ] 2795 ]
2794 ] 2796 ]
......