open-index/open-npm huggingface dataset:
npm package: @jine9323/mcp-server-twelvelabs
Description: MCP server that connects to TwelveLabs video indexing and search APIs.
Author: jine9323
Latest version: 1.0.13

# TwelveLabs MCP 서버

TwelveLabs API를 활용한 Model Context Protocol(MCP) 서버입니다.

## 기능

- 인덱스 생성 및 관리
- 비디오 업로드 및 분석
- 텍스트 기반 비디오 검색
- 비디오로부터 텍스트 생성 (트랜스크립트, 요약 등)

## 사전 요구사항

- TwelveLabs API 키
- Docker 및 Docker Compose (선택사항, 컨테이너화된 실행을 위해)
- Node.js (로컬 실행 시)

## 로컬에서 실행하기

1. 필요한 환경 변수 설정:

```bash
export TWELVELABS_API_KEY="your_api_key_here"
```

2. 종속성 설치:

```bash
npm install
```

3. 서버 실행:

```bash
npm start
```

## Docker를 사용하여 실행하기

### 방법 1: Docker Compose 사용

1. 필요한 폴더 생성:

```bash
mkdir -p data
```

2. 환경 변수 설정:

```bash
export TWELVELABS_API_KEY="your_api_key_here"
```

3. Docker Compose로 실행:

```bash
docker-compose up -d
```

### 방법 2: Docker 명령어 직접 사용

```bash
docker build -t twelvelabs-mcp .
docker run -e TWELVELABS_API_KEY="your_api_key_here" twelvelabs-mcp
```

## Portainer에서 실행 시 주의사항

Portainer에서 볼륨 문제가 발생할 경우, 다음과 같이 수동으로 볼륨을 생성하고 서비스에 연결해 보세요:

1. 볼륨 생성:

```bash
docker volume create \
  --driver local \
  --opt type=none \
  --opt device=/path/to/host/directory \
  --opt o=bind \
  twelvelabs-mcp-data
```

2. 서비스 업데이트 (N8N 환경에서):

```bash
docker service update \
  --mount-add type=volume,source=twelvelabs-mcp-data,target=/app/data \
  your_service_name
```

## 트러블슈팅

### 모듈을 찾을 수 없는 오류

이 오류는 보통 볼륨 마운트가 올바르게 설정되지 않았을 때 발생합니다. 위의 "Portainer에서 실행 시 주의사항"을 참고하세요.

### API 키 인증 오류

환경 변수 `TWELVELABS_API_KEY`가 올바르게 설정되었는지 확인하세요.

## 라이선스

MIT
npm package: @jine9323/server-twelvelabs-video
Description: MCP server that connects to TwelveLabs video indexing and search APIs.
Author: Your Company
Latest version: 1.0.1

# TwelveLabs Video MCP Server

An example [MCP](https://modelcontextprotocol.io) server that integrates with [TwelveLabs](https://docs.twelvelabs.io/) to provide:

1. **create_index**: Create a new video index  
2. **upload_videos**: Upload (YouTube) videos to the specified index  
3. **search_videos**: Perform text-based searches across an index  
4. **generate_text**: Generate text (transcript/summary) from a selected video  

## Features

- Uses [@modelcontextprotocol/sdk](https://www.npmjs.com/package/@modelcontextprotocol/sdk) to implement MCP
- Four MCP tools: `create_index`, `upload_videos`, `search_videos`, `generate_text`
- Connects to TwelveLabs via their REST API. (Mock endpoints in this example)
- Communicates over `stdio` transport by default, but can be adapted to SSE or other transport

## Getting Started

### Prerequisites

- Node.js >= 16
- A valid TwelveLabs API key
- Docker (optional, for containerized deployment)

### Installation

```bash
npm install
Set up environment
Export the environment variable TWELVELABS_API_KEY:

bash
Copy
Edit
export TWELVELABS_API_KEY="YOUR_TWELVELABS_API_KEY"
Running
bash
Copy
Edit
npm run build
npm start
This will start the MCP server listening on stdio. You can connect from an MCP client (e.g. Claude Desktop, or custom client).

Docker Build & Run
bash
Copy
Edit
docker build -t mcp/twelvelabs-video .
docker run -it --rm -e TWELVELABS_API_KEY=YOUR_KEY_HERE mcp/twelvelabs-video
Using in Claude Desktop
Update claude_desktop_config.json:

json
Copy
Edit
{
  "mcpServers": {
    "twelvelabs-video": {
      "command": "npx",
      "args": [
        "-y",
        "@mcp/server-twelvelabs-video"
      ],
      "env": {
        "TWELVELABS_API_KEY": "YOUR_KEY_HERE"
      }
    }
  }
}
Restart Claude Desktop. You should see the four tools in the "Tools" panel:

create_index

upload_videos

search_videos

generate_text

Use them in conversation or let Claude automatically call them when needed.

Notes
The calls in index.ts are examples; adapt them to the real TwelveLabs endpoints.

For advanced usage (batch indexing, different languages, callbacks), see TwelveLabs Docs.

This server structure can be easily extended to add prompts, resources, or user authentication.

markdown
Copy
Edit

---

위 예시 코드를 참고하여 실제 TwelveLabs API에 맞춰 엔드포인트나 JSON 스키마를 수정하면 됩니다. (유효한 API Key, 응답 포맷 등)

- **index.ts**에는 MCP Server의 핵심 로직이 들어있습니다.  
- **Dockerfile**로 컨테이너 빌드를 할 수 있고,  
- **package.json**, **tsconfig.json**은 TypeScript 프로젝트 설정과 의존성 관리를 위한 파일입니다.  
- **README.md**에는 사용법과 설정 방법을 정리해두었습니다.

이것으로, MCP Server를 작성하여 TwelveLabs 영상 인덱싱/검색 기능을 노출하는 간단한 예시를 마칩니다. 필요한 부분(실제 요청/응답 형식 등)은 TwelveLabs 공식 문서를 참고해 맞춰주세요.
npm package: @jine9323/twelvelabs
Description: MCP server that connects to TwelveLabs video indexing and search APIs.
Author: Your Company
Latest version: 1.0.1

# TwelveLabs MCP 서버

TwelveLabs API를 활용한 Model Context Protocol(MCP) 서버입니다.

## 기능

- 인덱스 생성 및 관리
- 비디오 업로드 및 분석
- 텍스트 기반 비디오 검색
- 비디오로부터 텍스트 생성 (트랜스크립트, 요약 등)

## 사전 요구사항

- TwelveLabs API 키
- Docker 및 Docker Compose (선택사항, 컨테이너화된 실행을 위해)
- Node.js (로컬 실행 시)

## 로컬에서 실행하기

1. 필요한 환경 변수 설정:

```bash
export TWELVELABS_API_KEY="your_api_key_here"
```

2. 종속성 설치:

```bash
npm install
```

3. 서버 실행:

```bash
npm start
```

## Docker를 사용하여 실행하기

### 방법 1: Docker Compose 사용

1. 필요한 폴더 생성:

```bash
mkdir -p data
```

2. 환경 변수 설정:

```bash
export TWELVELABS_API_KEY="your_api_key_here"
```

3. Docker Compose로 실행:

```bash
docker-compose up -d
```

### 방법 2: Docker 명령어 직접 사용

```bash
docker build -t twelvelabs-mcp .
docker run -e TWELVELABS_API_KEY="your_api_key_here" twelvelabs-mcp
```

## Portainer에서 실행 시 주의사항

Portainer에서 볼륨 문제가 발생할 경우, 다음과 같이 수동으로 볼륨을 생성하고 서비스에 연결해 보세요:

1. 볼륨 생성:

```bash
docker volume create \
  --driver local \
  --opt type=none \
  --opt device=/path/to/host/directory \
  --opt o=bind \
  twelvelabs-mcp-data
```

2. 서비스 업데이트 (N8N 환경에서):

```bash
docker service update \
  --mount-add type=volume,source=twelvelabs-mcp-data,target=/app/data \
  your_service_name
```

## 트러블슈팅

### 모듈을 찾을 수 없는 오류

이 오류는 보통 볼륨 마운트가 올바르게 설정되지 않았을 때 발생합니다. 위의 "Portainer에서 실행 시 주의사항"을 참고하세요.

### API 키 인증 오류

환경 변수 `TWELVELABS_API_KEY`가 올바르게 설정되었는지 확인하세요.

## 라이선스

MIT