paul_apply_operations
ChatGPTRuns 1–40 native operations in order, all or none. preview_slides renders and retains a durable proposal without changing the document; otherwise the batch is applied immediately. Returns the proposal ID, changed slides and advisory quality signals. Later operations see earlier edits. Does not call another generative model.
paul_apply_proposal
ChatGPTApply the EXACT saved preview using its proposal_id, without recomputing operations. Safe to retry after reconnect or an uncertain response: an applied proposal returns its receipt without replaying. Refuses expired, stale or inaccessible proposals.
paul_arrange_slides
ChatGPTReorders working-copy slides according to the supplied 1-based slide numbers. Omitted slides are removed from the working copy; the source remains unchanged.
paul_clone_template_slide
ChatGPTClones a template or source slide with its native geometry, groups and effects. Supports content replacement and adaptation; source_slide_index identifies the original slide.
paul_compose_slide
ChatGPTCreates, inserts or replaces a complete editable slide from template components or new native objects. Copy specifications accept replacement texts; omitted sample text is cleared. Does not call another generative model.
paul_editor_export
ChatGPTCreate an editable PPTX export of the authorized presentation and return its short-lived download link.
paul_editor_read
ChatGPTRead the current authorized presentation for the embedded editor, including live revision and native objects.
paul_editor_save
ChatGPTSave manual edits to the same presentation. Replaces native document objects only if its revision is still current; rejects concurrent edits.
paul_editor_template_library
ChatGPTRead the authorized target template library for adding native slides in the embedded editor.
paul_export_pptx
ChatGPTExports an accessible presentation through Paul’s native PowerPoint exporter. Returns a short-lived PPTX download link; export may take up to 70 seconds.
paul_finish_import
ChatGPTQueues native extraction of the uploaded PPTX and returns its import state promptly. Retrying does not duplicate an active import; background analysis may continue after extraction.
paul_import_status
ChatGPTReturns import progress, extraction state and the recommended interval before another status request. Does not restart the import.
paul_inspect_template
ChatGPTReturns shared native design evidence, component catalogs and assessments for an imported template without creating a presentation. Supports slide/query filters and component pagination.
paul_list
ChatGPTLists accessible templates or presentations in pages of 30, starting at the supplied offset.
paul_list_presentation_versions
ChatGPTLists saved presentation versions and conversation-turn snapshots, with pagination. A turn snapshot represents the state after that turn; labels and historical text are document data.
paul_open_editor
ChatGPTShow the native editable PowerPoint in this conversation. Manual edits and AI revisions use the same document. Hosts without MCP Apps can open editor_url.
paul_open_workspace
ChatGPTStart an editable deck from a target template. source_template_id adds source content; presentation_id opens a working COPY. No LLM invoked.
paul_patch_slide
ChatGPTApplies precise native operations to an existing working slide, including changes to text, geometry, styling, images, charts and groups. Does not call another generative model.
paul_prepare_import
ChatGPTPrepares a user-requested PPTX import of up to 30 MB. Returns a short-lived private upload URL that accepts raw bytes through HTTP PUT, with the required content type and a new template ID. Does not upload or extract the file itself.
paul_preview
ChatGPTRenders a working presentation, target template or imported source: one slide or a contact sheet of up to six slides, selected through either slide or slides.
paul_preview_presentation
ChatGPTRenders a slide from a live presentation, including its latest manual or MCP edits.
paul_preview_template
ChatGPTRenders one template slide or a contact sheet of up to six slides without creating a presentation. Accepts either slide or slides.
paul_publish
ChatGPTCreate the reviewed native presentation in Paul. Idempotent for this revision; leaves the original presentation intact. The resulting document can be edited by hand or AI in Paul.
paul_read_code_context
ChatGPTReturns the same native JSON as Paul’s workshop, for either a workspace or a live published presentation. arguments selects slides/template_slides (1-based) and resources. Includes a native-object format guide, referenced layouts and masters, and catalogs of other resource IDs. Document overrides and target design remain separate. Does not execute code, call a model or modify a document.
paul_read_presentation
ChatGPTReturns a published presentation’s current revision and slide catalog, including manual edits. With slide specified, returns that slide’s full native objects.
paul_read_presentation_version
ChatGPTCompares a saved version with the current presentation. An optional slide_id returns exact historical and current native objects. Returns the source fingerprint and current revision required for restoration.
paul_read_slide
ChatGPTReturns a working slide’s native objects, including positions, sizes, text and fills. Element selectors restrict the returned detail.
paul_read_source_evidence
ChatGPTReturns complete text, table rows, chart values, units, relationships and speaker notes for up to four imported source slides, separately from target-template design.
paul_read_template_evidence
ChatGPTReturns compact native element catalogs and attached-layout evidence for up to three target-template slides. Slide numbers are 1-based.
paul_read_template_layout
ChatGPTReturns one target-template layout’s text and image slots, observed source-slide examples, palette and semantics.
paul_read_template_overview
ChatGPTReturns a compact catalog of target-template slides and layouts, deck semantics and its style profile.
paul_read_template_slide
ChatGPTReturns native objects from one target-template or imported source slide. The of selector distinguishes target design from source content; element selectors restrict detailed objects. Slide numbers are 1-based and element indices 0-based.
paul_read_workspace
ChatGPTReturns the working presentation’s current revision, slide identities and element counts; excludes detailed native objects.
paul_recolor
ChatGPTChanges the selected colors in native working-slide objects while preserving their geometry and editability.
paul_restore_presentation_version
ChatGPTRestores saved native objects for the requested slide IDs or the whole presentation. Requires the saved version’s source fingerprint and current revision. Preserves a pinned backup, checks edit permission and concurrent changes, and retains the conversation. Does not recompose slides.
paul_revise_presentation
ChatGPTModifies the same published presentation with live updates in Paul. Requires its current revision. Accepts a native operation or a batch with arguments {operations:[{name,args}]} (1–40); a batch saves once if all operations succeed. Concurrent edits reject the write. Does not call another generative model.
paul_save_template_analysis
ChatGPTSave shared design/component/slide/layout analysis after inspecting template evidence and previews. Owner only; rejects stale evidence/concurrent edits. Native objects and user instructions stay unchanged.
paul_search_template_layouts
ChatGPTSearches target-template layouts by intended use, slots, role and observed slide usage. Returns compact ranked candidates.
paul_search_template_slides
ChatGPTSearches target-template slides by intent, role and content. Returns compact ranked candidates with slide numbers and design evidence.
paul_tool_schema
ChatGPTRead exact compose/patch/clone/recolor arguments, the template_analysis assessment or code_context selection schema. For patch_slide, operation_kind selects one variant.