winner12-copywriter-mcp
Version:
MCP tool for generating social media content for winner12 AI football prediction website
157 lines (151 loc) • 5.72 kB
JavaScript
// 平台配置
export const PLATFORM_CONFIGS = {
tiktok: {
platform: 'tiktok',
tone: 'exciting',
maxLength: 150,
requiresHashtags: true,
supportsEmojis: true,
format: 'single'
},
youtube: {
platform: 'youtube',
tone: 'professional',
maxLength: 5000,
requiresHashtags: true,
supportsEmojis: false,
format: 'title-description'
},
facebook: {
platform: 'facebook',
tone: 'casual',
maxLength: 2000,
requiresHashtags: false,
supportsEmojis: true,
format: 'single'
},
instagram: {
platform: 'instagram',
tone: 'casual',
maxLength: 2200,
requiresHashtags: true,
supportsEmojis: true,
format: 'single'
},
twitter: {
platform: 'twitter',
tone: 'confident',
maxLength: 280,
requiresHashtags: true,
supportsEmojis: true,
format: 'thread'
}
};
// 内容模板函数
export class ContentTemplateGenerator {
// 生成AI内容标识
static generateAILabel(platform) {
const labels = {
tiktok: '[🤖 AI生成]',
twitter: '[🤖 AI分析]',
instagram: '[🤖 AI生成内容]',
facebook: '[🤖 此内容由Winner12人工智能生成]',
youtube: '🤖 本内容由Winner12 AI算法自动生成'
};
return labels[platform];
}
// 生成免责声明
static generateDisclaimer(platform) {
const disclaimers = {
tiktok: '⚠️ 仅供娱乐参考,不构成投注建议',
twitter: '⚠️ 仅供参考,请理性观赛',
instagram: '⚠️ 内容仅供娱乐参考,不构成投注建议,请理性观赛',
facebook: '⚠️ 温馨提示:分析仅供娱乐参考,请理性看球,远离赌博',
youtube: '⚠️ 免责声明:本分析仅供参考,不构成投资建议。足球比赛存在不确定性,请理性对待分析结果'
};
return disclaimers[platform];
}
// 生成基础足球预测文案
static generateBasePrediction(input, tone = 'professional') {
const { homeTeam, awayTeam, prediction, confidence, league, matchDate } = input;
const templates = {
professional: `${league} 预测分析:${homeTeam} vs ${awayTeam}
基于 Winner12 AI 分析,我们预测:${prediction}
置信度:${confidence}%
比赛时间:${matchDate}`,
exciting: `🔥 ${homeTeam} vs ${awayTeam} 激战来袭!
🤖 Winner12 AI 预测:${prediction}
✨ 置信度高达 ${confidence}%`,
casual: `今天为大家带来 ${homeTeam} vs ${awayTeam} 的比赛预测
根据我们的 AI 分析,倾向于:${prediction}
信心指数:${confidence}%`,
confident: `📊 ${homeTeam} vs ${awayTeam}
🎯 预测:${prediction}
💪 置信度:${confidence}%
#Winner12 数据支撑!`,
analytical: `${league} | ${matchDate}
对阵:${homeTeam} vs ${awayTeam}
预测结果:${prediction}
分析置信度:${confidence}%
详细数据分析请访问 Winner12`
};
return templates[tone] || templates.professional;
}
// 生成足球相关标签
static generateFootballHashtags(input, platform) {
const { league, homeTeam, awayTeam } = input;
const baseHashtags = [
'#Winner12',
'#足球预测',
'#AI预测',
'#足球分析'
];
const leagueHashtags = {
'英超': ['#英超', '#PremierLeague', '#EPL'],
'西甲': ['#西甲', '#LaLiga'],
'德甲': ['#德甲', '#Bundesliga'],
'意甲': ['#意甲', '#SerieA'],
'法甲': ['#法甲', '#Ligue1'],
'欧冠': ['#欧冠', '#ChampionsLeague', '#UCL'],
'世界杯': ['#世界杯', '#WorldCup', '#FIFA'],
};
const platformSpecific = {
tiktok: ['#足球', '#预测', '#体育', '#winner12'],
youtube: ['#足球分析', '#体育预测', '#数据分析'],
facebook: ['#足球', '#体育', '#预测分析'],
instagram: ['#足球', '#体育', '#预测', '#数据'],
twitter: ['#足球', '#预测', '#体育分析']
};
const teamHashtags = [
`#${homeTeam.replace(/\s+/g, '')}`,
`#${awayTeam.replace(/\s+/g, '')}`
];
const allHashtags = [
...baseHashtags,
...(leagueHashtags[league] || []),
...teamHashtags,
...platformSpecific[platform]
];
// 根据平台限制标签数量
const maxHashtags = platform === 'twitter' ? 5 : platform === 'instagram' ? 15 : 8;
return allHashtags.slice(0, maxHashtags);
}
// 生成行动号召
static generateCallToAction(platform) {
const ctas = {
tiktok: '关注获取更多预测!🚀',
youtube: '订阅 Winner12 获取最新足球预测分析,点赞支持我们的 AI 预测!',
facebook: '关注我们获取更多专业足球预测,分享给你的球友!⚽',
instagram: '关注 @winner12 获取每日足球预测 ⚽✨',
twitter: '关注我们获取更多 AI 足球预测分析 🤖⚽'
};
return ctas[platform];
}
// 生成表情符号
static getEmojis(platform) {
if (!PLATFORM_CONFIGS[platform].supportsEmojis)
return [];
return ['⚽', '🔥', '🎯', '💪', '✨', '🚀', '📊', '🤖', '👑', '💎'];
}
}
//# sourceMappingURL=content-templates.js.map