← Back to all apps

Gamma

Productivityby Gamma Tech, Inc.
Launched Aug 7, 2026 on ChatGPT

Transform ideas into presentations, documents, social media posts, and websites directly from Claude. Gamma generates beautifully designed content from prompts or notes, with smart layouts, customizable themes, and AI visuals. Work in 60+ languages, control tone and detail level, and export to PDF or PPTX — all without leaving your workflow in Claude.

17ChatGPT Tools
3Claude Tools
Gamma Tech, Inc.Developer
ProductivityCategory

Use Cases

productivitysales-and-marketing

Available Tools

Export Gamma

export_gamma
Full Description

Starts exporting an existing Gamma presentation or document to a downloadable file. Use this when the user wants a PDF, PowerPoint (pptx), or PNG image export of a Gamma they already have. Requires the Gamma file ID or URL and the format: "pdf", "pptx", or "png" (png returns a ZIP archive with one PNG per card). This returns an exportId immediately. Where an interactive widget is displayed, it shows export progress and the download link on its own, so do not call get_export_status. Where there is no interactive widget, such as a CLI or terminal client that does not render MCP Apps, poll get_export_status with the exportId, waiting a few seconds between checks (do not tight-loop), until the status is "completed" or "failed". On completion, share the download URL; on failure, report the error or reason. Do NOT call export_gamma again to check progress (that starts a brand-new export). The download link expires after about one week and is not tied to the API key, so share it carefully and download promptly.

Parameters (2 required)
Required
exportAsstring

Output format: "pdf" → a .pdf, "pptx" → a .pptx, "png" → a .zip archive containing one PNG per card (not a single image).

Options:pdfpptxpng
gammaIdOrUrlstring

The Gamma file ID or a full Gamma URL to export. The generationId or /generations/ URL returned by a generate tool is also accepted and automatically resolves once generation completes. Examples: "g5aykcic8ujm71s" or "https://gamma.app/docs/My-Deck-g5aykcic8ujm71s".

Generate Gamma

generate
Full Description

Use this when the user wants to create a NEW presentation, document, webpage, or social media post. Use generate for any creation request unless the user references a template they want to create from. This tool can only create new content — it cannot edit, modify, or refine an existing Gamma (including one it previously generated). After generation, direct the user to open their Gamma via the gammaUrl to make any edits, theme changes, or refinements in the Gamma editor. Do not offer to adjust, tweak, or refine the generated content yourself. Only include optional parameters when the user explicitly requests or clearly implies them. Gamma has intelligent defaults. When in doubt, omit. When uncertain about user preferences, ask rather than assume. Always share the output gammaUrl with the user when it's available.

Parameters (1 required, 13 optional)
Required
inputTextstring

The content to generate from (text prompt, outline, or full content). IMPORTANT: You MUST include the complete text of any relevant context from the conversation, including outlines you created with the user, and text extracted from attachments—do not summarize or omit any part of it.

Optional
additionalInstructionsstring

Only included when you need to give guidance for the AI generator that isn't included in other parameters, ie "use a pyramid layout on slide 2"

cardOptionsobject
cardSplitstring

How to split inputText across cards. 'inputTextBreaks' uses explicit breaks in the inputText (e.g., '---' separators) to decide where one card ends and the next begins — use when the user has pre-structured their input into slides. 'auto' lets Gamma freely decide card boundaries based on content — this is the default behavior. Only specify when the user explicitly wants their inputText breaks honored as card boundaries.

Options:inputTextBreaksauto
exportAsstring

Export format: 'pptx' (PowerPoint), 'pdf', or 'png'. Only include when the user explicitly requests an export. Note: 'png' returns a ZIP archive containing one PNG per card (not a single PNG file) — the exportUrl will point at a .zip. The returned exportUrl expires after approximately one week and is not tied to your API key — prompt the user to download promptly and treat it as a secret.

Options:pptxpdfpng
folderIdsarray

Array of folder IDs to organize the generated content (only include if requested by the user, get IDs from get_folders tool)

formatstring

Format: this optional parameter tells Gamma what type of content to create: 'presentation' (slides), 'document' (long-form text — use for one-pagers, handouts, flyers, briefs, spec sheets, and leave-behinds), 'social' (social media post), 'webpage' (a website or landing page meant to be published online). The default value is presentation which works most of the time, so it is not necessary to specify this unless user requests different format.

Options:presentationdocumentsocialwebpage
imageOptionsobject
numCardsnumber

Number of cards: this optional parameter sets the number of slides, cards, or pages that Gamma will generate in the presentation. Gamma does have a sensible default value for this, so it is not necessary to specify this unless user requests a specific number of slides.

sharingOptionsobject

Advanced: Sharing and permissions configuration. Only use if user explicitly requests specific sharing settings.

textModestring

Text Mode: this optional parameter specifies how Gamma should process your inputText before it is added to the slides: 'generate' expands brief inputText prompts into full slides (use with short outlines). This is the default value that works most of the time. 'condense' summarizes long detailed inputText content into slides (use if inputText contains a really long article or document, and user wants to create a short presentation or does not specify the number of slides). 'preserve' uses inputText as-is (use only if inputText has fully fleshed out, very detailed pre-written slide content, or a document that you want to preserve without any changes).

Options:generatecondensepreserve
textOptionsobject
themeIdstring

Theme ID to use (optional). Call get_themes tool to get a list of available themes, when user describes desired visual styling (e.g., 'stylish', 'professional', 'cute', 'colorful', 'modern') or explicitly requests theme customization. Otherwise, omit this parameter for default theme. When selecting a theme from get_themes results, evaluate each theme's tone and color keywords against both the user's aesthetic preference and the presentation topic to find the best match.

titlestring

Custom title for the generated Gamma (1–500 characters). Only include if the user explicitly provides or asks for a specific title; otherwise omit and a title will be derived from the content.

Generate gamma from template

generate_from_template
Full Description

Use this when the user wants to create a NEW gamma by adapting, remixing, or transforming an existing template gamma. The source template gamma’s structure (card count, sections, layout) is preserved by default, but the prompt can direct changes — e.g. adding/removing/reordering cards, adapting for a different audience, transforming the subject matter, replacing images, populating cards from supplied data, or substituting variables and placeholders. Unlike the generate tool (which determines structure from scratch), this tool starts from an existing template gamma and uses it as the source material for the new one. Choose this tool whenever the user references an existing template gamma as the starting point — whether they want to populate it with new content, adapt it for a different audience or topic, generate a variation, or maintain consistent styling across multiple generated gammas. Requires a gammaId identifying the source template gamma in the user’s workspace. Important: the input gammaId MUST point to a template gamma; a regular non-template gamma won't be accepted. Prefer IDs returned by get_gammas with type="template". If the user provided a template ID, you may use it as-is. Do not pass URLs, placeholder IDs, or regular/non-template gamma IDs. If this tool reports that the gamma is not accessible or is not a template, recover by calling get_gammas with type="template" to find a valid template, or use generate if the user actually wanted to create from non-template source material. This tool can only create new content — it cannot edit, modify, or refine an existing Gamma (including one it previously generated). After generation, direct the user to open their Gamma via the gammaUrl to make any edits, theme changes, or refinements in the Gamma editor. Do not offer to adjust, tweak, or refine the generated content yourself. Only include optional parameters when the user explicitly requests or clearly implies them. Gamma has intelligent defaults. When in doubt, omit. When uncertain about user preferences, ask rather than assume. Always share the output gammaUrl with the user when it's available.

Parameters (2 required, 6 optional)
Required
gammaIdstring

The ID of a template gamma in the user's workspace. This must be the `id` field from a get_gammas result whose type is "template", or a user-provided template ID. Do not invent or guess this value. Do not pass URLs, placeholder IDs, or IDs for regular/non-template gammas. If you need to discover a valid template ID, call get_gammas with type="template" and pass the returned `id` field through unchanged.

promptstring

Text describing how to adapt, remix, or transform the source template gamma. May contain new content to apply (text, documents, data, messaging, embedded image URLs pasted inline where the image should appear), adaptation directives (e.g. “make this for a healthcare audience,” “remove the team section,” “reorder so Our Solution comes before The Problem,” “replace [[client-name]] with Acme Corp”), or a mix of both. When the user has supplied new content or source data (a document, data table, new messaging, image URLs), include it verbatim — do not summarize. When the intent is an adaptation directive, keep the prompt concise. Budget note: the prompt and the source template gamma's content share a token budget, so the effective prompt budget is smaller on large sources; prefer concise prompts where possible.

Optional
exportAsstring

Export format: 'pptx' (PowerPoint), 'pdf', or 'png'. Only include when the user explicitly requests an export. Note: 'png' returns a ZIP archive containing one PNG per card (not a single PNG file) — the exportUrl will point at a .zip. The returned exportUrl expires after approximately one week and is not tied to your API key — prompt the user to download promptly and treat it as a secret.

Options:pptxpdfpng
folderIdsarray

Array of folder IDs to organize the generated content (only include if requested by the user, get IDs from get_folders tool). Max 10.

imageOptionsobject

Advanced: Overrides for AI image generation. Only applies when the template uses AI-generated images — if the template uses another image source (Pictographic, web, Pexels, etc.), these options are ignored and the response returns a warning. Only include if the user explicitly requests specific image settings.

sharingOptionsobject

Advanced: Sharing and permissions configuration. Only use if user explicitly requests specific sharing settings.

themeIdstring

Theme ID to use for the generated gamma. Only include when the user explicitly requests a theme change, or describes a desired visual style (e.g., “stylish,” “professional,” “cute,” “colorful,” “modern”). When omitted, the template’s theme applies. Call get_themes to look up available theme IDs, and evaluate each theme’s tone and color keywords against both the user’s aesthetic preference and the intent of the prompt to find the best match.

titlestring

Custom title for the generated Gamma (1–500 characters). Only include if the user explicitly provides or asks for a specific title; otherwise omit and a title will be derived from the content.

Generate Image

generate_image
Full Description

Generates one standalone image from a text prompt. Use this when the user wants an image, illustration, or photo on its own — NOT a presentation, document, or webpage (use generate for those), and NOT a file export of an existing Gamma (use export_gamma). Choose a type ("illustration", "scene", "photo", "abstract") and sizePreset for aspect ratio; for brand styling, find a themeId with get_themes, or omit it for the workspace default. Generation is asynchronous (it takes longer than a request can stay open): this returns immediately with an imageGenerationId and status "pending". If your host displays the image widget, it shows generation progress and the finished image on its own — do nothing else. If you do NOT have a widget UI (for example a CLI or terminal client), poll get_image_generation_status with that id, waiting a few seconds between checks (do not tight-loop), until status is "completed" (then share the returned image URL) or "failed" (then report the error). Do NOT call generate_image again to check progress (that starts a new, separately billed generation).

Parameters (1 required, 4 optional)
Required
promptstring

Description of the image to generate. Put background treatments here too (e.g. "on a white background", "contained in a circle").

Optional
referenceImagesarray

Up to 4 reference images whose subject (a character or product) should appear in the generated image. Only pass URLs the user supplied.

sizePresetstring

Aspect ratio of the output: "social-square" (1:1, default), "social-portrait" (4:5), "story" (9:16), "banner" (16:9), or "slide" (16:9). Exact pixel dimensions are chosen by the model.

Options:social-squaresocial-portraitstorybannerslide
themeIdstring

Theme to brand the images with. Use get_themes to find a themeId; omit to use the workspace default theme. Ignored when referenceImages are provided.

typestring

Visual style: "illustration" (default), "scene" (narrative illustration), "photo" (photorealistic), or "abstract". Omit to use illustration. Ignored when referenceImages are provided — the references drive the look.

Options:illustrationscenephotoabstract

Generate multi-page Gamma

generate_multi_page_gamma
Full Description

Use this for one-shot creation of a MULTI-PAGE Gamma: a single Gamma containing several distinct pages under one URL. Ideal for sales rooms, proposal sites, onboarding portals, and microsites assembled from multiple sections (e.g. one page per prospect topic). Provide pages[] in the order they should appear; each page carries its own inputText and per-page settings (title, numCards, format, textMode, cardSplit, textOptions, imageOptions, path). File-wide settings (theme, folders, card dimensions, sharing, export, publish, overall title) apply to all pages. Prefer the generate tool when the user wants a single presentation, document, webpage, or social post; use this only when the user wants several distinct pages within one Gamma. This tool can only create new content — it cannot edit, modify, or refine an existing Gamma (including one it previously generated). After generation, direct the user to open their Gamma via the gammaUrl to make any edits, theme changes, or refinements in the Gamma editor. Do not offer to adjust, tweak, or refine the generated content yourself. Only include optional parameters when the user explicitly requests or clearly implies them. Gamma has intelligent defaults. When in doubt, omit. When uncertain about user preferences, ask rather than assume. Always share the output gammaUrl with the user when it's available.

Parameters (1 required, 7 optional)
Required
pagesarray

The ordered list of pages to generate. Each entry becomes a distinct page (with its own deep link) inside a single Gamma, and carries its own inputText plus optional per-page settings (title, numCards, format, textMode, cardSplit, textOptions, imageOptions, path). Provide 1–50 pages in the order they should appear.

Optional
cardOptionsobject
exportAsstring

Export format: 'pptx' (PowerPoint), 'pdf', or 'png'. Only include when the user explicitly requests an export. Note: 'png' returns a ZIP archive containing one PNG per card (not a single PNG file) — the exportUrl will point at a .zip. The returned exportUrl expires after approximately one week and is not tied to your API key — prompt the user to download promptly and treat it as a secret.

Options:pptxpdfpng
folderIdsarray

Array of folder IDs to organize the generated content (only include if requested by the user, get IDs from get_folders tool)

publishboolean

When true, publish the generated Gamma as a live multi-page site (using Gamma's auto-generated subdomain) once all pages succeed. Share the resulting site URL with the user. Only set when the user wants a published site.

sharingOptionsobject

Advanced: Sharing and permissions configuration. Only use if user explicitly requests specific sharing settings.

themeIdstring

Theme ID to use (optional). Call get_themes tool to get a list of available themes, when user describes desired visual styling (e.g., 'stylish', 'professional', 'cute', 'colorful', 'modern') or explicitly requests theme customization. Otherwise, omit this parameter for default theme. When selecting a theme from get_themes results, evaluate each theme's tone and color keywords against both the user's aesthetic preference and the presentation topic to find the best match.

titlestring

Custom title for the overall Gamma / site (1–500 characters). Only include if the user provides one; otherwise a title is derived from the content. Per-page titles are set on each pages[] entry.

Get Export Status

get_export_status
Full Description

Checks the status of an export previously started with export_gamma, using its exportId. Where an interactive widget is displayed, the widget polls for completion and shows the download link automatically, so only use this tool if the user explicitly asks for status. Where there is no interactive widget, such as a CLI or terminal client that does not render MCP Apps, poll this tool with the exportId until the status is "completed" or "failed". If the status is "pending", wait a few seconds before checking again; do not tight-loop. Returns "completed" with a download URL, "failed" with an error or reason, or "pending" if it is still rendering. On completion, share the download URL; on failure, report the error or reason. The download URL expires after about one week and is not tied to the API key, so share it carefully and download promptly.

Parameters (1 required)
Required
exportIdstring

The export ID to check status for (returned by export_gamma).

Get Folders

get_folders
Full Description

Use this when the user wants to browse available Gamma folders or search for a specific folder by name.

Parameters (0 required, 1 optional)
Optional
namestring

Search folders by name (optional, omit to return all folders)

Get gamma analytics

get_gamma_analytics
Full Description

Gets engagement analytics for an existing Gamma presentation or document: total views, unique viewers and editors, card count, when it was last opened, and a 30-day daily viewer trend. Use this as the default when the user asks how a gamma is performing or how many people have seen it. Requires the Gamma file ID or URL. In clients that support MCP apps this renders an interactive widget that already shows the summary, card-by-card engagement, and the viewer list — you do not need to call the other analytics tools unless the user asks for exact numbers. Analytics data is eventually consistent and can lag by about an hour.

Parameters (1 required)
Required
gammaIdOrUrlstring

The Gamma file ID or a full Gamma URL. Examples: "g5aykcic8ujm71s" or "https://gamma.app/docs/My-Deck-g5aykcic8ujm71s".

Get per-card gamma analytics

get_gamma_card_analytics
Full Description

Gets card-by-card engagement for an existing Gamma: total time viewers spent on each card and the percentage of viewers who reached it. Every card in the gamma is included in deck order, each with its title (cardName, null for untitled cards) and 1-based position; cards with no recorded activity have zeroed stats. Refer to cards by title when available, falling back to "Card N". Use this when the user asks which cards or slides performed best, where viewers dropped off, or how far people got. Requires the Gamma file ID or URL. Analytics data is eventually consistent and can lag by about an hour.

Parameters (1 required)
Required
gammaIdOrUrlstring

The Gamma file ID or a full Gamma URL. Examples: "g5aykcic8ujm71s" or "https://gamma.app/docs/My-Deck-g5aykcic8ujm71s".

Get Gamma comments

get_gamma_comments
Full Description

Lists comment threads on an existing Gamma presentation or document, including their replies. Use this when the user wants to read, review, or summarize the comments or feedback on a Gamma. Requires the Gamma file ID or URL. Results are paginated, oldest activity first; use after with the nextCursor from a previous response to fetch the next page. Use updatedSince (ISO-8601 timestamp) to fetch only threads with activity after a given time.

Parameters (1 required, 4 optional)
Required
gammaIdOrUrlstring

The Gamma file ID or a full Gamma URL. Examples: "g5aykcic8ujm71s" or "https://gamma.app/docs/My-Deck-g5aykcic8ujm71s".

Optional
afterstring

Cursor from a previous response to fetch the next page (optional). When paginating, keep the other parameters exactly the same as the call that produced the cursor; changing filters mid-pagination can cause skipped, duplicated, or inconsistent results.

includeArchivedboolean

When true, archived (deleted) comments and replies are included in the results, each carrying an `archived` flag (optional, defaults to false)

limitinteger

Maximum number of comment threads to return per page (optional, defaults to 50, max 50)

updatedSincestring

ISO-8601 timestamp, e.g. "2026-06-01T00:00:00.000Z" (optional). When provided, only comment threads with activity (including new replies) after this timestamp are returned.

Get gamma viewer analytics

get_gamma_viewer_analytics
Full Description

Gets the list of people who viewed an existing Gamma: display name and email for signed-in viewers (null for anonymous viewers), when they last opened it, and how many cards they viewed. Use this when the user asks who has seen a gamma, or to find a specific viewer by name or email. Results are paginated: use limit and the after cursor from the previous response to fetch more. To find a specific person (e.g. "get me the analytics for John Doe on this gamma"): scan each page for their name or email. Only conclude the person has not viewed the gamma after the last page (no nextCursor) — never from the first page alone. Once found, pass their viewerId as userId to get_gamma_viewer_detail_analytics for that person's detailed engagement. Requires at least edit permission on the gamma: manage permission shows all viewers, edit-only shows at most the API user's own activity. If the API returns a 403, tell the user analytics requires at least edit access on the gamma. Requires the Gamma file ID or URL. Analytics data is eventually consistent and can lag by about an hour.

Parameters (1 required, 3 optional)
Required
gammaIdOrUrlstring

The Gamma file ID or a full Gamma URL. Examples: "g5aykcic8ujm71s" or "https://gamma.app/docs/My-Deck-g5aykcic8ujm71s".

Optional
afterstring

Cursor from a previous response to fetch the next page (optional)

limitinteger

Maximum number of viewers to return (optional, defaults to 25, max 50)

sortDirectionstring

Sort by the viewer's most recent open time: 'desc' (default, most recent first) or 'asc'

Options:ascdesc

Get single-viewer gamma analytics

get_gamma_viewer_detail_analytics
Full Description

Gets one viewer's detailed engagement with an existing Gamma: their name and email, when they last opened it, how many of its cards they viewed, and the share of their total view time spent on each card. Every card in the gamma is included in deck order, each with its title (cardName, null for untitled cards) and 1-based position; cards the viewer never viewed have a viewTimePercent of 0. Refer to cards by title when available, falling back to "Card N". Use this when the user asks how a specific person engaged with a gamma. Requires the userId — the viewerId returned by get_gamma_viewer_analytics. If you only have a name or email, find the person with get_gamma_viewer_analytics first (paginating with the after cursor until found or pages run out). Anonymous viewers and users who did not view the gamma will not have valid analytics to find (404). Requires the Gamma file ID or URL. Analytics data is eventually consistent and can lag by about an hour.

Parameters (2 required)
Required
gammaIdOrUrlstring

The Gamma file ID or a full Gamma URL. Examples: "g5aykcic8ujm71s" or "https://gamma.app/docs/My-Deck-g5aykcic8ujm71s".

userIdstring

The viewer's user ID — the viewerId value returned by get_gamma_viewer_analytics. Only signed-in viewers are addressable; anonymous viewer IDs return a 404.

Get gammas

get_gammas
Full Description

Use this when the user wants to browse or search their existing gammas. Optionally filter by type (template, regular, or all) using the type parameter, and/or search by title using the query parameter. Every returned gamma has a type: "template" or "regular". Results are paginated; use limit to control page size and after to fetch the next page. Important: when continuing pagination, keep query and type unchanged from the previous call and only advance after. Changing query or type while reusing a cursor can produce skipped, duplicated, or otherwise inconsistent results.

Parameters (0 required, 4 optional)
Optional
afterstring

Cursor from a previous response to fetch the next page (optional). When paginating, keep query and type exactly the same as the call that produced the cursor; changing filters mid-pagination can cause skipped, duplicated, or inconsistent results.

limitinteger

Maximum number of gammas to return (optional, defaults to 25, max 50)

querystring

Search gammas by title (optional, minimum 3 characters; omit to return all gammas)

typestring

Filter by gamma type: 'template', 'regular', or 'all' (optional, defaults to all)

Options:templateregularall

Get Generation Status

get_generation_status
Full Description

Check the status of a Gamma generation previously created with 'generate', 'generate_from_template', or 'generate_multi_page_gamma'. The interactive widget already polls for completion, so do not poll this tool in a loop merely to narrate progress. When waiting to act on the final gammaUrl or Gamma ID for a follow-up edit_gamma, read_gamma, or export_gamma call, or to share the final link with the user, you may repeat checks a few seconds apart until completion; do not tight-loop.

Parameters (1 required)
Required
generationIdstring

The generation ID to check status for, or the /generations/ URL returned by a generate tool.

Get Image Generation Status

get_image_generation_status
Full Description

Checks the status and results of an image generation started with generate_image, using its imageGenerationId. If your host displays the image widget, it polls this for you — you do not need to call it. If you do NOT have a widget UI (for example a CLI or terminal client), poll it yourself, waiting a few seconds between checks (do not tight-loop), until status is "completed" (returns the image URL and its dimensions) or "failed" (returns an error); it returns "pending" while the image is still generating. Do NOT call generate_image again to check on an existing job; that starts a new, separately billed generation.

Parameters (1 required)
Required
imageGenerationIdstring

The image generation ID returned by generate_image.

Get Themes

get_themes
Full Description

Fetches available themes. Call this when the user describes visual styling (e.g., 'professional', 'colorful', 'modern', 'cute') or explicitly requests a theme. Skip this tool if the user makes no mention of themes or styling

  • Gamma's default theme works well. Query by name if the user references a specific theme; otherwise fetch the full list and match tone/color keywords to user preferences and topic.
Parameters (0 required, 1 optional)
Optional
namestring

Search themes by name (optional, only include when user specifically references a theme by name)

Read Gamma

read_gamma
Full Description

Reads the content of an existing Gamma presentation or document. Use this when the user wants to read, reference, or learn about the content of an existing Gamma. Requires the Gamma file ID or URL. CRITICAL: Present the full human-readable content of every card to the user — including all text, images, videos, embeds, charts, tables, diagrams, and other visuals. Do NOT show raw HTML or JSON. Only summarize if the user explicitly asks for a summary.

Parameters (1 required)
Required
gammaIdOrUrlstring

The Gamma file ID or a full Gamma URL. The generationId or /generations/ URL returned by a generate tool is also accepted and automatically resolves once generation completes. Examples: "g5aykcic8ujm71s" or "https://gamma.app/docs/My-Deck-g5aykcic8ujm71s".