iwork-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| iwork_statusA | Report which iWork apps respond and with what version. Call this first when something fails: it separates a missing app from a denied automation permission from a wrong script. |
| pages_createA | Create a Pages document with this text and open it on screen. The document comes out structured rather than flat: the first line becomes
the title, and lines starting with Args:
text: the document content, with the line breaks it should have.
save_in: path to a |
| pages_readA | Extract the text of an existing Pages document. This is the only practical way to read a Args:
path: path to the |
| pages_exportA | Export a Pages document to PDF, Word or EPUB. Args:
path: the source |
| pages_replaceA | Replace text in an existing Pages document, and save it. Preserves formatting: only the paragraphs containing the searched string are touched, and the others keep their size, colour and style. This is the tool for filling in a template — a contract, a letter — by replacing placeholders. If the string does not appear, the document is left untouched and the call fails: better an error than a "done" on a file that stayed the same. Args:
path: the |
| pages_appendA | Append text at the end of an existing Pages document, and save it. The added text inherits the last paragraph's style. The rest of the document is not touched. Args:
path: the |
| numbers_setA | Write specific cells in an existing Numbers sheet, and save it. Cells are addressed as in the app: Args:
path: the |
| numbers_createA | Create a Numbers sheet from a grid of values. First row = headers. A cell starting with The result is laid out, not merely filled: one header row, no phantom header
column, and column widths fitted to the content. Numbers written in any
common convention ( Args:
rows: grid of values; every row must have the same length.
save_in: path to a |
| numbers_readA | Read back the first table of a Numbers sheet, computed values included. Formulas come back with their result, not with the formula text. Numbers are localized: on an Italian Mac decimals use a comma. Args:
path: path to the |
| keynote_layoutsA | List the slide layouts available on this Mac. Call this BEFORE |
| keynote_createA | Generate a Keynote presentation and open it on screen. Args:
slides: list of |
| keynote_export_pdfC | Export the frontmost Keynote presentation to PDF. Args: destination: path of the PDF to write. |
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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/atipicguy/iwork-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server