-
Notifications
You must be signed in to change notification settings - Fork 16
mcp_manage_app
PhuocLe edited this page Jun 20, 2026
·
3 revisions
| 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 |
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.
| 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. |
{
"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": []
}| 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. |
- Model-driven app management.
- NAME RESOLUTION: app, icon_webresource, solution_name, and add_item entity values resolve Display Name contains first, then unique/logical/schema contains.
{
"action": "string"
}Returns CallToolResult from the MCP server. The response content and structured fields follow the tool implementation and model returned by ManageAppTool.manage_app.
- "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."