Skip to main content
Glama

Update Policy Version

lexq_versions_update
Destructive

Update a DRAFT version. Only DRAFT versions can be modified. Omitted fields keep their current values. To remove an end of the effective window, set clearEffectiveFrom or clearEffectiveTo to true instead of sending a value.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
groupIdYesPolicy group ID
versionIdYesVersion ID
effectiveToNoEffective end, ISO-8601 instant with Z or an offset, e.g. 2026-10-01T00:00:00Z or 2026-10-01T09:00:00+09:00. A bare date or a time without an offset is rejected. Omit it to keep the current end.
commitMessageNoNew commit message
effectiveFromNoEffective start, ISO-8601 instant with Z or an offset, e.g. 2026-10-01T00:00:00Z or 2026-10-01T09:00:00+09:00. A bare date or a time without an offset is rejected. Omit it to keep the current start.
clearEffectiveToNoSet to true to remove the effective end. Do not send effectiveTo with it.
clearEffectiveFromNoSet to true to remove the effective start. Do not send effectiveFrom with it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / clearEffectiveFrom
      Added value: +{
      +  "description": "Set to true to remove the effective start. Do not send effectiveFrom with it.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / clearEffectiveTo
      Added value: +{
      +  "description": "Set to true to remove the effective end. Do not send effectiveTo with it.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / effectiveFrom / description
      Previous value: -"Effective start, ISO-8601 instant with Z or an offset, e.g. 2026-10-01T00:00:00Z or 2026-10-01T09:00:00+09:00. A bare date or a time without an offset is rejected. Omit it and the start is cleared."New value: +"Effective start, ISO-8601 instant with Z or an offset, e.g. 2026-10-01T00:00:00Z or 2026-10-01T09:00:00+09:00. A bare date or a time without an offset is rejected. Omit it to keep the current start."
    • changedInput schema / properties / effectiveTo / description
      Previous value: -"Effective end, ISO-8601 instant with Z or an offset, e.g. 2026-10-01T00:00:00Z or 2026-10-01T09:00:00+09:00. A bare date or a time without an offset is rejected. Omit it and the end is cleared."New value: +"Effective end, ISO-8601 instant with Z or an offset, e.g. 2026-10-01T00:00:00Z or 2026-10-01T09:00:00+09:00. A bare date or a time without an offset is rejected. Omit it to keep the current end."
  2. Changed2 schema fields changed
    • changedInput schema / properties / effectiveFrom / description
      Previous value: -"New effective start date"New value: +"Effective start, ISO-8601 instant with Z or an offset, e.g. 2026-10-01T00:00:00Z or 2026-10-01T09:00:00+09:00. A bare date or a time without an offset is rejected. Omit it and the start is cleared."
    • changedInput schema / properties / effectiveTo / description
      Previous value: -"New effective end date"New value: +"Effective end, ISO-8601 instant with Z or an offset, e.g. 2026-10-01T00:00:00Z or 2026-10-01T09:00:00+09:00. A bare date or a time without an offset is rejected. Omit it and the end is cleared."
  3. Changed4 schema fields changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • removedInput schema / additionalProperties
      Removed value: -false
    • addedInput schema / properties / groupId / pattern
      Added value: +"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    • addedInput schema / properties / versionId / pattern
      Added value: +"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
  4. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations only supply readOnlyHint=false and destructiveHint=true, so the description carries most of the behavioral load and does it well: DRAFT-only mutability, partial-update semantics ('omitted fields keep their current values'), and the clearEffectiveFrom/clearEffectiveTo escape hatch for removing window bounds. It does not explain why destructiveHint is true (e.g., overwriting prior values or breaking references), which is the one remaining behavioral gap.

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, front-loaded with the primary constraint (DRAFT only), then the default update behavior, then the exception case. No filler and nothing buried.

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 7-parameter mutation with no output schema and only hint-level annotations, the description covers mutability constraints, partial-update defaults, and the clear-flag mechanics. It omits auth/permission requirements and the failure mode when the target version is not a draft, which an agent would benefit from knowing.

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

Parameters4/5

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

Schema coverage is already 100%, so the baseline is 3, but the description adds real meaning on top: the omit-to-keep rule and the mutually exclusive pattern of using clearEffectiveFrom/clearEffectiveTo 'instead of sending a value'. This resolves an interaction between parameters that the schema describes only in isolation.

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?

States a specific verb (Update) and resource (a DRAFT version) and immediately scopes it to draft state only. Among siblings like lexq_versions_create, lexq_versions_clone, and lexq_versions_delete, an agent can tell exactly which mutation this is without opening the 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?

Gives a hard precondition ('Only DRAFT versions can be modified') that tells the agent when this tool is applicable and implicitly when it is not. It does not name an alternative path (e.g., clone or create) for non-draft versions, so it falls short of full routing guidance.

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.

Resources