Leadspicker Personalizer (MCP)
Generates short personalization fragments for cold email campaigns in Leadspicker projects through the Leadspicker MCP server. Each column runs GPT-4o-Mini on every contact and produces a short sentence fragment or a grammar-correct salutation.
This skill is a companion to mcp-data-enrichment (provides input data) and mcp-classification (filters contacts).
Core philosophy
Leadspicker never generates full messages — only short parts.
Every personalization output is a short sentence fragment (typically 14–16 words). This keeps GPT-4o-Mini focused, reduces hallucination, and gives the user full control over the final message structure. The exact word limit can be adjusted per request.
Examples:
"I saw your company specializes in AI-powered sales automation"(website hook)"I noticed your recent post about hiring challenges in tech"(icebreaker)"Dobrý den, pane Nováku"(Czech salutation)"Tomáši"(Czech first-name vocative)
These fragments are inserted into message templates alongside static text the user controls.
MCP tools used
| MCP tool | Purpose |
|---|---|
mcp__leadspicker__list_projects |
Look up project by name (search_query) or list recent (order_by="last_active") |
mcp__leadspicker__get_project |
Fetch project detail by project_id |
mcp__leadspicker__list_contacts |
Fetch contact rows for context (page=1, page_size=5 for previews) |
mcp__leadspicker__preview_ai_prompt |
Submit personalization prompt for preview on first 5 rows. is_boolean=False, magic_column_type="ai_custom_column" |
mcp__leadspicker__enrich_contacts |
Launch full personalization. magic_column_type="ai_custom_column", is_boolean=False |
User input
| Parameter | Description | Example |
|---|---|---|
project_id |
Target Leadspicker project (resolved by name) | 29842 |
| Personalization request | What hook or greeting to generate | "website hook in Czech" |
column_name |
New column name | "Website Hook - CZ" |
| Output language | Output language (default English) | "Czech", "German", "Polish" |
Project resolution
Display format: always render projects as {name} (#{id}).
- User named a project →
mcp__leadspicker__list_projects(search_query="{name}", limit=5). Confirm; if multiple, ask which one. - No named project →
mcp__leadspicker__list_projects(order_by="last_active", limit=20)and ask the user to pick.
If the user did not provide column_name, generate one from the type + language (e.g.
"Website Hook", "CZ Salutation", "Icebreaker - DE").
System prompt — fixed, do not modify
All personalization columns use string mode (is_boolean=False).
Server forces: {"result": "response"}
Implications:
- NEVER include output-format instructions — the system prompt enforces JSON.
- Just describe the task, rules, and input variables.
- Output is wrapped in
{"result": "..."}automatically.
Personalization types
A. Company-based hooks
Short sentences referencing what the company does.
Website hook
References what the company does based on website content. Always include
{{linkedin_company_description}} as a fallback — when website data is empty, LinkedIn
fills the gap.
- Variables:
{{company_name}},{{website_text_summary}},{{linkedin_company_description}} - Typical output:
"I saw your company helps retailers optimize their supply chain"
LinkedIn company hook
References the company's LinkedIn description (mission / positioning).
- Variables:
{{company_name}},{{linkedin_company_description}} - Typical output:
"I noticed your team is building AI tools for sales teams"
Combined company hook
Uses both website and LinkedIn for richest context.
- Variables:
{{company_name}},{{company_website}},{{linkedin_company_description}},{{website_text_summary}}
B. Person-based hooks
Experience hook
References the person's role / background / career trajectory.
- Variables:
{{full_name}},{{position}},{{linkedin_about_me}},{{present_experiences}} - Typical output:
"With your experience leading sales teams at enterprise companies"
LinkedIn posts icebreaker
References something the person recently posted on LinkedIn.
- Variables:
{{linkedin_latest_posts}} - Typical output:
"I noticed your post about the challenges of scaling outbound"
Education / skills hook
References education or specific expertise.
- Variables:
{{full_name}},{{education_summary}},{{linkedin_skills}} - Typical output:
"With your background in data science and machine learning"
C. Language-specific columns
Salutation — formal greeting with declined name
- Variables:
{{full_name}},{{position}} - Czech:
"Dobrý den, pane Nováku"/"Dobrý den, paní Nováková" - German:
"Sehr geehrter Herr Schmidt"/"Sehr geehrte Frau Müller" - Polish:
"Szanowny Panie Kowalski"/"Szanowna Pani Kowalska"
First-name vocative — declined first name
- Variables:
{{first_name}} - Czech:
"Tomáši"from Tomáš,"Kateřino"from Kateřina - Polish:
"Tomaszu"from Tomasz,"Katarzyno"from Katarzyna
Last-name vocative — declined last name with title
- Variables:
{{last_name}},{{full_name}},{{position}} - Czech:
"pane Blaťáku"/"paní Blaťáková"
Smart variable selection
| Personalization | Variables |
|---|---|
| Website hook | {{company_name}}, {{website_text_summary}}, {{linkedin_company_description}} |
| LinkedIn company hook | {{company_name}}, {{linkedin_company_description}} |
| Combined company hook | {{company_name}}, {{company_website}}, {{linkedin_company_description}}, {{website_text_summary}} |
| Experience hook | {{full_name}}, {{position}}, {{linkedin_about_me}}, {{present_experiences}} |
| LinkedIn posts icebreaker | {{linkedin_latest_posts}} |
| Education / skills hook | {{full_name}}, {{education_summary}}, {{linkedin_skills}} |
| Salutation (any language) | {{full_name}}, {{position}} |
| First-name vocative | {{first_name}} |
| Last-name vocative | {{last_name}}, {{full_name}}, {{position}} |
Prompt-writing rules
- Word limit always. Every prompt must contain: "Keep your output under 16 words." Single most important rule — controls hallucination.
- Natural tone. Should sound like something a human would write. Never salesy.
- Sentence fragment, not full sentence. Hooks are part of a larger message.
- Fallback for missing data. "If there is not enough information, return empty string."
- No output-format instructions. System prompt handles JSON.
- One task per prompt. Don't combine hook + salutation in one column.
- Language instruction. For non-English output, append at the end:
"Write your output in {language}."
Hook-specific rules
- Reference something specific from the input — never generic.
- Bad: "I see your company is doing great things."
- Good: "I saw your company helps SaaS teams reduce churn with AI."
- Start with natural openers: "I saw...", "I noticed...", "With your...", "Given your...".
- Don't add a transition phrase — the user controls what follows.
- Focus on business-relevant content; skip vacations / birthdays.
Vocative / salutation rules
- Include explicit declension rules with examples in the prompt.
- Include gender-detection logic (name endings, position keywords).
- Czech: masculine names typically end in consonant, feminine in -a / -á / -e.
- Provide fallback for ambiguous names — use the more formal / neutral option.
- Never use diminutive forms — always formal / standard vocative.
Prompt templates
Company website hook
column_name: Website Hook (or Website Hook - {LANG}) · is_boolean=False
⚠️ Always include {{linkedin_company_description}} alongside {{website_text_summary}}.
Write a short personalization sentence for a cold email that references what this company does.
Rules:
- Keep your output under 16 words
- Start with "I saw" or "I noticed" followed by a specific reference to the company's activity
- Use the most interesting and specific detail from the available data
- Reference a product, service, market, technology, or initiative — be concrete
- Do NOT be generic (no "I see your company is doing great things")
- Do NOT include a call to action or transition phrase
- The tone should be natural and conversational, not salesy
- If there is not enough information, return empty string
Input:
- Company Name: {{company_name}}
- Company Website Summary: {{website_text_summary}}
- LinkedIn Company Description: {{linkedin_company_description}}
For non-English output, append at the end:
Write your output in {language}.
Native-language opener equivalents:
- German: "Ich habe gesehen" / "Mir ist aufgefallen"
- Polish: "Zauważyłem" / "Zauważyłam"
- Czech: "Všiml jsem si" / "Zaujalo mě"
LinkedIn company hook
column_name: Company Hook · is_boolean=False
Write a short personalization sentence for a cold email that references this company's focus or mission based on their LinkedIn description.
Rules:
- Keep your output under 16 words
- Start with "I noticed" or "I saw" followed by a specific reference to the company
- Reference their mission, product focus, or market positioning
- Do NOT be generic or vague
- Do NOT include a call to action or transition phrase
- The tone should be natural and conversational, not salesy
- If there is not enough information, return empty string
Input:
- Company Name: {{company_name}}
- LinkedIn Company Description: {{linkedin_company_description}}
Person experience hook
column_name: Experience Hook · is_boolean=False
Write a short personalization sentence for a cold email that references this person's professional background or current role.
Rules:
- Keep your output under 16 words
- Start with "With your experience" or "Given your background" or similar natural opener
- Reference something specific from their role, expertise, or career focus
- Do NOT mention the person's name in the output
- Do NOT be generic
- Do NOT include a call to action or transition phrase
- Focus on business-relevant aspects of their experience
- If there is not enough information, return empty string
Input:
- Position: {{position}}
- LinkedIn About Me: {{linkedin_about_me}}
- Present Positions Summary: {{present_experiences}}
LinkedIn posts icebreaker
column_name: Icebreaker · is_boolean=False
Write a personalized icebreaker sentence for a cold email based on the person's latest LinkedIn post.
Rules:
- Keep your output under 16 words
- Start with "I noticed" or "I saw"
- If the input is a personal post, use "I noticed on your LinkedIn..."
- If the input starts with "Company post:", use "I noticed on your company LinkedIn..."
- Focus on business-related content (product launches, insights, industry opinions)
- Skip personal posts about vacations, birthdays, hobbies — if only personal content exists, return empty string
- The tone should be natural and not salesy
- Do NOT include a call to action or transition phrase
- If the input is empty or has no meaningful business content, return empty string
Input:
- LinkedIn Latest Posts: {{linkedin_latest_posts}}
Education / skills hook
column_name: Skills Hook · is_boolean=False
Write a short personalization sentence for a cold email that references this person's education or specific expertise.
Rules:
- Keep your output under 16 words
- Start with "With your background in" or "Given your expertise in" or similar natural opener
- Reference a specific field of study, skill, or area of expertise
- Do NOT mention the person's name in the output
- Do NOT be generic
- Do NOT include a call to action or transition phrase
- If there is not enough information, return empty string
Input:
- Education Summary: {{education_summary}}
- LinkedIn Skills: {{linkedin_skills}}
Language-specific templates
Czech salutation
column_name: CZ Salutation · is_boolean=False
Generate a formal Czech salutation for a business email.
Your task:
1. Determine the person's gender from their name and job title
2. Create the correct formal greeting in Czech
Gender detection rules:
- Feminine indicators: first name ends in -a, -e, or -ie (Jana, Marie, Kateřina, Lucie); last name ends in -ová, -á (Nováková, Černá)
- Masculine indicators: first name ends in a consonant or -o (Jan, Tomáš, Michal, Marek); last name without -ová/-á suffix
- Position can help: "ředitelka", "manažerka", "náměstkyně" indicate female; "ředitel", "manažer", "náměstek" indicate male
- If ambiguous, default to masculine form
Czech salutation rules:
- Masculine: "Dobrý den, pane" + last name in vocative case
- -ák → -áku (Novák → Nováku, Dvořák → Dvořáku)
- -ek → -ku (Voříšek → Voříšku, Havlíček → Havlíčku)
- -ec → -če (Němec → Němče)
- -ský/-cký → unchanged (Novotný → Novotný)
- -ka → -ko (Procházka → Procházko, Růžička → Růžičko)
- -da → -do (Svoboda → Svobodo)
- general consonant → add -e (Vlach → Vlache)
- Feminine: "Dobrý den, paní" + last name unchanged (Nováková → Nováková)
Return only the salutation, nothing else.
Examples: "Dobrý den, pane Nováku", "Dobrý den, paní Dvořáková", "Dobrý den, pane Blaťáku"
If the name is not recognizable or empty, return empty string.
Input:
- Full Name: {{full_name}}
- Position: {{position}}
Czech first-name vocative
column_name: CZ First Name Vocative · is_boolean=False
You are an expert in Czech grammar, specifically declension rules for the vocative case (5. pád).
Given a Czech first name:
1. Add any missing diacritics (háčky and čárky)
2. Transform the name into the correct vocative form
Masculine vocative rules:
- -áš → -áši (Tomáš → Tomáši, Lukáš → Lukáši)
- -an → -ane (Jan → Jane, Štěpán → Štěpáne)
- -el → -ele (Michal → Michale, Pavel → Pavle)
- -ek → -ku (Marek → Marku, Zdeněk → Zdeňku)
- -in → -ine (Martin → Martine)
- -ír → -íře (Vladimír → Vladimíre)
- -ej → -eji (Ondřej → Ondřeji, Matěj → Matěji)
- -tr → -tře (Petr → Petře)
- -ip → -ipe (Filip → Filipe)
- -ub → -ube (Jakub → Jakube)
- -id → -ide (David → Davide)
- -os → -oši (Miloš → Miloši)
- -áv → -áve (Václav → Václave)
- -o ending: stays the same (Ivo → Ivo)
Feminine vocative rules:
- -a → -o (Jana → Jano, Petra → Petro, Simona → Simono, Kateřina → Kateřino)
- -ie/-e → stays the same (Marie → Marie, Lucie → Lucie)
IMPORTANT: Use only the standard (official) vocative form, never diminutives.
- "Marie" → "Marie" (NOT "Maruško")
- "Simona" → "Simono" (NOT "Simonko")
- "Kateřina" → "Kateřino" (NOT "Katko")
Return only the vocative form, nothing else. If no name is provided, return empty string.
Input:
- First Name: {{first_name}}
Czech last-name vocative
column_name: CZ Last Name Vocative · is_boolean=False
You are an expert in Czech grammar. Generate the vocative form (5. pád) of a Czech last name with the appropriate title (pane/paní).
Your task:
1. Determine the person's gender from their full name and position
2. Apply the correct vocative declension to the last name
3. Return the title + declined last name
Gender detection:
- Feminine: first name ends in -a/-e/-ie (Jana, Marie, Lucie); last name ends in -ová/-á (Nováková)
- Masculine: first name ends in consonant/-o (Jan, Tomáš, Michal); last name without -ová
- Position keywords: -ka/-kyně suffix = female (manažerka, ředitelka), no suffix = male (manažer, ředitel)
Masculine last-name vocative rules:
- -ák → -áku (Novák → Nováku, Dvořák → Dvořáku, Blaťák → Blaťáku)
- -ek → -ku (Havlíček → Havlíčku, Voříšek → Voříšku)
- -ec → -če (Němec → Němče)
- -ík → -íku (Sedlačík → Sedlačíku)
- -ka → -ko (Procházka → Procházko, Růžička → Růžičko)
- -da → -do (Svoboda → Svobodo)
- -ý/-í → unchanged (Novotný → Novotný, Malý → Malý)
- general consonant → add -e (Vlach → Vlache)
- Output format: "pane {vocative_last_name}"
Feminine last-name rules:
- Keep the last name unchanged (nominative = vocative)
- Output format: "paní {last_name}"
Return only the title + last name (e.g., "pane Nováku" or "paní Dvořáková"), nothing else.
If the name is not recognizable or empty, return empty string.
Input:
- Last Name: {{last_name}}
- Full Name: {{full_name}}
- Position: {{position}}
Polish salutation
column_name: PL Salutation · is_boolean=False
Generate a formal Polish salutation for a business email.
Your task:
1. Determine the person's gender from their first name and last name
2. Create the correct formal greeting in Polish
Gender detection rules:
- Feminine indicators: first name ends in -a (Anna, Katarzyna, Monika, Agnieszka, Magdalena, Joanna, Ewa, Dorota, Aleksandra, Natalia); last name ends in -ska, -cka, -dzka, -wska (Kowalska, Nowacka)
- Masculine indicators: first name ends in a consonant or -o (Jan, Tomasz, Michał, Marek, Piotr, Krzysztof, Andrzej, Adam); last name ends in -ski, -cki, -dzki, -wski or consonant (Kowalski, Nowak)
- If ambiguous, default to masculine form
Polish salutation format:
- Male: "Szanowny Panie" + last name in nominative (unchanged)
- Kowalski → "Szanowny Panie Kowalski"
- Female: "Szanowna Pani" + last name in nominative (unchanged)
- Kowalska → "Szanowna Pani Kowalska"
Extract the last name from the full name (last word in the name).
Return only the salutation, nothing else.
Examples: "Szanowny Panie Kowalski", "Szanowna Pani Nowak"
If the name is not recognizable or empty, return empty string.
Input:
- Full Name: {{full_name}}
- Position: {{position}}
German salutation
column_name: DE Salutation · is_boolean=False
Generate a formal German salutation for a business email.
Your task:
1. Determine the person's gender from their first name
2. Create the correct formal greeting in German
Gender detection rules:
- Common male first names: Hans, Peter, Thomas, Michael, Stefan, Andreas, Martin, Marco, Alexander, David, Daniel, Christian, Markus, Frank, Klaus, Jürgen, Wolfgang, Bernd, Ralf, Uwe, Dirk, Oliver, Patrick, Sven, Tobias, Florian, Matthias, Christoph
- Common female first names: Anna, Maria, Marie, Claudia, Sabine, Petra, Monika, Susanne, Andrea, Karin, Julia, Sandra, Nicole, Katharina, Stefanie, Birgit, Heike, Martina, Simone, Christina, Laura, Lisa, Sarah, Elena, Nadine, Anja, Tanja, Silke, Melanie
- Names ending in -a, -e, -ie, -ine are typically female
- Names ending in consonant are typically male
- If ambiguous, use "Sehr geehrte/r" as neutral form
German salutation format:
- Male: "Sehr geehrter Herr {last_name}"
- Female: "Sehr geehrte Frau {last_name}"
- Last name stays unchanged (no declension in German)
Extract the last name from the full name (last word in the name).
Return only the salutation, nothing else.
Examples: "Sehr geehrter Herr Schmidt", "Sehr geehrte Frau Müller"
If the name is not recognizable or empty, return empty string.
Input:
- Full Name: {{full_name}}
- Position: {{position}}
Generic salutation template (any language)
When the user requests a salutation in a language not covered above:
Generate a formal {language} salutation for a business email.
Your task:
1. Determine the person's gender from their name and job title
2. Create the correct formal greeting in {language}
{LANGUAGE_SPECIFIC_GENDER_RULES}
{LANGUAGE_SPECIFIC_SALUTATION_FORMAT}
Return only the salutation, nothing else.
If the name is not recognizable or empty, return empty string.
Input:
- Full Name: {{full_name}}
- Position: {{position}}
Sample formats:
- French:
"Cher Monsieur {last_name}"/"Chère Madame {last_name}"(no declension) - Spanish:
"Estimado Sr. {last_name}"/"Estimada Sra. {last_name}"(no declension)
Multi-language system
Language selection
- User specifies the language in their request: "website hook in German", "Czech salutation", "icebreaker in Polish".
- Default is English when no language specified.
- For hooks: append
"Write your output in {language}."at the end of the prompt. - For vocatives / salutations: use the language-specific template with built-in grammar rules.
Capabilities
| Language | Hooks | Salutation | First-name vocative | Last-name vocative |
|---|---|---|---|---|
| English | ✅ | N/A | N/A | N/A |
| Czech | ✅ | ✅ | ✅ | ✅ |
| Polish | ✅ | ✅ | ✅ | ✅ |
| Slovak | ✅ | ✅ | ✅ | ✅ |
| German | ✅ | ✅ | N/A | N/A |
| French | ✅ | ✅ | N/A | N/A |
| Spanish | ✅ | ✅ | N/A | N/A |
| Other | ✅ | Ask user for format | Ask user for rules | Ask user for rules |
Auto-generate salutation with hooks
Whenever a user requests any hook in a specific language, automatically also prepare the salutation column for that language. A salutation is fundamental to outreach — the user should never have to ask for it separately.
For languages with vocatives (Czech, Polish, Slovak) also auto-prepare:
{LANG} Salutation{LANG} First Name Vocative{LANG} Last Name Vocative
For languages without vocatives (German, French, Spanish, English) auto-prepare:
{LANG} Salutation(Herr/Frau, Monsieur/Madame, Sr./Sra.)
The user can opt out by saying "just the hook" or "no salutation".
Workflow
Step 1 — collect input
Resolve the project (see Project resolution) and gather the personalization request and
target language. If column_name is missing, generate one from type + language.
Step 2 — determine type
- Type: company hook / person hook / icebreaker / salutation / vocative
- Variables: pick from Smart variable selection
- Language: default English, or user-specified
- Auto-include salutation for any non-English hook request (see Auto-generate above)
Step 3 — write the prompt
Follow the rules above:
- Clear task definition
- Word-limit rule (≤ 16 words for hooks)
- Tone / style / content rules
- Fallback for missing data
- Input variables (only relevant ones)
- Language instruction if non-English
Step 4 — show prompt to user
Show:
column_name- Full prompt text
- Target language
Ask for approval.
Step 5 — preview on first 5 rows
mcp__leadspicker__preview_ai_prompt(
project_id=29842,
column_name="Website Hook - CZ",
prompt="Write a short personalization sentence …\n…\nInput:\n- Company Name: {{company_name}}\n…\n\nWrite your output in Czech.",
is_boolean=False,
magic_column_type="ai_custom_column",
)
While that processes, fetch contact context:
mcp__leadspicker__list_contacts(project_id=29842, page=1, page_size=5)
Show a combined table:
Preview (first 5 rows):
| Name | Position | Company | Result |
|----------------|----------------|----------------|--------------------------------------------------|
| Tomáš Blaťák | Sales Manager | Leadspicker | Všiml jsem si, že vaše firma pomáhá … |
| Jana Nováková | CEO | Acme s.r.o. | Všimla jsem si, že vaše firma se specializuje … |
…
Does this look correct? Should I launch for all contacts?
If changes are needed → adjust prompt and re-preview. If cancel → stop.
Step 6 — launch full personalization
mcp__leadspicker__enrich_contacts(
project_id=29842,
magic_column_type="ai_custom_column",
column_name="Website Hook - CZ",
prompt="<same prompt>",
is_boolean=False,
)
Step 7 — report and suggest next steps
- Confirm column was created and is processing.
- Suggest related personalizations:
- After website hook → "Want a LinkedIn company hook too?"
- After icebreaker → "Want a hook based on their experience?"
- After salutation → "Want first-name and last-name vocatives too?"
- After CZ columns → "Want hooks in Czech as well?"
Batch mode — personalization packages
When the user asks for "full personalization" or "all hooks":
English package
Column 1: Website Hook
Column 2: Company Hook (LinkedIn)
Column 3: Experience Hook
Column 4: Icebreaker
Czech package
Column 1: Website Hook - CZ
Column 2: Company Hook - CZ
Column 3: Experience Hook - CZ
Column 4: Icebreaker - CZ
Column 5: CZ Salutation
Column 6: CZ First Name Vocative
Column 7: CZ Last Name Vocative
Any-language package
Column 1: Website Hook - {LANG}
Column 2: Company Hook - {LANG}
Column 3: Experience Hook - {LANG}
Column 4: Icebreaker - {LANG}
Column 5: {LANG} Salutation (always)
Column 6: {LANG} First Name Vocative (vocative languages only)
Column 7: {LANG} Last Name Vocative (vocative languages only)
Execute via mcp__leadspicker__enrich_contacts sequentially with ≈1 s delay between calls.
Preview the first column to verify quality, then launch all after approval.
Natural language → personalization matching
| User says... | Type | Variables |
|---|---|---|
| "website hook", "hook z webu" | Website Hook | Company |
| "company hook", "hook o firmě" | Company LinkedIn Hook | Company |
| "experience hook", "hook o zkušenostech" | Experience Hook | Person detailed |
| "icebreaker", "hook z příspěvků" | LinkedIn Posts Icebreaker | Posts |
| "skills hook", "hook o dovednostech" | Education / Skills Hook | Education + Skills |
| "salutation", "oslovení", "pozdrav" | Salutation | Name + Position |
| "vocative", "vokativ", "5. pád" | Vocative (first or last name) | Name |
| "first name vocative", "křestní jméno vokativ" | First Name Vocative | First Name |
| "last name vocative", "příjmení vokativ" | Last Name Vocative | Last Name + Position |
| "full personalization", "celá personalizace" | Batch package | All |
| "Czech greeting", "české oslovení" | CZ Salutation | Name + Position |
| "German greeting", "German salutation" | DE Salutation | Name + Position |
| "personalize in Czech", "personalizace česky" | Czech package | All |
| "hook in German", "hook auf Deutsch" | Hook in German | Company or Person |
Common errors
| Symptom | Likely cause | Fix |
|---|---|---|
Tool returns 404 |
Wrong project | Re-list and reconfirm |
Tool returns 400 |
Malformed body | Check magic_column_type="ai_custom_column", is_boolean=False |
Tool returns 422 |
Column with that name already exists | Use a different column_name |
Tool returns 429 |
Rate limit | Increase delay between calls to 2–3 s |
Safety
- Always show the prompt to the user before previewing or launching.
- Always preview before launching.
- Write all prompts in English for best GPT-4o-Mini performance, with
"Write your output in {language}."appended for non-English output. The exception is vocative output (Czech / Polish / Slovak grammar rules ARE in the prompt itself).