AI内容生成服务器

Gamma MCP服务器是一个通过Model Context Protocol(MCP)使AI助手能够利用Gamma.app API生成演示文稿、文档和社交媒体内容的服务。

  • by statechangelabs
  • JavaScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 statechangelabs/gamma-app-mcp

使用说明

Gamma MCP服务器

MCP(模型上下文协议)服务器,使人工智能助手能够使用Gamma.app API生成Gamma演示文稿、文档和社交媒体帖子。

什么是MCP?

模型上下文协议(MCP)允许像克劳德这样的人工智能助手与外部工具和数据源进行交互。此服务器将Gamma的AI生成功能暴露给任何兼容MCP的客户端。

特性

  • 🎨 生成演示文稿、文档和社交媒体帖子
  • 🤖 基于人工智能的内容生成,具有可定制的选项
  • 🎭 主题支持,打造一致的品牌
  • 📝 多种文本模式:生成、压缩或保留
  • 🖼️ 图像生成选项(AI生成或Unsplash)
  • 📊 导出为PDF或PPTX
  • 🌍 多语言支持

先决条件

  • Node.js 18或更高版本
  • 具有API访问权限的Gamma.app帐户
  • Gamma API密钥(从 Gamma.app API设置)

安装与使用

生产模式(通过NPM)

发布到NPM后,您可以直接使用服务器 npx:

  1. 配置您的MCP客户端 (例如,Claude Desktop)通过在配置文件中添加以下内容:

    macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    视窗: %APPDATA%\Claude\claude_desktop_config.json

    {
      "mcpServers": {
        "gamma": {
          "command": "npx",
          "args": ["-y", "@raydeck/gamma-app-mcp"],
          "env": {
            "GAMMA_API_KEY": "your-gamma-api-key-here"
          }
        }
      }
    }
    
  2. 重新启动MCP客户端 加载服务器

本地开发/测试模式

发布前的测试和开发:

  1. 克隆/导航到存储库:

    cd /path/to/gamma-mcp
    
  2. 安装依赖项:

    npm install
    
  3. 构建项目:

    npm run build
    
  4. 配置您的MCP客户端 使用本地路径:

    macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    视窗: %APPDATA%\Claude\claude_desktop_config.json

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

    使用npm链接的替代方案:

    # In the gamma-mcp directory
    npm link
    
    # Then in your MCP config:
    {
      "mcpServers": {
        "gamma": {
          "command": "gamma-mcp",
          "env": {
            "GAMMA_API_KEY": "your-gamma-api-key-here"
          }
        }
      }
    }
    
  5. 重新启动MCP客户端

开发模式(带自动重新加载)

对于使用TypeScript热重载的主动开发:

npm run dev

这将直接从TypeScript源代码运行服务器,使用 tsx.

配置

环境变量

  • GAMMA_API_KEY (必需):您的Gamma API密钥

可用工具

generate_gamma

生成人工智能驱动的Gamma内容(演示文稿、文档或社交帖子)。

备注:此工具返回生成ID。使用 get_gamma_generation 工具自动等待完成并检索最终URL。

参数

参数 类型 必填 说明
inputText string ✅ 要生成的文本内容(1-400000个字符)。可以是简短的提示、凌乱的笔记或精致的内容。
textMode string ❌ 如何处理输入: generate, condense,或 preserve (默认值: generate)
format string ❌ 输出格式: presentation, document,或 social (默认值: presentation)
themeName string ❌ 要使用的特定主题的名称。 仅当用户明确按名称请求自定义主题时使用。 主题必须存在于Gamma工作区中。省略此参数以使用Gamma的默认主题选择。
numCards 编号 ❌ 要生成的卡片/幻灯片数量(Pro为1-60,Ultra为1-75,默认值:10)
cardSplit string ❌ 如何分割内容: auto 或 inputTextBreaks (默认值: auto)
additionalInstructions string ❌ 内容和布局的附加说明(1-500个字符)
exportAs string ❌ 导出格式: pdf 或 pptx

文本选项

参数 类型 说明
textOptions.amount string 每张卡的文本量: brief, medium, detailed,或 extensive
textOptions.tone string 内容的语调
textOptions.audience string 目标受众
textOptions.language string 输出语言代码(例如,'en'、'es'、'fr')

图像选项

参数 类型 说明
imageOptions.source string 图像源: aiGenerated 或 unsplash
imageOptions.model string 用于图像生成的AI模型
imageOptions.style string 生成图像的艺术风格

卡选项

参数 类型 说明
cardOptions.dimensions string 卡片尺寸: fluid, 16x9,或 4x3

共享选项

参数 类型 说明
sharingOptions.workspaceAccess string 工作区访问级别

示例用法

与Claude或其他MCP客户端一起使用时:

Create a 10-slide presentation about "The Future of AI" with a professional tone, 
targeted at business executives, using medium text amount and AI-generated images.

AI将使用这样的工具:

{
  "inputText": "The Future of AI - covering trends, opportunities, and challenges",
  "format": "presentation",
  "numCards": 10,
  "textOptions": {
    "amount": "medium",
    "tone": "professional",
    "audience": "business executives"
  },
  "imageOptions": {
    "source": "aiGenerated"
  }
}

get_gamma_generation

检索Gamma生成的状态和URL。 每5秒自动轮询一次 直到生成完成(推荐 API伽马).

参数

参数 类型 必填 说明
generationId string ✅ 从返回的生成ID generate_gamma
pollUntilComplete boolean ❌ 是否自动轮询直到完成(默认值: true)
maxWaitSeconds 编号 ❌ 轮询时的最长等待时间(秒)(默认值: 300 =5分钟)

自动轮询(默认行为)

默认情况下,该工具 每5秒自动轮询一次 直到生成完成或失败:

  • ✅ 遵循Gamma API建议(5秒间隔)
  • ✅ 准备就绪时返回最终URL
  • ✅ 5分钟后超时(可配置)
  • ✅ 简单的单一工具调用-无需手动轮询

响应

该工具返回一个JSON响应,其中包含:

  • 状态: pending, processing, completed,或 failed
  • 统一资源定位符:链接到生成的Gamma(可在Gamma应用程序中编辑)
  • 导出URL:PDF或PPTX下载链接(如果在生成过程中要求)

示例用法

自动轮询(推荐):

{
  "generationId": "abc123"
}

等待完成并返回最终URL

自定义超时:

{
  "generationId": "abc123",
  "maxWaitSeconds": 600
}

等待最多10分钟

单一状态检查(无轮询):

{
  "generationId": "abc123",
  "pollUntilComplete": false
}

立即返回当前状态,无需等待

响应格式

generate_gamma 响应

返回来自Gamma API的JSON响应,其中包含:

  • 世代ID(与 get_gamma_generation)
  • 初始状态

get_gamma_generation 响应

退货:

  • 当前状态(待定、正在处理、已完成、失败)
  • Gamma URL(完成时)
  • PDF/PPTX导出链接(如果需要)

开发工作流程

项目结构

gamma-mcp/
├── src/
│   └── index.ts          # Main server implementation
├── dist/                 # Compiled JavaScript output
├── package.json          # NPM package configuration (includes mcpName for registry validation)
├── server.json           # MCP registry metadata
├── tsconfig.json
└── README.md

备注:The server.json 需要文件才能发布到 MCP注册表。它包含有关服务器的元数据,包括其命名空间(io.github.statechangelabs/gamma-app-mcp)、包信息和部署配置。

建筑

npm run build

这将TypeScript编译为JavaScript dist/ 目录。

正在验证服务器.json

在发布到MCP注册表之前,您可以验证您的 server.json:

npm run validate

这将检查您的 server.json 具有所有必需的字段,并且对于MCP注册表结构正确。

本地测试

  1. 对以下内容进行更改 src/index.ts
  2. 跑 npm run build 编写
  3. 重新启动MCP客户端以重新加载服务器
  4. 使用您的AI助手进行测试

向NPM发布

准备发布时:

  1. 更新版本 在 package.json 和 server.json:

    npm version patch  # or minor, or major
    

    然后更新 version 字段在 server.json 为了匹配。

  2. 构建项目:

    npm run build
    
  3. 发布到NPM:

    npm publish --access public
    
  4. 然后,用户可以通过以下方式安装:

    npx @raydeck/gamma-app-mcp
    

发布到MCP注册表

发布到NPM后,您可以发布到官方MCP注册表,使您的服务器可被发现:

  1. 安装MCP发布器CLI:

    # macOS/Linux with Homebrew
    brew install mcp-publisher
    
    # Or download pre-built binaries from:
    # https://github.com/modelcontextprotocol/registry/releases
    
  2. 通过GitHub进行身份验证 (为 io.github.* 命名空间):

    mcp-publisher login github
    
  3. 发布到注册表:

    mcp-publisher publish
    
  4. 验证发布:

    curl "https://registry.modelcontextprotocol.io/v0/servers?search=io.github.statechangelabs/gamma-app-mcp"
    

有关详细说明,请参阅 官方出版指南.

故障排除

服务器未启动

  • 验证 GAMMA_API_KEY 在MCP配置中设置正确
  • 检查Node.js版本是否为18或更高
  • 确保配置中的路径是绝对正确的

API错误

  • 验证您的Gamma API密钥是否有效
  • 检查您是否有足够的API信用
  • 查看API伽马文件中的参数要求

MCP客户端未检测到服务器

  • 确保配置JSON有效(使用JSON验证器)
  • 配置更改后重新启动MCP客户端
  • 检查客户端日志中的错误消息

资源

许可证

国际协调委员会

作者

Ray Deck

支持

对于问题和疑问: