Skip to main content
Glama
Kenny-666

Dynamics 365 MCP Server

by Kenny-666

get_record_audit_history

Read-only

Retrieves one native RetrieveRecordChangeHistory page for a Dynamics 365 record, preserving paging and audit-setting evidence while withholding attribute values by default.

Instructions

Read one native RetrieveRecordChangeHistory page. Default withholds attribute values. Preserves MoreRecords/cookie and current audit-setting evidence; no actor/time/ID is invented if native AuditRecord is absent. Empty history does not prove logs were deleted or auditing was disabled.

Input Schema

NameRequiredDescriptionDefault
pageSizeNoCompatibility alias for page_size; conflicting values are rejected.
recordIdNoCompatibility alias for record_id; conflicting values are rejected.
page_sizeNoNative audit detail count, default 20.
record_idNo
pageNumberNoCompatibility alias for page_number; conflicting values are rejected.
page_numberNoDefault 1; later pages require the previous native paging_cookie.
maxTextCharsNoCompatibility alias for max_text_chars; conflicting values are rejected.
pagingCookieNoCompatibility alias for paging_cookie; conflicting values are rejected.
includeValuesNoCompatibility alias for include_values; conflicting values are rejected.
paging_cookieNoNative cookie from this same target/page size; maximum 16 KiB UTF-8. No cookie is invented.
collectionNameNoCompatibility alias for collection_name; conflicting values are rejected.
include_valuesNoDefault false. Native audit values are received but withheld from output. Explicit true projects bounded attribute old/new values with heuristic sensitive-field masking.
max_text_charsNoPer-text preview limit, default 2000; truncation is explicit.
collection_nameNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.9/5.0
Behavior5/5

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

Goes well beyond the readOnly/destructive annotations: it discloses that attribute values are withheld by default, that MoreRecords and the paging cookie are preserved, that no actor/time/ID is fabricated when the native AuditRecord is missing, and that empty history is not evidence of deleted logs. These are real interpretation caveats an agent cannot get from structured fields.

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?

Four tight sentences with the operation front-loaded and no filler. It is dense with domain jargon ('native RetrieveRecordChangeHistory', 'AuditRecord') that costs some readability, but every clause carries information.

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?

With 14 parameters, no output schema, and annotations covering only safety, the description does the necessary work: it explains paging continuity via cookie, the value-withholding default, and how to interpret absent or empty results. It stops short of describing the returned audit record shape (which fields appear when AuditRecord exists), a minor residual gap.

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 coverage is 86%, so the schema already documents include_values, page_size, page_number, paging_cookie and the alias fields. The description reinforces the value-withholding default and cookie preservation but adds no syntax, format, or conflict-resolution detail beyond what the schema states. Baseline 3 applies.

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 and resource: 'Read one native RetrieveRecordChangeHistory page,' which pins down both the operation and its single-page scope. An agent can distinguish this from the sibling get_audit_details, though the description never names that alternative explicitly, leaving the differentiation implicit rather than stated.

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

Usage Guidelines3/5

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

'Default withholds attribute values' implies the agent must opt in via include_values when values are needed, and 'one page' implies iterative paging. But there is no explicit statement of when to prefer this over get_audit_details or other audit siblings, and no prerequisites are given.

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