Keynote: build deck
keynote_build_deckBuild a new Keynote deck from an outline with slides, charts, tables, and themes. Verifies each slide and removes the file on mismatch, never overwriting.
Instructions
Build a new Keynote deck from an outline. slides = [{"title": "…", "body": ["bullet", "bullet"], "layout": "Title & Bullets", "notes": "…", "image": "/path/pic.png"}, …]; the first slide defaults to a title layout, the rest to Title & Bullets. theme from keynote_list_themes; optional transition for every slide (e.g. dissolve). Every slide is read back and checked; on any mismatch the new file is removed. Never overwrites. kit = a design kit (iwork_list_design_kits) for a designed deck in one call. Chart slides: add "chart": {"type": "bar", "rows": ["2025", "2026"], "columns": ["Q1", "Q2"], "data": [[1, 2], [3, 4]]} or {"type": "line", "from": "/path/report.numbers", "columns": ["Q1", "Q2"]} (header row → column names, first column → row names); chart slides default to Title Only. Table slides: "table": {"rows": [["Region", "Q1"], ["Riyadh", 1200]]} or {"from": "/path/report.numbers", "columns": ["Q1"], "max_rows": 8}; with a kit the table is styled too. Needs macOS + Keynote. Use for a new deck from an outline, including chart and table slides; then run keynote_review_deck. To change an existing deck use the slide and text tools instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kit | No | A design kit: a name from iwork_list_design_kits (preset or saved, e.g. "executive", "Resal") or your own {"fonts": {...}, "colors": {"title": "#RRGGBB", ...}}. Contrast is checked. | |
| path | Yes | Where to create the new .key deck; it must not exist yet. | |
| theme | No | Theme name from keynote_list_themes; the kit's theme is used when omitted. | |
| slides | Yes | The outline: [{"title": "…", "body": ["bullet", …], "notes": "…", "layout": "…", "image": "/path.png", "chart": {…}, "table": {…}}, …]; see the tool description for chart and table. | |
| transition | No | Transition for every slide, e.g. "dissolve". |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||