Skip to main content
Glama
movie-reservation-platform-lab

Movie Recommendation MCP

Movie Recommendation MCP

Rust 영화 추천 API용 FastMCP 래퍼.

이 저장소는 MCP 구성 요소가 독립적인 CI 및 아티팩트 파이프라인을 가질 수 있도록 movie-reservation-platform-lab/movie-recommendation-service/axum-tools-mcp에서 추출되었습니다.

실행

uv run movie-recommendation-mcp

프로덕션 컨테이너는 UID 10001로 실행되며 포트 8092에서 수신 대기합니다:

docker build --tag movie-recommendation-mcp:local .
docker run --rm --network host movie-recommendation-mcp:local

데모는 MCP와 추천 API 컨테이너가 하나의 ECS 태스크 네트워크 네임스페이스를 공유한다고 가정하므로 기본 다운스트림 주소는 127.0.0.1:8082로 유지됩니다. 컨테이너를 독립적으로 실행할 때는 다운스트림 URL을 재정의하세요.

기본값:

  • MCP 엔드포인트: http://127.0.0.1:8092/mcp

  • 헬스 엔드포인트: http://127.0.0.1:8092/health

  • 다운스트림 API: http://127.0.0.1:8082

유용한 환경 변수:

  • MOVIE_RECOMMENDATION_API_URL

  • AXUM_TOOLS_API_URL — 원래 데모 추출과의 호환성용

  • PORT

  • HOST

  • OTEL_SERVICE_NAME

  • OTEL_EXPORTER_OTLP_ENDPOINT

  • OTEL_EXPORTER_OTLP_PROTOCOL

  • OTEL_RESOURCE_ATTRIBUTES

Related MCP server: Weather Info MCP Server

도구

  • recommendation_get_movies

    • 입력: limit, 선택적 preference, 선택적 fault, 선택적 traceparent, 선택적 tracestate, 선택적 correlation_id, 선택적 request_id, 선택적 demo_fault.

    • Rust GET /recommendations를 호출합니다.

    • 성공 페이로드: {"ok": true, "service_name": "movie-recommendation-mcp", "fault": "<fault-or-none>", "recommendations": [...]}

    • 다운스트림 오류 페이로드: {"ok": false, "service_name": "movie-recommendation-mcp", "fault": "<fault-or-none>", "status_code": <int>, "error": "recommendation_dependency_failed"}

  • recommendation_health

    • 입력: 선택적 traceparent, 선택적 tracestate, 선택적 correlation_id, 선택적 request_id, 선택적 demo_fault.

    • Rust GET /health를 호출합니다.

    • 성공 페이로드: {"ok": true, "service_name": "movie-recommendation-mcp", "health": {...}}

두 도구 모두 다음을 전달합니다:

  • traceparent

  • tracestate

  • X-Correlation-Id

  • X-Request-Id

  • X-Demo-Fault

추출 결정

  • 이 추출 슬라이스의 내부 Python 가져오기 경로는 axum_tools_mcp로 유지합니다. 공개 패키지, 콘솔 스크립트, 서비스 이름, 이미지, 저장소는 이미 movie-recommendation-mcp로 명명되어 있습니다. 가져오기 경로를 바꾸면 에이전트가 사용하는 외부 MCP 계약은 바뀌지 않으면서 변경 부담만 늘어납니다.

  • 도구 이름 recommendation_get_moviesrecommendation_health를 유지합니다. 검증된 reservation-agent 데모는 recommendation_get_movies를 허용 목록에 포함했고 limit, preference, fault, 전파 인자와 함께 호출했습니다.

  • AXUM_TOOLS_API_URL을 호환성 폴백으로 유지하되, 새로운 런타임 구성에는 MOVIE_RECOMMENDATION_API_URL을 우선 사용합니다.

아티팩트 계약

플랫폼 인프라는 이 구성 요소를 소스 코드가 아닌 불변 애플리케이션 아티팩트로 사용합니다:

  • 이 저장소의 Dockerfile에서 빌드된 OCI 이미지.

  • 다이제스트로 고정된 프라이빗 ECR 이미지 참조: <account>.dkr.ecr.<region>.amazonaws.com/movie-recommendation-mcp@sha256:<64-hex-digest>.

  • Git 커밋 SHA 또는 릴리스 버전과 같은 별도의 릴리스 식별자를 소비 환경/인프라 저장소에서 다이제스트와 함께 기록합니다.

  • 런타임 명령: movie-recommendation-mcp.

  • 컨테이너 포트 및 기본 PORT: 8092.

  • MCP 엔드포인트: /mcp.

  • 헬스 엔드포인트: /health.

  • 필수 런타임 구성은 환경 기반입니다. 다운스트림 API URL은 MOVIE_RECOMMENDATION_API_URL 또는 호환성 폴백 AXUM_TOOLS_API_URL로 제공됩니다.

  • 배포 구성, 환경 매니페스트, 프로모션 상태, AWS 리소스는 이 저장소 외부에 있습니다.

검사

uv sync --frozen
uv run --frozen --no-sync pytest tests
uv run --frozen --no-sync pytest automation/tests
uv run --frozen --no-sync ruff check .
uv run --frozen --no-sync ruff format --check .
uv run --frozen --no-sync python -m compileall src tests automation

main으로의 푸시는 Linux AMD64 후보를 sha-<commit>로 GHCR에 게시합니다. CI는 BuildKit의 자동 레지스트리 증명을 비활성화하여 후보가 단일 이미지 매니페스트로 유지되도록 한 다음, 환경 승인 게이트를 위해 게시된 다이제스트에 대한 명시적 GitHub 빌드 출처를 기록합니다.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    D
    quality
    D
    maintenance
    An MCP server that allows users to search for movies, get detailed information, receive genre-based recommendations, and discover popular/trending films using OMDb and TMDb APIs.
    5
    13
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides weather information through MCP tools integrated with a FastAPI backend, enabling users to query current weather for single or multiple cities and check API health status.
  • F
    license
    A
    quality
    D
    maintenance
    An MCP server that wraps The Movie Database (TMDB) API, enabling search for movies and TV shows, retrieval of movie details, recommendations, similar movies, trending content, streaming providers, and movie discovery.
    8
  • A
    license
    A
    quality
    C
    maintenance
    FastMCP server to interact with the Overseerr API for movie and TV show requests management, enabling users to request media, search, and manage libraries via natural language.
    8
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • performance-review MCP — wraps StupidAPIs (requires X-API-Key)

  • jargon-translator MCP — wraps StupidAPIs (requires X-API-Key)

  • OMDb MCP — IMDB-derived movie / TV / episode data (BYO key)

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/movie-reservation-platform-lab/movie-recommendation-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server