Skip to main content
Glama
Microsoft Active Directory MCP Server

Microsoft Active Directory MCP Server

by nks1097

ad_update_user

Update existing Active Directory user attributes such as mail, title, department, and manager by specifying a user identity. Use dry-run mode to preview changes before applying them.

Instructions

[Users] [WRITE] Atualizar atributos de usuario existente.

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": {
      "identity": "<identity>"
    },
    "name": "ad_update_user"
  }
}

Input Schema

NameRequiredDescriptionDefault
mailNo
titleNo
companyNo
dry_runNo
managerNo
identityYes
departmentNo
display_nameNo
correlation_idNo
confirmation_tokenNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden, and it only contributes the word 'WRITE' and the implication that the user must already exist. Critical behavior is undisclosed: what permissions are required, whether changes are reversible, why both 'dry_run' and 'confirmation_token' exist in the schema, and what happens to attributes not supplied. For a directory-mutating operation in Active Directory this is a large gap.

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?

A single short sentence, front-loaded with categorical tags and containing no filler or redundancy. It earns its place structurally, though its brevity is partly the cause of the coverage gaps noted elsewhere. A little more text would be justified here, so it isn't a structural flaw so much as an economy that costs elsewhere.

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

Completeness2/5

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

With an output schema present, return values needn't be described, which removes one burden. But a 10-parameter mutation with zero annotation coverage and an unexplained dry_run/confirmation_token safety flow demands more than seven words of guidance. The description is not sufficient for an agent to invoke this tool safely without inspecting the schema in detail.

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

Parameters1/5

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

Schema description coverage is 0% across 10 parameters, and the description compensates for none of them — it never explains 'identity', 'dry_run', 'confirmation_token', or 'correlation_id', which are precisely the parameters whose semantics are non-obvious. Fields like 'manager' and 'display_name' are also unaddressed, including whether they accept DN, UPN, or display strings. The description adds no meaning beyond the bare property names.

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 states a specific verb and resource ('Atualizar atributos de usuario existente'), plus a '[Users] [WRITE]' tag that immediately identifies the object class and operation type. Combined with the tool name, an agent can tell it apart from ad_update_group / ad_update_computer without opening a schema. It stops short of 5 because it doesn't say how it differs from near neighbours like ad_move_object or ad_reset_user_password.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no mention of alternatives — an agent is never told to prefer this over ad_create_user or field-specific operations. The only usage hint is the '[WRITE]' tag. Nothing tells the caller which attributes are mutable or what to do when identity resolution is ambiguous.

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