Skip to main content
Glama
Kenny-666

Dynamics 365 MCP Server

by Kenny-666

create_web_resource_and_publish

Destructive

Create a Dynamics 365 web resource without overwriting saved names; preview changes with dry run, save without publishing, or publish with scoped PublishXml.

Instructions

Create a Web Resource without overwriting an existing saved name. Defaults to scoped PublishXml after saving. publish=false saves only; dry_run=true previews without writing. A publication error preserves saved=true and the created ID; recover with publish_web_resource.

Input Schema

NameRequiredDescriptionDefault
nameYes
dryRunNoCompatibility alias for dry_run; conflicting aliases are rejected.
contentNoInline content, UTF-8 by default. Supply exactly one of content or file_path; empty content is allowed.
dry_runNoRead-only preview showing the environment, target, metadata changes and content hashes. Does not save or publish.
publishNoDefault true preserves the old save-and-publish behavior. Set false to save without publishing.
filePathNoCompatibility alias for file_path; conflicting aliases are rejected.
file_pathNoAbsolute source-file path on the MCP server machine; read as bytes and Base64 encoded. Supply exactly one of file_path or content. Maximum 10 MiB.
descriptionNoOptional description; an empty string clears it.
displayNameNoCompatibility alias for display_name; conflicting aliases are rejected.
display_nameNo
contentEncodingNoCompatibility alias for content_encoding; conflicting aliases are rejected.
webResourceTypeNoCompatibility alias for web_resource_type; conflicting aliases are rejected.
content_encodingNoInline content encoding, default utf8. Base64 must be canonical. Not used with file_path.
web_resource_typeNo1 HTML, 2 CSS, 3 JS, 4 XML, 5 PNG, 6 JPG, 7 GIF, 8 XAP, 9 XSL, 10 ICO, 11 SVG, 12 RESX; platform/version support is validated on save.
solutionUniqueNameNoCompatibility alias for solution_unique_name; conflicting aliases are rejected.
solution_unique_nameNoOptional unmanaged solution unique name, sent in MSCRM.SolutionUniqueName when creating.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare a non-read-only, non-idempotent, destructive operation, while the description adds valuable behavior: no overwrite of an existing saved name, default publish after save, dry-run preview without writes, and preservation of saved=true and the created ID when publishing fails. It omits authorization requirements but adds substantial context beyond the structured annotations.

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

Conciseness5/5

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

Four tight sentences front-load the purpose, then cover defaults, preview behavior, and error recovery. Every sentence adds useful information without repetition.

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

Completeness4/5

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

For a 16-parameter create-and-publish tool with no output schema, the description covers critical state transitions and recovery behavior well. It does not describe the normal success response in detail, but that is a minor gap given the rich schema and annotations.

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

Parameters3/5

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

Schema description coverage is high at 88%, so the schema already documents aliases, enums, file/content constraints, and type mappings. The description reinforces publish and dry_run behavior but does not add much parameter meaning beyond what the schema provides.

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

Purpose5/5

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

The description uses a specific verb and resource (create a Web Resource) and adds the key scope constraint that it will not overwrite an existing saved name. This clearly distinguishes it from sibling update and publish tools.

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

Usage Guidelines4/5

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

It explains the default publish behavior, how to save without publishing via publish=false, how to preview with dry_run=true, and how to recover from a publication error using publish_web_resource. It does not explicitly direct existing-resource updates to update_web_resource_and_publish, but the create-only scope is clear.

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