mcp-gamma-tool
v1.0.5
Published
MCP server for Gamma API integration
Maintainers
Readme
MCP Gamma Tool
Gamma API를 MCP(Model Context Protocol)를 통해 언제든지 접근할 수 있게 해주는 도구입니다.
설치 및 사용
npm 패키지로 사용 (권장)
연구원분들은 npx를 통해 바로 사용할 수 있습니다:
npx mcp-gamma-tool@latest또는 MCP 클라이언트 설정에서:
{
"mcpServers": {
"gamma-api": {
"command": "npx",
"args": ["-y", "mcp-gamma-tool@latest"]
}
}
}환경 변수 (선택사항):
GAMMA_API_BASE_URL: Gamma API의 기본 URL (기본값:https://api.gamma.app)GAMMA_API_PREFIX: API 경로 접두사 (선택사항, 예:api/v1,v1등). 404 오류가 발생하는 경우 이 값을 설정해보세요.
참고: API 키는 소스 코드에 포함되어 있어 별도 설정이 필요 없습니다.
로컬 개발
# 저장소 클론
git clone <repository-url>
cd mcp-gamma-tool
# 의존성 설치
npm install
# 빌드
npm run build
# 개발 모드 실행
npm run dev사용 가능한 도구
1. gamma_create_presentation
새로운 Gamma 프레젠테이션을 생성합니다.
매개변수:
title(선택): 프레젠테이션 제목content(선택): 프레젠테이션 콘텐츠 (JSON 형식)
2. gamma_get_presentation
특정 프레젠테이션의 정보를 조회합니다.
매개변수:
id(필수): 프레젠테이션 ID
3. gamma_list_presentations
모든 프레젠테이션 목록을 조회합니다.
매개변수:
limit(선택): 최대 반환 개수 (기본값: 50)offset(선택): 페이지 오프셋 (기본값: 0)
4. gamma_update_presentation
프레젠테이션을 업데이트합니다.
매개변수:
id(필수): 프레젠테이션 IDtitle(선택): 새로운 제목content(선택): 업데이트할 콘텐츠
5. gamma_delete_presentation
프레젠테이션을 삭제합니다.
매개변수:
id(필수): 프레젠테이션 ID
6. gamma_export_presentation
프레젠테이션을 특정 형식으로 내보냅니다 (PDF, PPTX, HTML).
매개변수:
id(필수): 프레젠테이션 IDformat(선택): 내보낼 형식 - "pdf", "pptx", "html" (기본값: "pdf")
MCP 클라이언트 설정
MCP를 지원하는 모든 클라이언트(예: Cursor, Claude Desktop, Continue 등)에서 사용할 수 있습니다.
방법 1: npx 사용 (권장 - 모든 환경에서 동일)
npm 패키지로 배포되어 있으므로 어디서든 동일하게 사용 가능:
{
"mcpServers": {
"gamma-api": {
"command": "npx",
"args": ["-y", "mcp-gamma-tool@latest"]
}
}
}API 키는 소스 코드에 포함되어 있어 별도 설정이 필요 없습니다.
404 오류 해결 방법:
API 호출 시 404 오류가 발생하는 경우, GAMMA_API_PREFIX 환경 변수를 설정해보세요. 많은 API가 /api/v1 또는 /v1 같은 접두사를 사용합니다. 예:
GAMMA_API_PREFIX:api/v1→ 최종 URL:https://api.gamma.app/api/v1/presentationsGAMMA_API_PREFIX:v1→ 최종 URL:https://api.gamma.app/v1/presentationsGAMMA_API_PREFIX미설정 → 최종 URL:https://api.gamma.app/presentations
방법 2: 로컬 개발 시
로컬에서 개발 중이라면:
{
"mcpServers": {
"gamma-api": {
"command": "npm",
"args": ["start"],
"cwd": "프로젝트_절대_경로",
"env": {
"GAMMA_API_PREFIX": "api/v1"
}
}
}
}서버 배포 (HTTP 서버 모드)
HTTP 서버 모드로 배포하면 여러 사용자가 동시에 접근할 수 있습니다.
방법 1: PM2를 사용한 배포 (권장)
# 의존성 설치
npm install
# 빌드
npm run build
# PM2 전역 설치 (처음 한 번만)
npm install -g pm2
# 서버 시작
pm2 start ecosystem.config.js --env production
# 서버 상태 확인
pm2 status
# 로그 확인
pm2 logs mcp-gamma-tool
# 서버 중지
pm2 stop mcp-gamma-tool
# 서버 재시작
pm2 restart mcp-gamma-tool
# 시스템 재부팅 시 자동 시작 설정
pm2 startup
pm2 save방법 2: Docker를 사용한 배포
# Docker 이미지 빌드
docker build -t mcp-gamma-tool .
# Docker 컨테이너 실행
docker run -d \
--name mcp-gamma-tool \
-p 5100:5100 \
-e GAMMA_API_BASE_URL=https://api.gamma.app \
--restart unless-stopped \
mcp-gamma-tool
# 또는 docker-compose 사용
docker-compose up -d
# 컨테이너 로그 확인
docker logs -f mcp-gamma-tool
# 컨테이너 중지
docker stop mcp-gamma-tool
# 컨테이너 재시작
docker restart mcp-gamma-tool방법 3: 직접 실행
# 의존성 설치
npm install
# 빌드
npm run build
# 서버 시작
npm run start:server
# 또는 환경 변수와 함께
PORT=5100 GAMMA_API_BASE_URL=https://api.gamma.app npm run start:serverHTTP API 사용 방법
서버가 실행되면 다음 엔드포인트를 사용할 수 있습니다:
- 헬스 체크:
GET http://localhost:5100/health - 도구 목록:
GET http://localhost:5100/tools - 도구 실행:
POST http://localhost:5100/tools/:toolName
예시: 프레젠테이션 목록 조회
curl -X POST http://localhost:5100/tools/gamma_list_presentations \
-H "Content-Type: application/json" \
-d '{"arguments": {"limit": 10}}'예시: 프레젠테이션 생성
curl -X POST http://localhost:5100/tools/gamma_create_presentation \
-H "Content-Type: application/json" \
-d '{"arguments": {"title": "새 프레젠테이션"}}'MCP 클라이언트에서 HTTP 서버 사용
HTTP 서버를 사용하는 경우, MCP 클라이언트 설정에서 HTTP 엔드포인트를 지정할 수 있습니다:
{
"mcpServers": {
"gamma-api": {
"url": "http://your-server:5100",
"transport": "http"
}
}
}환경 변수
.env 파일을 생성하거나 환경 변수로 설정:
# .env 파일
GAMMA_API_BASE_URL=https://api.gamma.app
GAMMA_API_PREFIX=
PORT=5100
NODE_ENV=production배포 (npm 패키지)
npm 패키지로 배포하려면:
# 빌드
npm run build
# npm 로그인 (처음 한 번만)
npm login
# 배포
npm publish --access public참고: 패키지 이름은 mcp-gamma-tool입니다. npm에 배포하면 전 세계 누구나 사용할 수 있습니다.
라이선스
MIT
