MCP server that gives AI full control over Apple Keynote through AppleScript automation. Create, edit, and export presentations via natural language with 30+ tools.
Overview
Keynote MCP
An MCP server that gives AI full control over Apple Keynote through AppleScript automation. Create, edit, and export presentations — all via natural language.
Ships with a Claude Skill that encodes layout rules, font workarounds, and design patterns so presentations come out right on the first try.
30+ Tools
| Category | Tools |
|---|---|
| Presentation | create, open, save, close, list, themes, resolution, slide size |
| Slides | add, delete, duplicate, move, select, layouts, slide info |
| Content | text boxes, titles, subtitles, bullet lists, numbered lists, code blocks, quotes, images, edit, delete, move, resize elements, |
| speaker notes | |
| Export | screenshot slides, export PDF |
| Unsplash | search images, add to slides, random images |
Quick Start
pip install keynote-mcp
Or run directly:
uvx keynote-mcp
Register in Claude Code:
claude mcp add keynote-mcp keynote-mcp
Requirements
- macOS 10.14+
- Keynote installed
- Python 3.10+
Claude Skill
The bundled keynote-presentation skill solves real production issues:
- Font clipping bug — large titles (>48pt) clip to 1-2 characters
- Theme pitfalls — some themes don't show backgrounds on Blank slides
- Coordinate math — manual centering via per-character width estimates
- Design patterns — landing-page-style slide templates with tested positions
Server Config
{
"mcpServers": {
"keynote-mcp": {
"command": "uvx",
"args": [
"keynote-mcp"
]
}
}
}