Skip to main content
Glama

r7_slide_format

Format or reposition a single object on a PPTX slide in place. Set text, fonts, geometry, fill, borders, lists, spacing, and alignment while leaving other author settings untouched.

Instructions

Format or reposition one object on a PPTX slide, in place. Sets font (family, size, bold, italic, underline, colour), geometry (x, y, width, height, rotation, z-order), fill and border, paragraph alignment, bullet and numbered lists, line and paragraph spacing, and can replace the object's text. Only the properties you name change: gradients, shadows, hyperlinks and everything else the author set are left untouched. Falls back to the slide's first text object when no target is named.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xNoLeft edge. A number is EMU; "2cm", "1in", "30px" and "24pt" also work.
yNoTop edge, same units as x.
boldNo
capsNoCapitalisation.
fillNoSolid fill colour, e.g. "#1F6FEB". Use "none" for no fill.
lineNoBorder colour, e.g. "#0B3D91". Use "none" for no border.
sizeNoFont size in points, e.g. 24.
textNoReplace the object's entire text with this one paragraph.
colorNoFont colour, e.g. "#C00000".
levelNoOutline level 0..8.
widthNoWidth, same units as x.
arrowsNoArrow heads for a line: true for one arrow at the end, { head, tail } with triangle/stealth/arrow/diamond/oval.
bulletNotrue adds a bullet, false removes it. Combine with numbered.
familyNoFont name, e.g. "Arial" or "Georgia". Applied to Latin, Cyrillic and complex scripts alike, so Cyrillic does not silently keep the theme font.
heightNoHeight, same units as x.
indentNoFirst-line indent, e.g. "-18pt".
italicNo
noFillNoRemove the fill entirely.
noLineNoRemove the border entirely.
strikeNo
zOrderNoPosition in the object list; 0 is furthest back. Omit to place the object on top.
spacingNoCharacter spacing in points (negative tightens).
filePathYesPath to the PPTX file.
numberedNotrue makes the list numbered instead of bulleted.
objectIdNoShape id, exactly as r7_slide_read reported it. The most precise way to address an object.
rotationNoClockwise rotation in degrees.
alignmentNoHorizontal paragraph alignment.
highlightNoText highlight colour, e.g. "#FFFF00".
lineStyleNoBorder dash style: solid, dash, dot, lgDash, sysDot.
lineWidthNoBorder width in points, e.g. 1.5.
underlineNotrue for a single underline, false to remove it, or a style: double, heavy, dotted, dash, wavy.
marginLeftNoLeft indent, e.g. "24pt" or EMU as a number.
objectNameNoShape name, as an alternative to objectId.
outputPathNoWrite to a copy instead of editing in place.
paragraphsNoReplace the text body with these paragraphs (a string each, or { text, runs?, ...options }).
slideIndexNo0-based position of the slide in the deck.
spaceAfterNoSpace after the paragraph, in points.
lineSpacingNoProportional line spacing, 1 = single, 1.5 = one and a half.
objectIndexNo0-based index among the objects that live on the slide.
spaceBeforeNoSpace before the paragraph, in points.
transparencyNoFont colour transparency 0..1 (0 = opaque).
paragraphIndexNoApply the paragraph options to this single paragraph (0-based) instead of all of them.
verticalAnchorNoWhere the text sits inside its box.
bulletCharacterNoCustom bullet glyph, e.g. "–".
placeholderTypeNoAddress a placeholder by role: title, ctrTitle, subTitle, body, pic, tbl.
fillTransparencyNoFill transparency 0..1 (0 = opaque).
lineTransparencyNoBorder transparency 0..1.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does meaningful work: it discloses that only named properties change and that gradients, shadows, hyperlinks and author styling are left untouched, and that it edits in place unless outputPath is given. It also discloses the silent fallback to the slide's first text object when no target is named, which is a real behavioral surprise. It does not cover permissions or what precedence applies among competing object selectors.

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?

Three sentences plus a fallback clause, front-loaded with the action and scope before the property inventory. No filler sentences, though the long property enumeration is close to restating the schema and could be trimmed.

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 47-parameter, output-less mutation tool with no annotations, the description covers the non-destructive partial-update contract, in-place vs copy semantics, and target fallback. The remaining gap is precedence among the several object-selection parameters (objectId, objectName, objectIndex, placeholderType), which is left for the agent to infer.

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 94%, so the schema already documents the 47 parameters thoroughly and the baseline is 3. The description adds only the aggregate property list and the fallback rule rather than per-parameter meaning, so it does not materially exceed what the schema provides.

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 and scope: 'Format or reposition one object on a PPTX slide, in place,' then enumerates the property families it touches (font, geometry, fill/border, alignment, lists, spacing, text replacement). The 'one object' scope plus the explicit fallback rule distinguish it from the broader slide/object siblings like r7_slide_edit and r7_slide_object.

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?

Usage context is implied rather than stated: it tells the agent an objectId 'exactly as r7_slide_read reported it' is the most precise way to address an object, which routes the agent through r7_slide_read first. However, there is no explicit when-to-use-this-vs-r7_slide_edit/r7_slide_object guidance and no when-not-to-use condition.

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