Skip to main content
Glama

insert_list

Insert bulleted or numbered lists into Word documents with custom nesting, numbering formats, and insertion points. Continue existing lists or restart numbering at a chosen value.

Instructions

Insert a bulleted or numbered list with real bullet/number glyphs (numbering.xml as needed). items: strings or {text, level} dicts (level 0-8 nests); kind: bullet | number. A call makes its own list, so numbering restarts at 1; continue_from (a num_id from list_elements) carries on an existing one and start_at restarts the new one at N. levels sets per-level formats: [{level, format, text, start, suffix, align, indent_pt, hanging_pt, font}], format one of decimal | lowerLetter | upperLetter | lowerRoman | upperRoman | bullet | none, text a label like '%1.%2.'. location picks the insertion point (omit for document end). Auto-backup to .ks4w-backups; atomic validated save. Refuses documents open in Word.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindNobullet
itemsYes
backupNo
levelsNo
locationNo
start_atNo
file_pathYes
continue_fromNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv2.0.3
    • addedInput schema / properties / continue_from
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedInput schema / properties / levels
      Added value: +{
      +  "anyOf": [
      +    {
      +      "items": {},
      +      "type": "array"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedInput schema / properties / start_at
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
  2. Addedv2.0.0

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the single readOnlyHint=false annotation, the description richly discloses important behaviors: a call creates its own list and resets numbering, continue_from carries on existing numbering, auto-backup to .ks4w-backups occurs, saves are atomic and validated, and documents open in Word are refused. This substantially exceeds what annotations alone provide.

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?

The description is dense but every sentence adds needed information for an 8-parameter tool with complex nested options. It front-loads the core action first, then systematically documents items, kind, numbering controls, levels, location, and safety behavior. The compact inline syntax for data structures is efficient and avoids redundancy.

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

Completeness5/5

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

Given the tool's complexity, the sparse schema, and the presence of an output schema, the description covers everything an agent needs: what the tool does, parameter shapes, list formatting options, insertion point behavior, numbering continuation/restart semantics, backup behavior, and a critical environmental constraint. No significant gap remains.

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

Parameters5/5

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

Schema description coverage is 0%, so the description carries the full parameter-documentation burden. It explains items formats and nesting depth, kind values, continue_from and start_at semantics, the full levels structure with format enums and label syntax, and location meaning. Only file_path and backup are left to self-evidence, and backup is partially covered by the auto-backup behavior statement.

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?

The description opens with a specific action and resource: 'Insert a bulleted or numbered list', which clearly distinguishes it from siblings like insert_paragraphs, create_table, or insert_break. It also adds the meaningful qualifier 'with real bullet/number glyphs (numbering.xml as needed)', making the tool's purpose precise and concrete.

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 gives strong operational context—how numbering behaves, when to use continue_from versus start_at, where location points, and that it refuses Word-locked documents. However, it does not explicitly say when to use insert_list versus alternatives like insert_paragraphs or apply_style; that differentiation is implied rather than stated.

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