Skip to main content
Glama

Create IT Glue Document Image

itglue_create_document_image

Upload a picture into an IT Glue document body, either inline or to a gallery, so it renders in the document.

Instructions

Upload a picture INTO a document — the only way to get an image to render in a document's body (itglue_create_attachment only files it in the Attachments panel). Two placements: (1) INLINE — omit gallery_id; the result carries inline_resource_url, a relative path you must use verbatim as in Text/Step section HTML via itglue_create_document_section or itglue_update_document_section, or pass append_to_section_id to have this tool append the to an existing Text/Step section for you. (2) GALLERY — pass gallery_id (the document_gallery_id shown on a Gallery or Step section) to file the image into that gallery. Never put base64/data: URIs or S3 URLs in section content; IT Glue strips them. Provide exactly one source: content_base64, url, or file_path (local stdio runs only). file_name needs an extension (e.g. screenshot.png); inferred from url/file_path when omitted. Max 25 MB.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoURL the server fetches and base64-encodes
file_nameNoFile name with extension; inferred from url/file_path if omitted
file_pathNoLocal filesystem path to read (stdio transport only)
gallery_idNodocument_gallery_id of a Gallery/Step section to file the image into; omit for an inline image
document_idYesThe document the image belongs to
content_base64NoBase64-encoded file bytes (a leading data: URI prefix is stripped)
response_formatNoOutput format: human-readable markdown (default) or structured JSONmarkdown
append_to_section_idNoInline only: ID of an existing Text/Step section to append <div><img src=…></div> to after upload

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.5.0

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already indicate this is a mutating (readOnly=false), non-idempotent operation, but the description adds crucial behavioral context: IT Glue strips base64/data URIs and S3 URLs from section content, the 25 MB limit, the verbatim use of inline_resource_url, and the automatic append behavior when append_to_section_id is passed. These are not inferable from the schema or annotations.

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?

The description is dense and packed with necessary details, organized into numbered placement options and warnings. It is not as concise as a two-sentence definition, but every sentence earns its place; the front-loaded purpose and placement taxonomy make it navigable.

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?

For a tool with 8 parameters, two placement modes, and no output schema, the description is remarkably complete. It covers source exclusivity, size limits, forbidden content types, the returned relative URL, how it interacts with sibling tools, and the append option—everything an agent needs to call it correctly.

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?

Although schema coverage is 100%, the description adds essential semantics beyond the schema: it enforces the 'exactly one source' rule among content_base64, url, and file_path; clarifies that gallery_id is the document_gallery_id shown on a Gallery/Step section; explains file_name inference and the data: URI prefix stripping; and specifies that append_to_section_id is inline-only. This meaningfully reduces the chance of incorrect invocation.

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 verb and resource—'Upload a picture INTO a document'—and immediately distinguishes itself from the sibling itglue_create_attachment by stating it is the only way to get an image to render in the body. This makes the tool's scope unmistakable.

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

Usage Guidelines5/5

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

It explicitly names the alternative (itglue_create_attachment) and explains why you would choose this tool instead. It also gives conditional guidance for the two placements (inline vs. gallery), including when to use append_to_section_id versus manually inserting the returned URL via itglue_create_document_section or itglue_update_document_section.

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