Skip to content

mcp_manage_app

PhuocLe edited this page Jun 20, 2026 · 3 revisions

Summary

Field Value
Tool name manage_app
MCP title Manage model-driven apps
Category advanced
Implementation DynamicsCrm.DevKit.Cli/Mcp/Tools/ManageAppTool.cs
Estimated token count ~527 tokens (tools/list tool JSON, o200k_base, measured 2026-06-18)
Last verified 2026-06-18

MCP Tool Description (Exact)

Model-driven app management. Actions: list, detail, create, update, update_navigation, validate, undo.
Supports safe app creation/update, app-scoped sitemap navigation operations, validation, and undo from manage_app snapshots.

RULES:
- Use this tool for model-driven app metadata and navigation tasks.
- Never use execute_webapi to create or update appmodule, sitemap, or appmodulecomponent records.
- update_navigation publishes the app so immediate readback sees the updated navigation. Other mutating actions return a next step to publish separately.

NAVIGATION IDEMPOTENCY: use action='detail' for readback/confirmation. update_navigation mutates. add_area/add_group/add_item are partially idempotent and report no-op operations; if all operations are no-op, the tool skips sitemap update and publish.

NAME RESOLUTION: app, icon_webresource, solution_name, and add_item entity values resolve Display Name contains first, then unique/logical/schema contains.

See docs://instructions_for_manage_app for the operation workflow and examples.

Parameters

Name Type Required Default Description
action string No "detail" 'list', 'detail', 'create', 'update', 'update_navigation', 'validate', or 'undo'.
app string No "" App display name, unique name, or GUID. Required for detail/update/update_navigation/validate/undo.
app_name string No "" list only. App display/unique name contains filter.
solution_name string No "" Required for create. Used to resolve the solution publisher prefix.
display_name string No "" Required for create. Optional for update.
unique_name string No "" Optional for create. If empty, derived from display_name and solution publisher prefix.
description string No "" Optional for create/update.
icon_webresource string No "" Optional app icon web resource name or GUID.
operations string No "" JSON array for update_navigation, or backup file path for undo.
backup boolean No true Backup current app snapshot before update/update_navigation/undo when implemented.
max_records integer No 100 list only. 1-500.

Input Schema

{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "description": "'list', 'detail', 'create', 'update', 'update_navigation', 'validate', or 'undo'.",
      "default": "detail"
    },
    "app": {
      "type": "string",
      "description": "App display name, unique name, or GUID. Required for detail/update/update_navigation/validate/undo.",
      "default": ""
    },
    "app_name": {
      "type": "string",
      "description": "list only. App display/unique name contains filter.",
      "default": ""
    },
    "solution_name": {
      "type": "string",
      "description": "Required for create. Used to resolve the solution publisher prefix.",
      "default": ""
    },
    "display_name": {
      "type": "string",
      "description": "Required for create. Optional for update.",
      "default": ""
    },
    "unique_name": {
      "type": "string",
      "description": "Optional for create. If empty, derived from display_name and solution publisher prefix.",
      "default": ""
    },
    "description": {
      "type": "string",
      "description": "Optional for create/update.",
      "default": ""
    },
    "icon_webresource": {
      "type": "string",
      "description": "Optional app icon web resource name or GUID.",
      "default": ""
    },
    "operations": {
      "type": "string",
      "description": "JSON array for update_navigation, or backup file path for undo.",
      "default": ""
    },
    "backup": {
      "type": "boolean",
      "description": "Backup current app snapshot before update/update_navigation/undo when implemented.",
      "default": true
    },
    "max_records": {
      "type": "integer",
      "description": "list only. 1-500.",
      "default": 100
    }
  },
  "required": []
}

Related MCP Resources

Resource URI / URI template MIME type Reason
instructions_for_manage_app docs://instructions_for_manage_app text/markdown Mentioned in MCP metadata: Rules and examples for managing model-driven apps and app navigation through manage_app. Read this before creating or modifying model-driven apps, sitemaps, or app navigation.
sitemapxml_schema schema://sitemapxml text/markdown Inferred from source: Returns XML schemas and instructions for Dataverse sitemap (app navigation). Includes SiteMap.xsd, SiteMapType.xsd, and generation rules with examples.

When To Use

  • Model-driven app management.

Notes

  • NAME RESOLUTION: app, icon_webresource, solution_name, and add_item entity values resolve Display Name contains first, then unique/logical/schema contains.

Example

{
  "action": "string"
}

Output

Returns CallToolResult from the MCP server. The response content and structured fields follow the tool implementation and model returned by ManageAppTool.manage_app.

Prompt Examples

  • "Show details for this model-driven app, including navigation and components."
  • "Add this table to the app navigation under the Service area and publish the sitemap update."
  • "Validate this app after navigation changes and report any missing components."

Clone this wiki locally