Skip to main content
Glama

Get Text

get_text
Read-only

Retrieve the full plain-text content of a PowerPoint deck, including slide notes, in reading order. Use it to extract or verify text from any slide or the entire presentation.

Instructions

Plain text of the deck in reading order: shapes in spTree order, table cells tab-joined, fields rendering their cached text. scope: None for all slides, a 0-based index, {"slide_id": N}, or a list; include_notes=True appends speaker notes. Budgeted, paging in whole slides: slide_count stays the deck's true total and a "page" block gives the omitted count and the next offset; limit/offset page explicitly. Rendered-appearance checks live in the assembly-export pack. live='auto' edits the open PowerPoint copy when the file is locked by it (UNSAVED until live_save, com pack); 'force' targets the open session; 'off' refuses locked files. For edit anchors, use get_presentation_view.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
liveNoauto
limitNo
scopeNo
offsetNo
file_pathYes
include_notesNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.2.1
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / limit
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedInput schema / properties / offset
      Added value: +{
      +  "default": 0,
      +  "type": "integer"
      +}
  2. First observedv1.0.0

TDQS

A3.9/5.0
Behavior1/5

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

The description states that live='auto' 'edits the open PowerPoint copy when the file is locked by it', which directly contradicts the readOnlyHint=true annotation. Even though scope/paging/live details add behavioral context, the rule requires score 1 when the description contradicts 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 main purpose is front-loaded and the content is dense rather than padded, with semicolon-separated behavioral notes. However, the middle section on paging is terse and the live sentence is convoluted, making the structure slightly harder to parse than necessary.

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 6-parameter tool with an output schema, the description covers the key invocation concerns: scope, notes, paging, lock/live modes, and sibling routing. The remaining gaps are the implicit file_path and the contradictory live-editing claim, which prevents full completeness.

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?

With 0% schema description coverage, the description carries the full burden and largely delivers: it explains scope forms, include_notes=True, limit/offset paging semantics, and live mode values. It leaves file_path implicit and does not fully spell out limit/offset mechanics, but it adds substantial meaning beyond the raw schema.

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 outcome: 'Plain text of the deck in reading order' and defines the extraction conventions (spTree order, tab-joined cells, cached field text). It differentiates itself from siblings by explicitly routing edit-anchor needs to get_presentation_view and rendered-appearance checks to the assembly-export pack.

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 names concrete alternatives and when they apply: 'For edit anchors, use get_presentation_view' and 'Rendered-appearance checks live in the assembly-export pack.' It also documents live modes with conditions, helping an agent decide which setting to use for locked files.

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