Skip to main content
Glama
twelvelabs-mcp-server

twelvelabs-mcp-server

by micro-JAY

TwelveLabs MCP Server

이 프로젝트는 TwelveLabs(비디오 이해 플랫폼)와 관련이 없습니다. 이는 ElevenLabs Conversational AI API — 음성 에이전트, 지식 베이스, 대화, TTS를 위한 MCP 서버입니다. "TwelveLabs"라는 이름은 프로젝트 코드명일 뿐입니다.

향상된 MCP(Model Context Protocol) 서버로, 호환되는 모든 MCP 클라이언트가 ElevenLabs Conversational AI API에 직접 접근할 수 있게 해줍니다. 공식 ElevenLabs MCP 커넥터가 제공하지 않는 기능도 포함합니다.

다루는 내용

  • 에이전트 -- 목록 조회, 전체 구성 가져오기(LLM 모델 + 온도 포함), 프롬프트/설정 업데이트, 웹훅 및 파일 업로드 관리

  • 지식 베이스 -- 목록 조회, 전체 내용 읽기, 텍스트/URL 문서 추가, 문서 삭제

  • 대화 -- 기록 필터링 및 태그 지정, 대화록 검사, 통화 후 분석/평가 재실행

  • 음성 -- 사용 가능한 음성 목록 및 검색

Related MCP server: elevenlabs-mcp-experiments

사전 요구 사항

  • Node.js >= 18

  • ElevenLabs API 키 -- elevenlabs.io에서 받으세요.

빠른 시작

옵션 A: npx (클론 불필요)

ELEVENLABS_API_KEY=your-key npx twelvelabs-mcp-server

옵션 B: 클론 및 빌드

git clone https://github.com/micro-JAY/twelvelabs-mcp-server.git
cd twelvelabs-mcp-server
npm install --include=dev
npm run build

MCP 클라이언트 연결

MCP 클라이언트 구성에 동일한 서버 항목을 추가하세요. 구성 파일 위치와 주변 구문은 클라이언트에 따라 다릅니다. 다음은 표준 stdio 서버 정의입니다:

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

MCP 클라이언트를 다시 시작하거나 다시 연결하세요. 사용 가능한 도구 목록에 twelvelabs가 표시됩니다.

사용 방법

MCP 지원 어시스턴트에게 도구를 사용하도록 요청하세요. 예:

"내 에이전트 목록을 보여줘" "agent_1001kjbh14xce5kbreh55ydf4rae의 전체 구성을 가져와" "그 에이전트의 최근 대화 10개를 보여줘" "conversation_xyz의 대화록과 분석을 가져와"

호환성

이 서버는 stdio 전송을 지원하고 로컬 서버 프로세스에 대한 환경 변수를 구성할 수 있는 MCP 클라이언트와 함께 작동합니다. 원격 HTTP MCP 서버만 지원하는 클라이언트는 호환되는 stdio 브리지 또는 프록시가 필요합니다.

도구 참조

에이전트 도구

도구

기능

twelvelabs_list_agents

계정의 모든 에이전트 나열

twelvelabs_get_agent

전체 구성: LLM 모델, 음성, KB 문서, 웹훅, 프롬프트 미리보기

twelvelabs_get_agent_prompt

잘리지 않은 전체 시스템 프롬프트 텍스트

twelvelabs_update_agent_prompt

시스템 프롬프트 및/또는 첫 메시지 교체

twelvelabs_update_agent_settings

온도, 음성, TTS 설정, 언어 변경

twelvelabs_update_agent_conversation_capabilities

채팅 파일 업로드 활성화 및 최대 지속 시간 메시지 설정

twelvelabs_list_agent_conversations

한 에이전트의 최근 대화

twelvelabs_get_agent_webhook

현재 웹훅 URL

twelvelabs_set_agent_webhook

웹훅 URL 설정 또는 제거

지식 베이스 도구

도구

기능

twelvelabs_list_kb_docs

크기와 생성 날짜가 포함된 모든 KB 문서

twelvelabs_get_kb_doc

문서의 전체 추출 텍스트 내용

twelvelabs_add_kb_text

일반 텍스트 문서 추가

twelvelabs_add_kb_url

URL로 웹 페이지 추가

twelvelabs_delete_kb_doc

문서 영구 삭제

대화 도구

도구

기능

twelvelabs_list_conversations

에이전트, 시간, 성공, 기간, 평점, 상태, 태그로 기록 필터링

twelvelabs_get_conversation

전체 대화록, 오디오/태그 메타데이터, 데이터 수집, 평가 결과

twelvelabs_rerun_conversation_analysis

현재 에이전트 설정을 사용하여 완료된 대화 재분석

twelvelabs_rerun_conversation_evaluation

완료된 대화에 대한 단일 평가 기준 재실행

twelvelabs_list_conversation_tags

워크스페이스 대화 태그 나열

twelvelabs_create_conversation_tag

워크스페이스 대화 태그 생성

twelvelabs_update_conversation_tag

태그 이름 변경 또는 설명 수정

twelvelabs_assign_conversation_tags

대화에 하나 이상의 태그 적용

twelvelabs_remove_conversation_tag

대화에서 태그 제거

twelvelabs_delete_conversation_tag

워크스페이스 대화 태그 영구 삭제

음성 도구

도구

기능

twelvelabs_list_voices

ID와 라벨이 포함된 사용 가능한 음성 탐색

보안

  • 입력 검증 -- 모든 도구 매개변수는 API에 도달하기 전에 Zod 스키마로 검증됩니다.

  • HTTPS 강제 -- 웹훅 URL은 HTTPS만 사용하도록 검증됩니다.

  • 경로 탐색 보호 -- 문서 및 에이전트 ID는 경로 탐색을 방지하기 위해 정화됩니다.

  • 오류 정화 -- 내부 오류는 포착되어 안전한 MCP 오류 응답으로 반환됩니다. 원시 스택 추적은 클라이언트에 노출되지 않습니다.

개발

npm run dev   # watch mode with tsx -- auto-reloads on file changes
npm run build # compile to dist/

기여

  1. 저장소를 포크하세요.

  2. 기능 브랜치를 만드세요 (git checkout -b feat/my-feature)

  3. 변경 사항을 커밋하세요 (git commit -m 'feat: add my feature')

  4. 브랜치에 푸시하세요 (git push origin feat/my-feature)

  5. Pull Request를 여세요.

라이선스

MIT -- 자세한 내용은 LICENSE를 참조하세요.

아키텍처 참고

모든 도구는 시작 시 ELEVENLABS_API_KEY로 초기화되는 단일 Axios 클라이언트 인스턴스(src/client.ts)를 공유합니다. 도구 구현은 src/tools/에 있으며, 도메인별로 하나의 파일로 구성되고 src/index.ts의 McpServer에 등록됩니다. 서버는 stdio 전송(stdin/stdout)을 통해 통신하므로 모든 디버그 로깅은 console.log가 아닌 console.error(stderr)를 사용합니다.

Related MCP Connectors

Related MCP Servers