@bulkpublishing/mcp-server 1.3.4 → 1.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,7 +5,7 @@
5
5
  * Contains the master generation prompt, humanizer, SEO metadata generator,
6
6
  * and internal linking builder.
7
7
  */
8
- export declare const ROBUST_PROMPT_TEMPLATE = "\n(Act as an expert SEO content writer. Create a comprehensive, high-ranking blog post for the keyword: \"{{keyword}}\".\n\n\u26A0\uFE0F CRITICAL OUTPUT RULE: Return ONLY raw Markdown text. NEVER return JSON. NEVER wrap your response in { } braces or a code block.\n\nKEYWORD INSTRUCTIONS:\n1. Target Keyword: {{keyword}} (Use natural variations, do NOT overstuff).\n2. Secondary Keywords: Identify and naturally integrate 3-5 LSI/secondary keywords relevant to the topic to improve semantic reach.\n3. Slug: Use the exact target keyword as the slug, lowercased and hyphenated.\n4. **KEYWORD PLACEMENT (STRICT):**\n - The exact target keyword MUST appear in the first 25% of the article (intro or first section).\n - The exact target keyword MUST appear in at least one H2 header near the beginning of the article.\n\n{{template_instruction}}\n\nDATA & CONTEXT INTEGRITY:\nYou will be provided with \"Context\" or \"Research Data\" in the user prompt. You MUST prioritize this data for facts, statistics, and specific details. Do NOT simulate a web search. Use the provided real-world data to back your claims.\n\n{{title_instruction}}\n{{h1_instruction}}\n\nOUTPUT FORMAT (MANDATORY):\nYOU MUST RETURN RAW MARKDOWN TEXT ONLY. DO NOT RETURN JSON.\n- Start directly with the title using # (H1).\n- Use ## for main sections (H2).\n- Use ### for subsections (H3).\n- Use tables, lists, and bold text for readability.\n- NO JSON format. NO code blocks. NO { \"title\": } structures. Just raw markdown text.\n- At the very END of the article, add the meta description in this format:\n META_DESCRIPTION: [Your 155-char max meta description here]\n\nCONTENT SEPARATION (CRITICAL):\n- The article body must contain ONLY the article content itself.\n- DO NOT include any \"Meta title\", \"Slug\", \"Title Tag\", or metadata sections inside the article.\n- Meta titles, slugs, and meta descriptions are handled SEPARATELY by the system.\n- Your output = H1 title + article body + META_DESCRIPTION line at the end. Nothing else.\n\nREQUIREMENTS:\n1. Title & Meta: Title under 60 characters. Meta description 150-160 characters.\n2. Content Structure (INVERTED PYRAMID): Give the answer immediately. Surface answers first, details later. Remove fluff.\n3. Readability: Simple, accessible language. Paragraphs 2-3 sentences max. Frequent visual breaks.\n4. TL;DR: 3-4 bullet points (~75 words) that fully answer the user's query.\n5. Intro: ~50-100 words, keyword mentioned, direct answer visible.\n\n6. INTRO OPENER (Use Opener Seed: {{opener_seed}}):\n Strategy A \u2014 COLD STAT OPENER: Lead with a surprising number.\n Strategy B \u2014 CONTRARIAN CLAIM: Bold, slightly provocative statement.\n Strategy C \u2014 MINI-STORY: A single vivid sentence.\n Strategy D \u2014 DIRECT ANSWER FIRST: Answer the query in sentence one.\n Strategy E \u2014 QUESTION HOOK: One sharp question.\n Strategy F \u2014 TENSION/PROBLEM: Name the specific pain.\n Strategy G \u2014 QUOTE OR ANECDOTE: A real quote or 1-line anecdote.\n Strategy H \u2014 BEFORE/AFTER CONTRAST: Transformation in one sentence.\n\n7. Components: DEPTH & EXPANSION. Explain concepts in depth. Include at least one data table.\n {{internal_linking_instructions}}\n\n8. CRITICAL RULES:\n - THE CURRENT YEAR IS 2026.\n - NEVER use em-dashes.\n - Use clear headings (H1, H2, H3).\n - Include tables, lists, bold text for readability.\n - Mention specific brands, models, features, and pricing tiers.\n - Reference external sources with natural anchor text (NOT [1] bracket numbers).\n - NEVER fabricate URLs.\n\n9. FORBIDDEN AI TERMINOLOGY:\n Never use: delve, comprehensive, leverage, harness, seamlessly, robust, landscape, multifaceted, pivotal, realm, intricate, tapestry, synergy, ecosystem, embark, embrace, illuminate, paradigm, culmination, quest, pinnacle, beacon, foster, catalyze, meticulous, nuanced, transformative, holistic, resonate, underscore, underpins, streamline, incorporate, facilitate, encompass, exemplify, epitomize, and all related AI-sounding words.\n\n10. BANNED STRUCTURAL PATTERNS:\n - Three consecutive short \"You\" sentences.\n - Starting sentences with \"By\" + gerund.\n - \"it's not about X, it's about Y\" patterns.\n - Generic closers (\"And that's why X matters.\").\n - Motivational speech tone.\n";
8
+ export declare const ROBUST_PROMPT_TEMPLATE = "\n(Act as an expert SEO content writer. Create a comprehensive, high-ranking blog post for the keyword: \"{{keyword}}\".\n\n\u26A0\uFE0F CRITICAL OUTPUT RULE: Return ONLY raw Markdown text. NEVER return JSON. NEVER wrap your response in { } braces or a code block.\n\nKEYWORD INSTRUCTIONS:\n1. Target Keyword: {{keyword}} (Use natural variations, do NOT overstuff).\n2. Secondary Keywords: Identify and naturally integrate 3-5 LSI/secondary keywords relevant to the topic to improve semantic reach.\n3. Slug: Use the exact target keyword as the slug, lowercased and hyphenated.\n4. **KEYWORD PLACEMENT (STRICT):**\n - The exact target keyword MUST appear in the first 25% of the article (intro or first section).\n - The exact target keyword MUST appear in at least one H2 header near the beginning of the article.\n\n{{template_instruction}}\n\nDATA & CONTEXT INTEGRITY:\nYou will be provided with \"Context\" or \"Research Data\" in the user prompt. You MUST prioritize this data for facts, statistics, and specific details. Do NOT simulate a web search. Use the provided real-world data to back your claims.\n\n{{title_instruction}}\n{{h1_instruction}}\n\nOUTPUT FORMAT (MANDATORY):\nYOU MUST RETURN RAW MARKDOWN TEXT ONLY. DO NOT RETURN JSON.\n- Start directly with the title using # (H1).\n- Use ## for main sections (H2).\n- Use ### for subsections (H3).\n- Use tables, lists, and bold text for readability.\n- NO JSON format. NO code blocks. NO { \"title\": } structures. Just raw markdown text.\n- At the very END of the article, add the meta description in this format:\n META_DESCRIPTION: [Your 155-char max meta description here]\n\nCONTENT SEPARATION (CRITICAL):\n- The article body must contain ONLY the article content itself.\n- DO NOT include any \"Meta title\", \"Slug\", \"Title Tag\", or metadata sections inside the article.\n- Meta titles, slugs, and meta descriptions are handled SEPARATELY by the system.\n- Your output = H1 title + article body + META_DESCRIPTION line at the end. Nothing else.\n\nREQUIREMENTS:\n1. Title & Meta: Title under 60 characters. Meta description 150-160 characters.\n2. Content Structure (INVERTED PYRAMID): Give the answer immediately. Surface answers first, details later. Remove fluff.\n3. Readability: Simple, accessible language. Paragraphs 2-3 sentences max. Frequent visual breaks.\n4. TL;DR: 3-4 bullet points (~75 words) that fully answer the user's query.\n5. Intro: ~50-100 words, keyword mentioned, direct answer visible.\n\n6. INTRO OPENER (Use Opener Seed: {{opener_seed}}):\n Strategy A \u2014 COLD STAT OPENER: Lead with a surprising number.\n Strategy B \u2014 CONTRARIAN CLAIM: Bold, slightly provocative statement.\n Strategy C \u2014 MINI-STORY: A single vivid sentence.\n Strategy D \u2014 DIRECT ANSWER FIRST: Answer the query in sentence one.\n Strategy E \u2014 QUESTION HOOK: One sharp question.\n Strategy F \u2014 TENSION/PROBLEM: Name the specific pain.\n Strategy G \u2014 QUOTE OR ANECDOTE: A real quote or 1-line anecdote.\n Strategy H \u2014 BEFORE/AFTER CONTRAST: Transformation in one sentence.\n\n7. Components: DEPTH & EXPANSION. Explain concepts in depth. Include at least one data table.\n {{internal_linking_instructions}}\n\n8. CRITICAL RULES:\n - THE CURRENT YEAR IS 2026.\n - NEVER use em-dashes.\n - Use clear headings (H1, H2, H3).\n - Include tables, lists, bold text for readability.\n - Mention specific brands, models, features, and pricing tiers.\n - Reference external sources with natural anchor text (NOT [1] bracket numbers).\n - NEVER fabricate URLs.\n\n9. FORBIDDEN AI TERMINOLOGY:\n Never use: delve, comprehensive, leverage, harness, seamlessly, robust, landscape, multifaceted, pivotal, realm, intricate, tapestry, synergy, ecosystem, embark, embrace, illuminate, paradigm, culmination, quest, pinnacle, beacon, foster, catalyze, meticulous, nuanced, transformative, holistic, resonate, underscore, underpins, streamline, incorporate, facilitate, encompass, exemplify, epitomize, and all related AI-sounding words.\n\n10. BANNED STRUCTURAL PATTERNS:\n - Three consecutive short \"You\" sentences.\n - Starting sentences with \"By\" + gerund.\n - \"it's not about X, it's about Y\" patterns.\n - Generic closers (\"And that's why X matters.\").\n - Motivational speech tone.\n\n11. **MINIMUM LENGTH (NON-NEGOTIABLE):**\n - You MUST write the FULL requested word count. Do NOT stop early.\n - Cover every section thoroughly. Each H2 section should be 200-400 words minimum.\n - If you are running out of things to say, add more examples, comparisons, data points, or actionable steps.\n - A short article is a FAILED article. Write the complete length requested.\n";
9
9
  export declare const SEO_GENERATOR_PROMPT = "You are an expert SEO strategist. Generate optimized metadata for a blog article.\n\nCRITICAL: Return ONLY valid JSON. No explanations, no markdown, no code blocks.\n\nFor the given topic/keyword, return this EXACT JSON structure:\n{\n \"title\": \"Article H1 heading\",\n \"titleTag\": \"SEO title for search results (50-60 chars max)\",\n \"slug\": \"url-friendly-slug\",\n \"mainKeyword\": \"primary target keyword phrase\",\n \"secondaryKeywords\": \"related, lsi, keywords\",\n \"metaDescription\": \"Action-oriented meta description (150-160 chars)\"\n}\n\nRules:\n- THE YEAR IS 2026\n- No forbidden AI words\n- Meta description must lead with a verb\n- Slug is keyword lowercased and hyphenated";
10
10
  export declare const HUMANIZE_PROMPT = "\nYou are a senior human editor performing a FINAL anti-AI detection pass on a blog article.\nYour job is to rewrite any sentence or section that reads like AI-generated text, while preserving every fact, link, and piece of data.\n\nINPUT CONTENT:\n{{content}}\n\n=== KEY RULES ===\n1. Replace all banned AI words (delve, comprehensive, leverage, harness, etc.)\n2. Replace all banned phrases (\"in today's\", \"it's important to note\", etc.)\n3. Remove ALL em-dashes and replace with periods, commas, or semicolons\n4. Mix sentence lengths (short punchy + medium)\n5. No triplet patterns (3+ sentences starting with same word)\n6. No \"By + gerund\" sentence starters\n7. Use contractions (don't, it's, they're)\n8. Vary paragraph openings\n9. Preserve ALL links, data, formatting, and content depth\n10. Output must be at least as long as input\n\n=== OUTPUT ===\nReturn the FULL humanized article in Markdown. Nothing else.\n";
11
11
  export declare function buildInternalLinkingPrompt(urls: string[], maxLinks: number): string;
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/ai/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,eAAO,MAAM,sBAAsB,wvIA2ElC,CAAC;AAMF,eAAO,MAAM,oBAAoB,wsBAkBW,CAAC;AAM7C,eAAO,MAAM,eAAe,s6BAqB3B,CAAC;AAMF,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA4BnF;AAMD,eAAO,MAAM,eAAe,obAS6E,CAAC;AAQ1G,wBAAgB,qBAAqB,CAAC,OAAO,EAAE;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAmC/C;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAM1F"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/ai/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,eAAO,MAAM,sBAAsB,uoJAiFlC,CAAC;AAMF,eAAO,MAAM,oBAAoB,wsBAkBW,CAAC;AAM7C,eAAO,MAAM,eAAe,s6BAqB3B,CAAC;AAMF,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA4BnF;AAMD,eAAO,MAAM,eAAe,obAS6E,CAAC;AAQ1G,wBAAgB,qBAAqB,CAAC,OAAO,EAAE;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAmC/C;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAM1F"}
@@ -83,6 +83,12 @@ REQUIREMENTS:
83
83
  - "it's not about X, it's about Y" patterns.
84
84
  - Generic closers ("And that's why X matters.").
85
85
  - Motivational speech tone.
86
+
87
+ 11. **MINIMUM LENGTH (NON-NEGOTIABLE):**
88
+ - You MUST write the FULL requested word count. Do NOT stop early.
89
+ - Cover every section thoroughly. Each H2 section should be 200-400 words minimum.
90
+ - If you are running out of things to say, add more examples, comparisons, data points, or actionable steps.
91
+ - A short article is a FAILED article. Write the complete length requested.
86
92
  `;
87
93
  // ============================================
88
94
  // SEO METADATA GENERATOR
@@ -189,7 +195,7 @@ export function buildGenerationPrompt(options) {
189
195
  ? buildInternalLinkingPrompt(options.internalLinkUrls, options.maxInternalLinks || 5)
190
196
  : '');
191
197
  // Build user prompt
192
- let userPrompt = `Write a ${options.wordCount || 2500}-word article about "${options.keyword}".`;
198
+ let userPrompt = `Write a COMPLETE ${options.wordCount || 2500}-word article about "${options.keyword}". You MUST reach the full ${options.wordCount || 2500} word count. Do not stop early under any circumstances.`;
193
199
  if (options.tone) {
194
200
  userPrompt += `\n\nTone: ${options.tone}`;
195
201
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/ai/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/ai/prompts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bulkpublishing/mcp-server",
3
- "version": "1.3.4",
3
+ "version": "1.3.5",
4
4
  "description": "Bulk Publishing AI MCP Server - Content generation, WordPress publishing, and SEO indexing tools for MCP-compatible clients",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",