Skip to main content
Glama

Update employee

kiwihr_update_user
DestructiveIdempotent

WRITE: change an employee's work profile: name, start date, about-me, work phones, position, team(s), location, manager. Only the fields you pass are changed (team_ids replaces the whole team list). Private, payroll and bank data cannot be changed with this tool. GraphQL mutation updateUser.

Input Schema

NameRequiredDescriptionDefault
user_idYesEmployee id.
about_meNo
team_idsNoReplaces the list of teams.
last_nameNo
first_nameNo
manager_idNo
location_idNo
position_idNo
work_phonesNoReplaces the list of work phones.
employment_start_dateNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is carried. The description adds real value beyond them: partial-update semantics, the fact that team_ids and work_phones replace the entire list rather than append, and an explicit scope exclusion for private/payroll/bank fields. It does not mention permission requirements or what the response contains, which keeps it below 5.

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 dense sentences, front-loaded with the WRITE marker so the mutating nature is the first thing read. Every clause carries information: field list, partial-update rule, list-replacement caveat, exclusion boundary, and the underlying GraphQL mutation name.

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 10-parameter mutation with no output schema, the description covers the important behavioral questions: what changes, what is left alone, which fields are off-limits, and how list fields behave. The remaining gap is discoverability of the ID-valued parameters, which an agent must infer from the sibling list tools.

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 description coverage is only 30% across 10 parameters, so the description does meaningful work by naming the updatable fields and clarifying list-replacement for team_ids and work_phones beyond the schema's own "Replaces the list of..." notes. However it leaves the *_id parameters unexplained: nothing says location_id/position_id/manager_id/team_ids must come from kiwihr_list_locations, kiwihr_list_positions, kiwihr_list_users or kiwihr_list_teams, nor does it cover the first_name/last_name split or the date format.

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?

Opens with an explicit verb and mutation marker ("WRITE: change an employee's work profile") and enumerates the exact mutable surface: name, start date, about-me, work phones, position, team(s), location, manager. That lets an agent separate it from kiwihr_create_user, kiwihr_deactivate_user and kiwihr_update_timesheet_entry without reading any schema.

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?

"Only the fields you pass are changed" states the partial-update contract clearly, and "Private, payroll and bank data cannot be changed with this tool" sets a firm boundary on when this tool will not work. It stops short of naming the alternative for private/payroll/bank edits or pointing to sibling tools, so it is a strong 4 rather than a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.