winner12-copywriter-mcp
Version:
MCP tool for generating social media content for winner12 AI football prediction website
68 lines • 2.57 kB
JavaScript
import { ContentProcessor } from './ContentProcessor.js';
/**
* 生成器统一帮助类
* 为所有平台生成器提供统一的合规处理功能
*/
export class GeneratorHelper {
/**
* 统一处理内容生成的最后步骤
* 包括合规验证、内容处理和元数据添加
*/
static async finalizeContent(rawContent, platform, hashtags, callToAction, options = {}) {
// 使用内容处理器进行合规处理
const processedContent = await ContentProcessor.processContent(rawContent, platform, {
enableValidation: true,
strictMode: options.strictMode || false,
autoFix: options.autoFix || true
});
// 构建最终内容
const finalContent = processedContent.processed;
// 构建返回对象
const result = {
content: finalContent,
hashtags,
callToAction,
meta: {
platform,
characterCount: finalContent.length,
wordCount: finalContent.split(/\s+/).length,
complianceScore: processedContent.compliance.score,
riskLevel: processedContent.compliance.riskLevel
}
};
// 如果是YouTube,添加标题
if (options.title) {
result.title = options.title;
}
return result;
}
/**
* 快速合规检查
* 在内容生成前进行预检查
*/
static async quickComplianceCheck(content, platform) {
const validation = ContentProcessor.validateOnly(content, platform);
const criticalIssues = validation.violations
.filter(v => v.severity === 'critical')
.map(v => v.description);
return {
canProceed: criticalIssues.length === 0,
issues: criticalIssues,
suggestions: validation.recommendations
};
}
/**
* 平台严格度配置
*/
static getPlatformStrictness(platform) {
const configs = {
tiktok: { strictMode: true, autoFix: true, riskTolerance: 'low' },
twitter: { strictMode: false, autoFix: true, riskTolerance: 'medium' },
instagram: { strictMode: false, autoFix: true, riskTolerance: 'medium' },
youtube: { strictMode: false, autoFix: true, riskTolerance: 'high' },
facebook: { strictMode: false, autoFix: true, riskTolerance: 'high' }
};
return configs[platform] || configs.tiktok;
}
}
//# sourceMappingURL=GeneratorHelper.js.map