gamma-mcp-server

gamma-mcp-server

Integrates Gamma.app with AI assistants to create presentations, documents, webpages, and social posts directly from conversations.

Category
访问服务器

README

Gamma MCP Server

License: MIT Node.js Version TypeScript npm version npm downloads CI MCP SDK

A Model Context Protocol (MCP) server that integrates Gamma.app with AI assistants. Create presentations, documents, webpages, and social posts directly from your AI conversations.

Works with: Claude Code, Claude Desktop, OpenCode, GitHub Copilot CLI, Google Gemini CLI, and any other MCP-compatible AI assistant.

Features

  • Generate Content: Create professional presentations, documents, webpages, and social posts from text prompts
  • Theme Support: Browse and apply visual themes to your content
  • Folder Organization: Save generated content to specific folders
  • Template Remix: Create variations of existing Gamma templates
  • Email Sharing: Share generated content directly via email

Quick Start

1. Clone and Install

git clone https://github.com/Arkava-AI/gamma-mcp-server.git
cd gamma-mcp-server
npm install
npm run build

2. Get Your Gamma API Key

  1. Log in to gamma.app
  2. Go to Settings > API (or Settings > Members > API tab)
  3. Click Create API key
  4. Copy the key (format: sk-gamma-xxxxxxxx)

Note: Requires Gamma Pro, Ultra, Team, or Business account.

3. Configure Your AI Assistant

Choose your AI assistant below for setup instructions.


Claude Desktop (macOS / Windows / Linux)

Config File

OS Path
macOS ~/Library/Application Support/Claude/claude_desktop_config.json
Linux ~/.config/Claude/claude_desktop_config.json
Windows %APPDATA%\Claude\claude_desktop_config.json

Add to the mcpServers object:

{
  "mcpServers": {
    "gamma": {
      "command": "node",
      "args": ["/absolute/path/to/gamma-mcp-server/dist/index.js"],
      "env": {
        "GAMMA_API_KEY": "sk-gamma-your-api-key-here"
      }
    }
  }
}

Restart Claude Desktop

Restart Claude Desktop to load the new MCP server. You should see "gamma" in your MCP servers list.


Claude Code

Claude Code uses the same MCP configuration as Claude Desktop. If you've already configured Claude Desktop, you're all set.

For project-level configuration, create a .claude/settings.json file in your project directory with the same mcpServers structure shown above. This allows different projects to use different MCP server configurations.


OpenCode

Config File

Scope Path
Global (user) ~/.config/opencode/opencode.json
Project ./opencode.json (in your project root)

JSON Structure

{
  "mcp": {
    "gamma": {
      "type": "local",
      "command": ["node", "/absolute/path/to/gamma-mcp-server/dist/index.js"],
      "enabled": true,
      "environment": {
        "GAMMA_API_KEY": "sk-gamma-your-api-key-here"
      }
    }
  }
}

Note: OpenCode uses a different config format from Claude Desktop — mcp (not mcpServers), type field required ("local" or "remote"), command is an array, and env vars go under environment.

Restart OpenCode after editing the config to load the server.


GitHub Copilot CLI

Config File

  • ~/.copilot/mcp-config.json

JSON Structure

{
  "mcpServers": {
    "gamma": {
      "type": "local",
      "command": "node",
      "args": ["/absolute/path/to/gamma-mcp-server/dist/index.js"],
      "env": {
        "GAMMA_API_KEY": "sk-gamma-your-api-key-here"
      },
      "tools": ["*"]
    }
  }
}

Note: Requires the GitHub Copilot CLI (gh copilot) — not the same as OpenAI Codex.


OpenAI Codex

Config File

  • ~/.codex/config.toml (TOML format, not JSON)

TOML Structure

[mcp_servers.gamma]
command = "node"
args = ["/absolute/path/to/gamma-mcp-server/dist/index.js"]
enabled = true

[mcp_servers.gamma.env]
GAMMA_API_KEY = "sk-gamma-your-api-key-here"

Note: Codex uses TOML format, not JSON. The env section is a separate table under [mcp_servers.gamma.env].


Google Gemini CLI

Config File

Scope Path
User ~/.gemini/settings.json
Project .gemini/settings.json (in your project root)

JSON Structure

{
  "mcpServers": {
    "gamma": {
      "command": "node",
      "args": ["/absolute/path/to/gamma-mcp-server/dist/index.js"],
      "cwd": "/absolute/path/to/gamma-mcp-server",
      "env": {
        "GAMMA_API_KEY": "sk-gamma-your-api-key-here"
      },
      "timeout": 30000
    }
  }
}

Restart Gemini CLI after editing the config to load the server.


Available Tools

Tool Description
gamma_generate Create presentations, documents, webpages, or social posts
gamma_get_status Check generation progress (with optional polling)
gamma_from_template Remix existing Gamma templates
gamma_list_themes Browse available visual themes
gamma_list_folders List your Gamma folders
gamma_share_email Share content via email
gamma_health Verify server and API are reachable
gamma_archive Archive a Gamma from your workspace

gamma_generate

Create new content using Gamma's AI.

Formats & Sizes:

  • presentation: fluid, 16x9, 4x3
  • document: fluid, pageless, letter, a4
  • social: 1x1, 4x5, 9x16
  • webpage: fluid

Example prompts in your AI assistant:

  • "Create a 5-slide presentation about sustainable energy"
  • "Generate a document explaining our Q1 results"
  • "Make a social media post announcing our new product"

gamma_get_status

Check if a generation has completed. Set waitForCompletion: true to automatically poll until done.

gamma_from_template

Remix an existing Gamma with new content or variable substitutions.

{
  "templateId": "gamma_xyz789",
  "prompt": "Update for Q1 2025",
  "variables": { "company_name": "Acme Corp" }
}

Multi-Machine Setup

This repository is designed for easy deployment across multiple machines:

# On each machine:
git clone https://github.com/Arkava-AI/gamma-mcp-server.git
cd gamma-mcp-server
npm install && npm run build

# Then configure your AI assistant with the local path

To update on any machine:

git pull
npm install
npm run build
# Restart your AI assistant

Environment Variables

Variable Default Description
GAMMA_API_KEY (required) Your Gamma API key (sk-gamma-...)
GAMMA_API_BASE_URL https://public-api.gamma.app/v1.0 Override for self-hosted Gamma instances
GAMMA_POLL_INTERVAL_MS 2000 Milliseconds between status polls (default 2s)
GAMMA_MAX_POLL_ATTEMPTS 150 Max polling attempts before timeout (default 150 × 2s = 5 min)

Development

# Run in development mode with auto-reload
npm run dev

# Build for production
npm run build

# Run linting
npm run lint

# Format code
npm run format

# Type check
npm run typecheck

# Test with MCP Inspector
npm run inspect

Project Structure

gamma-mcp-server/
├── src/
│   ├── index.ts          # Main entry point
│   ├── constants.ts      # Configuration constants
│   ├── types.ts          # TypeScript interfaces
│   ├── schemas/          # Zod validation schemas
│   ├── services/         # API client and formatters
│   └── tools/            # MCP tool implementations
├── dist/                 # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
└── eslint.config.js

API Credits

Gamma uses a credit-based system for API usage. Credits are consumed per generation. Monitor your usage in the Gamma dashboard and enable auto-recharge if needed.


Troubleshooting

Error Solution
"GAMMA_API_KEY environment variable is required" Ensure env.GAMMA_API_KEY is set in your AI assistant's MCP config
"Invalid API key" Keys should start with sk-gamma-. Verify the complete key.
"Rate limit exceeded" Wait a few minutes. Contact Gamma support for higher limits.
"Insufficient credits" Top up credits or enable auto-recharge in Gamma settings.

Requirements

  • Node.js 18+
  • Gamma Pro/Ultra/Team/Business account (for API access)
  • MCP-compatible AI assistant (Claude Code, Claude Desktop, OpenCode, GitHub Copilot CLI, Gemini CLI, etc.)

Maintainer

Arkava Ltdengage@arkava.ai


License

MIT License - see LICENSE for details.


Links

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选