Skip to main content
Glama
Kenny-666

Dynamics 365 MCP Server

by Kenny-666

update_model_column_settings

Destructive

Updates existing unmanaged Dataverse custom column settings, including length, range, precision, requirement level, auditing, search, defaults, date format, with preview and hash-verified execution.

Instructions

Default preview of existing ordinary unmanaged custom column settings; nine supported base types. Allows length/range/precision expansion, requirement level, auditing/search managed values, Boolean/existing Picklist defaults and DateTime display format. Preserves full definition, labels, choices and date behavior. Rejects narrowing, primary/derived/calculated/rollup/autonumber columns and type/schema changes. Execute with preview planHash as expected_hash plus allow_unprotected_write=true; full native PUT then readback, no automatic publication.

Input Schema

NameRequiredDescriptionDefault
patchNo
dryRunNoDefault true performs reads/eligibility checks and returns a native request preview. Set false to execute.
dry_runNoDefault true performs reads/eligibility checks and returns a native request preview. Set false to execute.
logicalNameNo
expectedHashNoCurrent preview planHash (binds target, patch and environment), required for execution.
logical_nameNo
attributeNameNo
expected_hashNoCurrent preview planHash (binds target, patch and environment), required for execution.
attribute_nameNo
solutionUniqueNameNoExisting unmanaged solution; its publisher prefix is validated for new schemas.
solution_unique_nameNoExisting unmanaged solution; its publisher prefix is validated for new schemas.
allowUnprotectedWriteNoExplicitly permit the native PUT/Action without atomic concurrency protection. A preview fingerprint is still required.
allow_unprotected_writeNoExplicitly permit the native PUT/Action without atomic concurrency protection. A preview fingerprint is still required.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.3/5.0
Behavior4/5

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

The annotations already flag destructive=true and non-idempotent behavior, and the description adds substantial context: execution is gated by a preview hash, requires allow_unprotected_write, performs a native PUT then readback, and does not publish automatically. It stops short of detailing permissions or failure modes, so it is strong but not exhaustive.

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?

The description is dense but mostly ordered: preview/scope, allowed changes, preservation/rejections, then execution protocol. The opening phrase is compressed and less direct than an explicit 'updates...' statement, creating a minor readability cost.

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 complex 13-parameter mutation with a nested patch and no output schema, it covers eligibility, allowed changes, execution gating, readback, and publication behavior. It could be stronger by describing the preview response shape, but the core decision information is present.

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

Parameters4/5

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

With 62% schema description coverage, the description compensates well by summarizing patch semantics: expansion of length/range/precision, requirement level, audit/search flags, defaults, and DateTime format. It also explains expected_hash and allow_unprotected_write, but leaves the alias pairs and naming parameters to the schema.

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 names a specific operation on existing ordinary unmanaged custom column settings and scopes it to nine base types while excluding special column categories. The qualifiers 'existing' and 'ordinary unmanaged' help distinguish it from create_model_column and broader schema-change 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 clearly states that the default is preview and that execution requires the preview planHash as expected_hash plus allow_unprotected_write=true. It also lists rejected categories such as primary, derived, calculated, rollup, autonumber, and type/schema changes, though it does not name an alternative tool for unsupported cases.

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