Trakt

🎬 MCP Trakt: AI를 엔터테인먼트 데이터로 연결하는 게이트웨이

AI 언어 모델과 Trakt.tv API를 연결하는 MCP(Model Context Protocol) 서버로, LLM이 실시간 엔터테인먼트 데이터와 개인 Trakt 시청 기록에 액세스할 수 있도록 합니다.

🖥️ AI 실험

이 단락을 제외한 모든 내용은 코드를 포함하여 AI가 생성했습니다. MCP에 대해 더 자세히 알아보고 싶었고, Cursor를 많이 다루어 왔기 때문에 이 두 가지를 하나로 합치는 것이 자연스러운 다음 단계라고 생각했습니다. 그 결과 이 프로젝트가 탄생했습니다. 앞으로의 모든 변경 사항 역시 AI가 처리할 것입니다.

🤖 MCP란 무엇인가요?

MCP(Model Context Protocol)는 Claude와 같은 대규모 언어 모델(LLM)이 외부 시스템 및 데이터 소스와 상호 작용할 수 있도록 하는 개방형 사양입니다.

MCP는 AI 모델이 다음을 수행할 수 있는 표준화된 방법을 만듭니다.

  • 교육 마감일 이후 실시간 데이터에 액세스하세요
  • 전용 서버를 통해 외부 API 및 웹 서비스에 연결
  • 전문 도구 및 기능을 안전하게 실행하세요
  • 외부 리소스에서 읽기 및 쓰기
  • 텍스트 전용 형식으로는 처리하기 어려운 복잡한 데이터를 처리합니다.

MCP의 핵심은 다음을 정의하여 작동합니다.

  1. 리소스 : AI가 읽거나 쓸 수 있는 구조화된 데이터 소스(예 trakt://shows/trending )
  2. 도구 : AI가 특정 작업( fetch_trending_shows 등)을 수행하기 위해 호출할 수 있는 기능
  3. 세션 : AI와 MCP 서버 간의 보안 연결

이와 같은 MCP 서버는 AI 모델과 외부 세계 간의 브리지 역할을 하며, 재교육 없이도 새로운 기능으로 확장할 수 있습니다.

📺 Trakt란 무엇인가요?

Trakt.tv는 시청하는 TV 프로그램과 영화를 자동으로 추적하는 플랫폼입니다. 이 서비스는 다음과 같은 기능을 제공합니다.

  • 다양한 스트리밍 서비스에서 시청 습관을 종합적으로 추적
  • 친구들과 시청 내용을 공유하고 토론할 수 있는 소셜 기능
  • 시청 기록을 기반으로 한 개인화된 추천
  • 개발자가 애플리케이션을 구축하는 데 사용할 수 있는 광범위한 API

Trakt는 다음과 같은 기능으로 엔터테인먼트 추적의 표준이 되었습니다.

  • 1,400만 명 이상의 사용자가 시청 습관을 추적하고 있습니다.
  • 자세한 메타데이터를 포함한 수백만 개의 영화 및 TV 쇼에 대한 데이터
  • 인기 있는 미디어 플레이어 및 스트리밍 서비스와의 통합

이 MCP 서버는 Trakt의 풍부한 API 생태계를 활용하여 Claude와 같은 AI 도우미와의 대화에 실시간 엔터테인먼트 데이터를 직접 제공합니다.

🚀 커서 개발 경험

이 프로젝트 전체는 AI 시대를 위해 개발된 코드 편집기인 Cursor를 사용하여 개발되었으며, Claude 3.7 Sonnet이 모든 코드를 생성했습니다. 이러한 접근 방식은 다음을 보여줍니다.

  • AI 지원 개발을 통해 특수 MCP 서버 구축을 획기적으로 가속화할 수 있는 방법
  • 기능적이고 잘 구성된 코드를 작성하는 현대 AI의 역량
  • 인간의 의도와 AI 구현 간의 협업 워크플로

✨ 특징

🌎 공공 교통 데이터

  • 인기 있는 인기 프로그램과 영화에 접속하세요
  • 가장 많이 즐겨찾고, 재생되고, 시청된 콘텐츠를 찾아보세요
  • Trakt의 글로벌 커뮤니티에서 실시간 데이터를 얻으세요
  • 제목, 연도 및 인기 지표가 포함된 형식화된 응답

👤 개인 트랙트 데이터

  • 시청한 프로그램 보기 : 개인적으로 시청한 프로그램의 전체 목록을 확인하세요
  • 각 시리즈의 정확한 마지막 시청 날짜를 확인하세요
  • 각 쇼를 몇 번 시청했는지 추적하세요
  • 현재 시청 중인 쇼를 체크인하여 시청한 것으로 표시하세요.
    • 쇼 ID(더 정확함) 또는 쇼 제목(더 편리함)으로
    • Twitter, Mastodon 또는 Tumblr에 체크인 공유
    • 체크인에 사용자 정의 메시지를 포함하세요
    • 사람이 읽을 수 있는 형식으로 에피소드를 시청한 시간을 확인하세요.
  • 쇼를 검색하여 세부 정보와 ID를 찾으세요
  • Trakt를 통한 장치 코드 흐름을 통한 보안 인증
  • 개인 데이터는 Trakt 계정에서 직접 가져옵니다.

🔄 일반 기능

  • MCP 리소스를 통해 Trakt API 데이터를 노출합니다.
  • 실시간 엔터테인먼트 정보를 가져오기 위한 도구를 제공합니다.
  • AI 모델이 개인화된 엔터테인먼트 추천을 제공할 수 있도록 지원
  • 간단한 인증 및 로그아웃 프로세스

📺 현재 인기 있는 프로그램

2025년 4월부터 다음과 같은 인기 프로그램을 시청할 수 있습니다.

  • "화이트 로터스"(2021) - 7,870명 시청
  • "데어데블: 본 어게인"(2025) - 6,738명 시청
  • 세브란스(2022) - 4,507명 시청

🎥 현재 인기 영화

지금 가장 인기 있는 영화:

  • "블랙백"(2025) - 1,491명 시청
  • "일하는 남자"(2025) - 1,226명 시청
  • "미키 17"(2025) - 764명 시청

🔌 사용 가능한 리소스

리소스 표시

의지설명예시 데이터
trakt://shows/trending지난 24시간 동안 가장 많이 시청된 쇼쇼 제목, 연도, 시청자 수
trakt://shows/popular시청률 기준 가장 인기 있는 쇼쇼 제목, 연도, 인기 점수
trakt://shows/favorited가장 많이 선호되는 쇼제목, 연도, 즐겨찾기 수 표시
trakt://shows/played가장 많이 재생된 쇼쇼 제목, 연도, 재생 횟수
trakt://shows/watched고유 사용자가 가장 많이 시청한 쇼쇼 제목, 연도, 시청자 수

영화 자료

의지설명예시 데이터
trakt://movies/trending지난 24시간 동안 가장 많이 시청된 영화영화 제목, 연도, 시청자 수
trakt://movies/popular평점 기준 가장 인기 있는 영화영화 제목, 연도, 인기곡
trakt://movies/favorited가장 좋아하는 영화영화 제목, 연도, 좋아하는 영화 수
trakt://movies/played가장 많이 재생된 영화영화 제목, 연도, 재생 횟수
trakt://movies/watched고유 사용자가 가장 많이 시청한 영화영화 제목, 연도, 시청자 수

사용자 리소스

의지설명예시 데이터
trakt://user/auth/status현재 인증 상태인증 상태, 토큰 만료
trakt://user/watched/shows인증된 사용자가 시청한 쇼쇼 제목, 연도, 마지막 시청 날짜, 재생 횟수
trakt://user/watched/movies인증된 사용자가 시청한 영화영화 제목, 연도, 마지막 시청 날짜, 재생 횟수

🛠️ 사용 가능한 도구

도구 표시

지엑스피1

영화 도구

# Get trending movies with optional limit parameter fetch_trending_movies(limit=10) # Get popular movies with optional limit parameter fetch_popular_movies(limit=10) # Get favorited movies with optional limit and period parameters fetch_favorited_movies(limit=10, period="weekly") # Get most played movies with optional limit and period parameters fetch_played_movies(limit=10, period="weekly") # Get most watched movies with optional limit and period parameters fetch_watched_movies(limit=10, period="weekly")

인증 및 사용자 도구

# Start the device authorization flow with Trakt start_device_auth() # Check the status of an ongoing authentication check_auth_status() # Clear authentication (logout) clear_auth() # Fetch shows watched by the authenticated user fetch_user_watched_shows(limit=0) # 0 for all shows # Fetch movies watched by the authenticated user fetch_user_watched_movies(limit=0) # 0 for all movies

체크인 도구

# Method 1: Check in using show ID (recommended when precision is important) # First use search_shows to find the correct show ID search_shows(query="Breaking Bad", limit=5) # Then use the ID for check-in checkin_to_show( season=1, episode=3, show_id="1388", message="Loving this show!" ) # Method 2: Check in using show title (more convenient) checkin_to_show( season=1, episode=1, show_title="Breaking Bad", show_year=2008, # Optional but helps with accuracy message="I'm the one who knocks!", share_twitter=True, share_mastodon=False, share_tumblr=False )

🔐 인증

서버는 Trakt의 장치 인증 흐름을 사용합니다.

  1. 사용자별 데이터를 요청하면 필요한 경우 서버가 자동으로 인증을 시작합니다.
  2. 브라우저에서 방문할 수 있는 코드와 URL이 제공됩니다.
  3. Trakt 웹사이트에 코드를 입력하고 앱을 승인한 후 Claude에게 승인을 완료했다고 알려주세요.
  4. Claude는 인증 상태를 확인한 후 개인 데이터를 가져옵니다.
  5. 귀하의 인증 토큰은 향후 요청을 위해 안전하게 저장됩니다.

clear_auth 도구를 사용하면 언제든지 로그아웃할 수 있습니다.

🚀 설정

  1. 이 저장소를 복제하세요
    git clone https://github.com/yourusername/mcp-trakt.git cd mcp-trakt
  2. 종속성 설치
    pip install -r requirements.txt
  3. 환경 설정
    cp .env.example .env
    그런 다음 .env 편집하여 Trakt API 자격 증명을 추가합니다.
    TRAKT_CLIENT_ID=your_client_id TRAKT_CLIENT_SECRET=your_client_secret
  4. 서버를 실행하세요
    python server.py

🧪 개발 및 테스트

MCP Inspector로 테스트

mcp dev server.py

Claude Desktop에 설치

mcp install server.py

📝 클로드와 함께 사용

설치가 완료되면 Claude에게 다음과 같은 질문을 할 수 있습니다.

  • "요즘 인기 있는 쇼는 뭐예요?"
  • "이번 주 인기 영화 몇 편 추천해 줄 수 있어?"
  • "이번 달에 가장 많이 시청된 쇼는 무엇인가요?"
  • "내가 본 프로그램을 보여주세요"(인증 필요)
  • "제가 마지막으로 본 쇼는 무엇이었나요?" (인증 필요)
  • "내가 본 영화를 보여주세요"(인증 필요)
  • "제가 마지막으로 본 영화는 뭐였죠?" (인증 필요)
  • "브레이킹 배드"와 같은 쇼를 검색하세요
  • "브레이킹 배드 시즌 2 5화에 체크인해 주세요"(제목 사용)
  • "쇼 ID 1388의 시즌 1 에피소드 3을 체크인하고 트위터에서 공유해 주세요"(ID 사용)

Claude는 이 MCP 서버를 사용하여 Trakt의 실시간 데이터를 제공합니다.

👤 개인 데이터 접근

인증을 통해 다음에 액세스할 수 있습니다.

  • 시청한 전체 쇼 및 영화 기록
  • 각 쇼와 영화의 마지막 시청 날짜
  • 각 쇼와 영화를 시청한 횟수
  • 현재 시청 중인 쇼에 체크인하고 진행 상황을 추적하세요
  • 개인 시청 통계
  • 소셜 미디어 플랫폼에서 시청 활동을 공유하세요

모든 데이터는 실시간으로 귀하의 Trakt 계정에서 직접 가져옵니다.

🔮 향후 개발

  • 더 많은 개인 데이터에 액세스하기 위해 사용자 인증 확장
  • 예정된 에피소드에 대한 캘린더 이벤트 추가
  • 스크로블링 지원(시청 내용 추적)
  • 시청 기록에 따른 추천 구현
  • 쇼뿐만 아니라 영화도 포함하도록 검색 범위 확장
  • 공유를 위한 더 많은 소셜 미디어 플랫폼 지원 추가

📄 라이센스

MIT 라이센스


ID: i7vhmgvc4t