Connector TMDb (Motoko / tmdb-client)
Công thức chuẩn để đọc dữ liệu phim, TV và nhân vật từ TMDb trong canister Motoko bằng package mops `tmdb-client`.
Lập trìnhNâng cao★ 428⑂ 45Điểm AI 8/10Cập nhật lần cuối: 23 thg 9, 2026
Làm được gì
Đây là hướng dẫn bắt buộc cho các dự án Caffeine/Internet Computer cần dữ liệu phim: thay vì tự gọi ic.http_request tới api.themoviedb.org (anti-pattern), skill buộc dùng package mops tmdb-client.
- Giải thích rõ chỉ token read-access v4 với
?#bearerhoạt động; API key v3 và biến thể?#apiKeysẽ bị TMDb trả 401 - Bảng phân nhóm 111 operation dùng được: search, chi tiết phim/TV, người, feed, trending, discover, configuration
- Chỉ ra 13 operation lỗi (12 request có body bị bọc hai lần +
movieRecommendationsluôn throw) kèm nguyên nhân từ spec/generator - Mẫu
persistent actorhoàn chỉnh: mapper gom optional, ghép URL poster,max_response_bytes ≈ 300 KB, lý do dùng outcall không replicated (?false) - Danh sách bẫy thực tế: ID là
Int,pagebắt đầu từ 1 và > 500 trả 422, giới hạn ~50 request/giây,searchMultitrả kết quả không đồng nhất
Phù hợp với ai
- Lập trình viên Motoko xây canister trên Internet Computer cần gọi API bên ngoài
- Nhóm làm ứng dụng catalog phim/series trên stack Caffeine
- Người muốn biết trước giới hạn của client sinh tự động từ OpenAPI
Ví dụ sử dụng
- Ô tìm kiếm phim: gọi
searchMovierồi chuyển phản hồi đầy optional thành recordMoviegọn gàng cho frontend. - Trang chủ có carousel: dùng
movieNowPlayingListvàtrendingMoviescho hàng "đang chiếu" / "đang hot", cacheconfigurationDetailsmột lần. - Trang chi tiết phim:
movieDetailsvớiappendToResponse="credits,images,videos"để lấy mọi thứ trong một outcall, tiết kiệm cycles.
· · · Hướng dẫn cài đặt · · ·
Dùng thử ngay, không cần cài
Dán đoạn dưới vào Claude là dùng được skill này mà không cần cài đặt.
Hãy đọc hướng dẫn trong tệp này và làm theo để giúp mình: https://raw.githubusercontent.com/aiskillstore/marketplace/HEAD/pending/caffeinelabs/connector-tmdb/SKILL.md Mình muốn: (viết việc bạn cần ở đây)
Nếu Claude không mở được liên kết, hãy mở liên kết và copy nội dung vào rồi dán.
↓ Thấy hữu ích thì tải ZIP bên dưới và cài. Sau đó skill tự chạy, không phải dán lại mỗi lần.
Cài vào ứng dụng Claude (không cần terminal)
- Tải tệp ZIP bằng nút bên dưới.
- Trong Claude, mở Settings → Capabilities và bật 'Code execution and file creation'. (chỉ một lần)
- Vào Customize → Skills → + → 'Upload a skill' rồi tải tệp ZIP lên.
Cài vào Claude Code
Để Claude làm — dán câu dưới đây vào Claude Code
Hãy cài skill mình tìm thấy trên Claude Skill Mart. Copy thư mục pending/caffeinelabs/connector-tmdb từ repo GitHub aiskillstore/marketplace vào ~/.claude/skills/connector-tmdb/ của mình. Sau khi cài xong, cho mình biết skill này làm được gì trong một câu.
Cài bằng lệnh thủ công
git clone https://github.com/aiskillstore/marketplace.git /tmp/marketplace && mkdir -p ~/.claude/skills/connector-tmdb && cp -r /tmp/marketplace/pending/caffeinelabs/connector-tmdb/* ~/.claude/skills/connector-tmdb/⚠ Đây là skill do người khác tạo. Hãy kiểm tra repo gốc trước khi cài.
- Mở terminal và clone repo:
git clone https://github.com/aiskillstore/marketplace.git /tmp/marketplace - Tạo thư mục skill:
mkdir -p ~/.claude/skills/connector-tmdb - Sao chép file skill:
cp -r /tmp/marketplace/pending/caffeinelabs/connector-tmdb/* ~/.claude/skills/connector-tmdb/ - Khởi động lại Claude Code và kiểm tra
connector-tmdbđã xuất hiện trong danh sách skill. - Trong dự án Motoko, thêm dependency:
mops add tmdb-client - Lấy token read-access v4 tại trang cài đặt API của themoviedb.org (API key v3 không dùng được với client này).
- Yêu cầu Claude ví dụ "viết backend tìm kiếm phim bằng TMDb" — skill sẽ tự nạp. Đừng hardcode token: lưu trong state của actor và bảo vệ setter bằng mixin phân quyền.