mcpField
G
Gamma

Gamma

Local
github.com/mindstoneProductivity13Updated today

About Gamma

Gamma is an MCP server for hosts that want to create presentations, documents, webpages, and social posts in Gamma. It supports choosing themes or folders, tracking generation, and returning links or PDF/PPTX exports.

Key features

  1. 01Generate presentations, documents, webpages, and posts
  2. 02Clone and modify existing documents
  3. 03List themes and workspace folders
  4. 04Poll generation and export status
  5. 05Return Gamma links and PDF/PPTX exports

Use cases

  1. 01Create a presentation with a selected theme
  2. 02Turn a prompt into a Gamma document or webpage
  3. 03Export a generated deck as PDF or PPTX

MCP support

Exposes six tools to MCP hosts for Gamma configuration, theme and folder discovery, content generation, and status polling. Authentication uses a Gamma API key.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"mindstone-mcp-server-gamma": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-gamma"
],
"env": {
"GAMMA_API_KEY": "<GAMMA_API_KEY>",
"GAMMA_EXPORT_POLL_INTERVAL_MS": "<GAMMA_EXPORT_POLL_INTERVAL_MS>",
"GAMMA_EXPORT_POLL_MAX_ATTEMPTS": "<GAMMA_EXPORT_POLL_MAX_ATTEMPTS>",
"GAMMA_REQUEST_TIMEOUT_MS": "<GAMMA_REQUEST_TIMEOUT_MS>"
}
}
}
}
Run commandnpx -y @mindstone/mcp-server-gamma
Environment variables to set
GAMMA_API_KEYSecretGamma API key (create at https://gamma.app/settings/api-keys)
GAMMA_EXPORT_POLL_INTERVAL_MSExport poll interval in milliseconds
GAMMA_EXPORT_POLL_MAX_ATTEMPTSMaximum export poll attempts
GAMMA_REQUEST_TIMEOUT_MSOutbound HTTP request timeout in milliseconds (max 1800000)

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@mindstone/mcp-server-gamma0.4.1

Tools

6

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
api_keystringYesThe Gamma API key

Details

From the project README

@mindstone/mcp-server-gamma

npm version License: FSL-1.1-MIT

Gamma MCP server for creating Gamma presentations, documents, webpages, and social posts, listing themes and folders, and polling async generation/export status.

Best for MCP hosts that want to create Gamma decks and exports from a local package using an API key they already manage.

Status

Why this exists

Gamma's hosted MCP server is the easiest path for no-code and remote-connector flows. This package is for local MCP hosts that already manage npm packages and API keys.

It gives an assistant the useful Gamma creation loop: pick a theme or folder, start a deck/document/webpage generation, wait for it to finish, and return the Gamma link or exported PDF/PPTX. The benefit is simple: turn a prompt into a usable Gamma asset without leaving the host.

Example interaction

"Create a 10-slide investor update about Q4 results using our corporate theme and export it as PPTX."

Tools the host calls:

  1. gamma_list_themes — finds the custom theme ID.
  2. gamma_generate — starts a presentation generation with export_as: "pptx".
  3. gamma_get_status — polls until Gamma completes the deck and export.

Response (trimmed):

{
  "generation_id": "gen_123",
  "status": "completed",
  "gamma_url": "<untrusted-content source=\"gamma:generation.url\">https://gamma.app/docs/...</untrusted-content>",
  "pptx_url": "<untrusted-content source=\"gamma:generation.url\">https://...</untrusted-content>",
  "file_path": "/tmp/gamma_export_gen_123_abcd.pptx"
}

External strings (theme/folder names, theme keywords, status error text, and URLs) are returned inside <untrusted-content> envelopes so the model treats them as data, not instructions.

Requirements

  • Node.js 20+
  • npm

One-click install

Add to Cursor Add to VS Code Add to VS Code Insiders

After clicking the button, your host will prompt you to fill: GAMMA_API_KEY, GAMMA_EXPORT_POLL_INTERVAL_MS, GAMMA_EXPORT_POLL_MAX_ATTEMPTS, GAMMA_REQUEST_TIMEOUT_MS.

Manual config for Claude Desktop / Claude Code / Goose / Continue.dev (Gamma)
{
  "mcpServers": {
    "Gamma": {
      "command": "npx",
      "args": [
        "-y",
        "@mindstone/mcp-server-gamma"
      ],
      "env": {
        "GAMMA_API_KEY": "",
        "GAMMA_EXPORT_POLL_INTERVAL_MS": "5000",
        "GAMMA_EXPORT_POLL_MAX_ATTEMPTS": "12",
        "GAMMA_REQUEST_TIMEOUT_MS": "60000"
      }
    }
  }
}

Quick Start

Install & build
cd <path-to-repo>/connectors/gamma
npm install
npm run build
npx (once published)
npx -y @mindstone/mcp-server-gamma
Local
node dist/index.js

Configuration

Environment variables
  • GAMMA_API_KEY — Gamma API key
  • GAMMA_EXPORT_POLL_INTERVAL_MS — export poll interval in milliseconds (default: 5000)
  • GAMMA_EXPORT_POLL_MAX_ATTEMPTS — maximum export poll attempts (default: 12)
  • GAMMA_REQUEST_TIMEOUT_MS — optional override (positive integer ms, max 30 min) for the outbound HTTP request timeout applied to both Gamma API and host-bridge calls. Default: 60000 (60s). Raise this if you see TIMEOUT errors on slow submits; lower it if you want tighter bounds.
  • MCP_HOST_BRIDGE_STATE — host-managed bridge state file used for credential management when a host provides one; not needed for ordinary manual setup.
  • MINDSTONE_REBEL_BRIDGE_STATE — backwards-compatible alias for MCP_HOST_BRIDGE_STATE.

Host configuration examples

Claude Desktop / Cursor
{
  "mcpServers": {
    "Gamma": {
      "command": "npx",
      "args": ["-y", "@mindstone/mcp-server-gamma"],
      "env": {
        "GAMMA_API_KEY": "your-api-key"
      }
    }
  }
}
Local development (no npm publish needed)
{
  "mcpServers": {
    "Gamma": {
      "command": "node",
      "args": ["<path-to-repo>/connectors/gamma/dist/index.js"],
      "env": {
        "GAMMA_API_KEY": "your-api-key"
      }
    }
  }
}

Tools (6)

Configuration
  • configure_gamma_api_key — Configure the Gamma API key
Listing
  • gamma_list_themes — List available Gamma themes (custom and standard)
  • gamma_list_folders — List folders in the user's Gamma workspace
Generation
  • gamma_generate — Create AI-powered presentations, documents, webpages, or social posts
  • gamma_create_from_template — Clone and modify an existing Gamma document using AI
  • gamma_get_status — Poll the status of a Gamma generation

Security notes

  • Gamma API calls use GAMMA_API_KEY as an x-api-key header.
  • configure_gamma_api_key can store the key in memory, or hand it to a host bridge when MCP_HOST_BRIDGE_STATE is present.
  • Host bridge requests, when configured, go to 127.0.0.1 using the token from the bridge state file.
  • Theme and folder names and theme keyword arrays returned by gamma_list_themes / gamma_list_folders are workspace-authored text and are wrapped in <untrusted-content> envelopes so the model treats them as data, not instructions. Unknown vendor-added response fields are stripped by fail-closed Zod validation, and vendor error bodies are never written to logs or model-visible errors.
  • PDF/PPTX exports are downloaded from Gamma-provided URLs into the system temp directory. Export URLs are validated before any outbound request: HTTPS only, no userinfo, private/loopback/reserved hosts rejected, and hosts restricted to gamma.app and its subdomains. Redirects are followed manually with every hop re-validated against the same checks, and downloads are written atomically (exclusive no-follow create at an unpredictable path, mode 0600).
  • Generation can create content in the user's Gamma workspace, may consume Gamma credits, and can set workspace/external sharing options; the generation tools are annotated destructiveHint: true accordingly.

Licence

FSL-1.1-MIT — Functional Source License, Version 1.1, with MIT future licence. The software converts to MIT licence on 2030-04-08.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.