Skip to main content
Glama
Dynamics 365 MCP Server

Dynamics 365 MCP Server

by Kenny-666

publish_isolated_release_component

Destructive

Preview or publish a reviewed JavaScript web resource or entire shared global choice in an isolated organization; publication is not atomic.

Instructions

Preview or publish a reviewed JavaScript web resource or entire shared global choice in an isolated organization. Publication is not atomic.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "source_profile": "<source_profile>",
      "target_profile": "<target_profile>",
      "isolated_profile": "<isolated_profile>",
      "solution_unique_name": "<solution_unique_name>",
      "kind": "<kind>",
      "component_id": "<component_id>",
      "name": "<name>",
      "definition_hash": "<definition_hash>",
      "current_members": "<current_members>"
    },
    "name": "publish_isolated_release_component"
  }
}

Input Schema

NameRequiredDescriptionDefault
kindYes
nameYes
dry_runNo
component_idYes
expected_hashNo
source_profileYes
target_profileYes
current_membersYes
definition_hashYes
isolated_profileYes
acknowledge_scopeNo
environment_profileNoOptional named environment profile for this call; omit to use the configured default.
solution_unique_nameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.3.0

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, idempotentHint=false and readOnlyHint=false, so the danger profile is known. The description adds one genuinely useful behavioral fact beyond that — 'Publication is not atomic' — which tells the agent a partial failure can leave state inconsistent. It says nothing about what a dry_run returns, what acknowledge_scope or expected_hash guards do, or what happens on hash mismatch.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the action, no filler. The second sentence is a well-placed caveat. It is arguably undersized for a 13-parameter destructive tool, but every sentence present earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 13-parameter, 9-required, destructive, non-idempotent publish operation with no output schema and near-zero schema documentation, two sentences cannot be enough. The agent is left to guess the meaning of hash verification, scope acknowledgement, and the isolated/source/target profile triad before making an irreversible call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 8% (just environment_profile), and the description compensates almost nothing. 'Preview or publish' weakly maps to dry_run, and 'entire shared global choice' hints at the current_members maxItems=241 scope, but 11 other parameters — definition_hash, expected_hash, acknowledge_scope, the three profiles, solution_unique_name, component_id, kind — carry no usage meaning anywhere in the text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb pair ('Preview or publish') and specific resources ('JavaScript web resource or entire shared global choice'), so an agent knows the operation and object class. It does not distinguish itself from the many adjacent publish siblings (publish_isolated_release_table, publish_web_resource, publish_model_choices), so the reader must infer scope from the word 'isolated'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The word 'reviewed' hints at a prerequisite (a component gone through the prepare/stage siblings), but nothing states when to use preview versus publish, when dry_run should be set, or when to prefer preview_isolated_form_release or apply_isolated_form_release. No exclusions or alternative routing are given despite a large sibling family.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools