Skip to main content
Glama
Dynamics 365 MCP Server

Dynamics 365 MCP Server

by Kenny-666

rollback_record_journal

Destructive

Preview or restore a verified record-update journal entry only if the current record matches its expected hash; changed records are rejected.

Instructions

Preview or conditionally restore a verified record-update journal entry; rejects changed records.

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": {
      "journal_id": "<journal_id>"
    },
    "name": "rollback_record_journal"
  }
}

Input Schema

NameRequiredDescriptionDefault
dry_runNo
journal_idYes
expected_hashNo
environment_profileNoOptional named environment profile for this call; omit to use the configured default.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.1.2

TDQS

A3.5/5.0
Behavior3/5

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

The annotations already declare destructiveHint=true and idempotentHint=false, and the description adds real context beyond them: a non-mutating dry_run preview mode and a hash-based guard that aborts when the underlying record has changed. What is missing is what exactly gets overwritten on restore, whether a restore can itself be undone, and any permission requirements — significant omissions for a tool flagged destructive.

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?

One compact sentence with the mode choice front-loaded and the safety condition trailing it; every clause carries information and nothing is filler.

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

Completeness3/5

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

For a destructive, four-parameter tool with no output schema and thin schema documentation, the description covers the two operating modes and the staleness guard but leaves the restore's blast radius, required privileges, and result shape unexplained. It is adequate to avoid gross misuse but not sufficient to call the tool confidently.

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 only 25% (only environment_profile is documented in the schema), so the description must compensate. It does so partly: "Preview" maps to dry_run, "verified" maps to expected_hash, and "journal entry" maps to journal_id, but it never states the hash must be a 64-char hex digest of the current record or what happens when expected_hash is omitted.

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?

The description pairs a specific verb set ("Preview or conditionally restore") with a precise resource ("a verified record-update journal entry"), which distinguishes it from the sitemap analogue rollback_sitemap_journal and from update_record_with_journal. It is clear about what is acted upon, though it never names the sibling tools it competes with.

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?

"Preview or conditionally restore" implies two modes and hints that preview should precede restore, and "rejects changed records" states a precondition. However, it gives no explicit guidance on when to pick this over list_change_journal/get_change_journal for inspection or over rollback_sitemap_journal for the sitemap case, and no exclusions are stated.

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