keynote-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| UNSPLASH_KEY | No | Access key for the Unsplash API to enable image search and integration tools. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_presentationC | Create a new Keynote presentation |
| open_presentationC | Open an existing Keynote presentation |
| save_presentationC | Save a presentation |
| close_presentationB | Close a presentation |
| list_presentationsB | List all open presentations |
| set_presentation_themeC | Set presentation theme |
| get_presentation_infoC | Get presentation info (name, slide count, theme) |
| get_available_themesB | Get list of available themes |
| get_presentation_resolutionC | Get presentation resolution (width, height, aspect ratio) |
| get_slide_sizeB | Get slide size, aspect ratio, and layout reference info |
| add_slideC | Add a new slide to the presentation |
| delete_slideC | Delete a slide |
| duplicate_slideC | Duplicate a slide |
| move_slideC | Move a slide to a different position |
| get_slide_countD | Get slide count |
| select_slideC | Select a specific slide |
| set_slide_layoutD | Set slide layout |
| get_slide_infoB | Get slide info (number, layout, text item count) |
| get_available_layoutsC | Get list of available slide layouts |
| add_text_boxC | Add a text box to a slide |
| add_titleC | Add a title to a slide |
| add_subtitleC | Add a subtitle to a slide |
| add_bullet_listC | Add a bullet list to a slide |
| add_numbered_listC | Add a numbered list to a slide |
| add_code_blockC | Add a code block to a slide |
| add_quoteC | Add a quote to a slide |
| add_imageC | Add an image to a slide |
| get_slide_contentA | Get all elements on a slide — returns counts and details for text items, images, shapes, and tables |
| edit_text_itemC | Edit a text item's content by index on a slide |
| delete_elementC | Delete an element by type and index from a slide |
| move_elementC | Move an element to new coordinates on a slide |
| resize_elementC | Resize an element on a slide |
| get_speaker_notesC | Get presenter notes from a slide |
| set_speaker_notesC | Set presenter notes on a slide |
| clear_slideA | Clear all user-created content from a slide, preserving background images and theme placeholders |
| set_element_opacityC | Set opacity (0-100) on any element |
| add_build_inA | Add a Build In animation to an element so it appears step-by-step (e.g. bullets one by one on click). Uses UI scripting — requires Accessibility permissions. |
| remove_build_inC | Remove Build In animation from an element. Uses UI scripting. |
| add_builds_to_slideA | Add Build In animations to multiple elements on a slide in one call. Applies builds in order so elements appear sequentially on click. Auto-skips bullet dots (text items containing only '•'). Uses UI scripting. |
| add_shapeC | Create a rectangle shape with optional position, size, and opacity |
| screenshot_slideC | Take a screenshot of a single slide |
| export_pdfC | Export presentation as PDF |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ByAxe/keynote-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server