Skip to main content
Glama
Kenny-666

Dynamics 365 MCP Server

by Kenny-666

d365_plugin_steps_query

Read-only

Query Dynamics 365/Dataverse native plugin steps with exact filters for message, entity, assembly, stage, and mode; secure configuration is excluded unless explicitly enabled.

Instructions

Query native plugin steps with exact filters. Secure Configuration is excluded by default; explicit include_secure_configuration=true is required to read plaintext. All supplied filters, including step_id, are combined. Results are bounded by top.

Input Schema

NameRequiredDescriptionDefault
topNoMaximum results; default 50.
modeNo0/Synchronous or 1/Asynchronous. Async requires PostOperation.
stageNo10/PreValidation, 20/PreOperation, 40/PostOperation.
stepIdNoCompatibility alias for step_id. Conflicting aliases are rejected.
enabledNo
messageNoExact SDK message name, for example Update.
step_idNo
assemblyNameNoCompatibility alias for assembly_name. Conflicting aliases are rejected.
assembly_nameNoExact assembly name to disambiguate a plugin class.
primaryEntityNoCompatibility alias for primary_entity. Conflicting aliases are rejected.
pluginTypeNameNoCompatibility alias for plugin_type_name. Conflicting aliases are rejected.
primary_entityNoLogical table name. Omit for a global message registration.
plugin_type_nameNoExact plugin class name, such as Company.Plugins.AccountUpdate.
includeSecureConfigurationNoCompatibility alias for include_secure_configuration. Conflicting aliases are rejected.
includeUnsecureConfigurationNoCompatibility alias for include_unsecure_configuration. Conflicting aliases are rejected.
include_secure_configurationNoExplicit opt-in to read and return Secure Configuration plaintext. Default false, changed from the legacy package.
include_unsecure_configurationNoInclude Unsecure Configuration in query results, default true (legacy behavior).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.8/5.0
Behavior4/5

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

With readOnlyHint already declaring the safety profile, the description adds genuinely non-obvious behavior: Secure Configuration is suppressed by default and requires explicit opt-in plaintext read, all filters combine conjunctively, and output volume is capped by top. It does not cover permission requirements or what happens when no filters are supplied.

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?

Three short sentences, each carrying distinct information: purpose first, then the security-relevant default, then filter/output semantics. No repetition of schema content and no filler.

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 17-parameter read tool with no output schema, the description covers the highest-risk behaviors (secure configuration exposure, conjunctive filtering, result bounding). It leaves the caller to infer the no-filter case and whether a zero-match or error is returned, which matters given only top bounds the result set.

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 88%, so the schema already documents nearly every parameter including the alias mappings and enum values; the baseline is 3. The description contributes additional meaning about step_id combining with other filters and the secure-configuration default, but adds nothing about alias conflict handling, defaults, or the relationship between top and the absent filter set.

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 ("Query native plugin steps") plus the filtering model ("exact filters"), which is enough to separate it from mutation siblings like d365_plugin_step_register/update. It stops short of naming the nearest read alternatives (d365_plugin_assemblies_query, d365_plugin_registration_metadata), so the agent must infer which query tool to pick.

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?

The description explains the semantics of using the tool (filters are ANDed, secure config is opt-in, results capped) but never says when to choose it over the sibling query tools for assemblies, images, or registration metadata. Usage is implied by the noun "plugin steps" rather than explicitly routed.

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