tv-recommender-mcp-server
Version:
MCP server for TV show recommendations
39 lines (38 loc) • 1.55 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getShowReviews = getShowReviews;
const tmdbClient_1 = require("../services/tmdbClient");
const errorHandler_1 = require("../utils/errorHandler");
/**
* 获取剧集用户评论
* @param params 包含剧集名称的参数对象
* @returns 评论列表及分页信息
*/
async function getShowReviews(params) {
const { show_title, page = 1 } = params;
try {
// 通过剧集名称查找剧集ID
const searchResults = await tmdbClient_1.tmdbClient.searchTvShowByTitle(show_title);
// 如果没有找到任何结果,抛出错误
if (!searchResults.results || searchResults.results.length === 0) {
throw new errorHandler_1.ApiError(`未找到名为"${show_title}"的剧集`, 404);
}
// 使用第一个搜索结果
const tvId = searchResults.results[0].id;
// 获取该剧集的评论
const reviewsData = await tmdbClient_1.tmdbClient.getTvShowReviews(tvId, page);
return {
show_id: tvId,
page: reviewsData.page,
results: reviewsData.results || [],
total_pages: reviewsData.total_pages || 0,
total_results: reviewsData.total_results || 0
};
}
catch (error) {
if (error instanceof errorHandler_1.ApiError) {
throw error;
}
throw new Error(`获取剧集"${show_title}"的评论失败: ${error instanceof Error ? error.message : String(error)}`);
}
}