Skip to main content
Glama

Update change request

servicenow_update_change_request

Update ServiceNow change request details using its sys ID and new field values, with optional change type for emergency, normal, or standard changes.

Instructions

Update details of a change request.

:param change_request_sys_id: Sys ID of the change request. :type change_request_sys_id: str or None :param name_value_pairs: New name-value pairs providing updated details for the change request. :type name_value_pairs: str or None :param change_type: Type of change (emergency, normal, standard, model). :type change_type: str or None

:return: Response containing parsed Pydantic model with information about the updated change request. :rtype: Response

:raises MissingParameterError: If change_request_sys_id or name_value_pairs is not provided. :raises ParameterError: If invalid parameters or responses are encountered. :raises ParameterError: If change_type is specified but not valid. :raises ParameterError: If JSON serialization or deserialization fails.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNo
stateNo
change_typeNo
task_sys_idNo
text_searchNo
model_sys_idNo
sysparm_limitNo
sysparm_queryNo
worker_sys_idNo
api_parametersNo
cmdb_ci_sys_idNo
sysparm_offsetNo
cmdb_ci_sys_idsNo
response_lengthNo
template_sys_idNo
association_typeNo
name_value_pairsNo
change_model_sys_idNo
change_request_sys_idNo
refresh_impacted_servicesNo
change_request_task_sys_idNo
standard_change_template_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.4.0

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the mutation/risk profile is partly covered. The description adds useful context via the :raises: block (MissingParameterError, ParameterError on bad change_type, serialization failures), which is genuinely beyond the annotations, but it says nothing about permissions required to modify a change request or the effect of partial updates.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The docstring format is organized and front-loads the purpose sentence, but the param/type pairs restate the schema and consume most of the text while leaving most parameters uncovered. It is boilerplate rather than deliberately economical.

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?

For a 22-parameter mutation tool with zero required parameters, 0% schema description coverage, and no output schema, the description is far too thin — it explains roughly 14% of the inputs and gives no guidance on the many query/sys_id parameters an agent must understand to call it correctly.

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

Parameters2/5

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

With 22 parameters and 0% schema description coverage, the description documents only three of them (change_request_sys_id, name_value_pairs, change_type). It does add real value for change_type by naming valid values (emergency, normal, standard, model) that the schema lacks as enums, but the remaining 19 parameters — sysparm_query, sysparm_limit, state, data, api_parameters, and the various *_sys_id fields — are undocumented in both places.

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 ('Update details of a change request'), which is clear. However, it does not distinguish itself from close siblings such as servicenow_update_change_request_first_available, servicenow_update_change_request_task, or the generic servicenow_update_table_record, so the agent gets no help disambiguating among near-identical update tools.

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 explicit when-to-use guidance, no prerequisites, and no mention of alternatives. The only implicit signal is the :raises: block stating sys_id and name_value_pairs are required, which hints at minimum inputs but not usage context.

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