← General Office · Documents & Spreadsheets

pptx-author

Vendor officialLow riskBy anthropicsLicense: Apache-2.0★ 41,232

Produce a .pptx file on disk (headless) instead of driving a live PowerPoint document — for managed-agent sessions with no open Office app.

Use in Claude.ai (no code)

Download pptx-author.zip
  1. In Claude.ai, open Settings → Capabilities → Skills
  2. Choose “Upload skill” and pick the zip you downloaded
  3. Turn it on, then describe your task in a chat. Claude uses the skill when it fits

Use in Claude Code and other agents

Claude Code plugin

/plugin marketplace add anthropics/financial-services
/plugin install market-researcher@claude-for-financial-services

skills CLI (installs every skill in the repository)

npx skills add anthropics/financial-services

Manual: Copy the plugins/agent-plugins/market-researcher/skills/pptx-author folder to ~/.claude/skills/pptx-author/

Safety scan report

Executable scripts: noneSuspicious patterns: 0Files: 1Content hash: db3f0f249787

The scan is static pattern matching. It catches common problems and is not a guarantee of safety. Read the source before installing a skill that ships scripts.

Source

anthropics/financial-services/plugins/agent-plugins/market-researcher/skills/pptx-authorcommit 6056506In plugins: market-researcher, meeting-prep-agent, pitch-agent, financial-analysis
Files (1)
  • SKILL.md
SKILL.md
# pptx-author

Use this skill when running **headless** (managed-agent / CMA mode) and you need to deliver a PowerPoint deck as a **file artifact** rather than editing a live document via `mcp__office__powerpoint_*`.

## Output contract

- Write to `./out/<name>.pptx`. Create `./out/` if it does not exist.
- Return the relative path in your final message so the orchestration layer can collect it.

## How to build the deck

Write a short Python script and run it with Bash. Use `python-pptx`:

```python
from pptx import Presentation
from pptx.util import Inches, Pt

prs = Presentation("./templates/firm-template.pptx")  # if a template is provided
# or: prs = Presentation()

slide = prs.slides.add_slide(prs.slide_layouts[5])    # title-only
slide.shapes.title.text = "Valuation Summary"
# ... add tables / charts / text boxes ...

prs.save("./out/pitch-<target>.pptx")
```

## Conventions (mirror the live-Office `pitch-deck` skill)

- **One idea per slide.** Title states the takeaway; body supports it.
- **Every number traces to the model.** If a figure comes from `./out/model.xlsx`, footnote the sheet and cell.
- **Use the firm template** when one is mounted at `./templates/`; otherwise default layouts.
- **Charts**: prefer embedding a PNG rendered from the model over native pptx charts when fidelity matters.
- **No external sends.** This skill writes a file; it never emails or uploads.

## When NOT to use

If `mcp__office__powerpoint_*` tools are available (Cowork plugin mode), use those instead — they drive the user's live document with review checkpoints. This skill is the file-producing fallback for headless runs.