Mailchimp To Ghost
Sync Mailchimp newsletter posts to a Ghost blog. Fetches newsletter content from RSS, converts HTML to clean markdown with horizontal rules, uploads images t... Skill: Mailchimp To Ghost Owner: nickludlam Summary: Sync Mailchimp newsletter posts to a Ghost blog. Fetches newsletter content from RSS, converts HTML to clean markdown with horizontal rules, uploads images t... Tags: latest:0.1.0 Version history: v0.1.0 | 2026-07-23T12:31:24.704Z | auto mailchimp-to-ghost v0.1.0 - Initial release: sync Mailchimp newsletters to Ghost blog via RSS. - Converts Mailchimp HTML to clean
Rank
62
Safety
84
Downloads
3.0k
Updated
Oct 9, 2026
Version
0.1.0
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 3K downloads reported by the source. Last updated 10/9/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 9, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 9, 2026
- Adoption signal
- 3K downloadsadoption · observed Oct 9, 2026
- Latest release
- 0.1.0release · observed Jul 23, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s17axevwnzhw0vg8qs8f2kvxdn83q1mx:mailchimp-to-ghost-skill- Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-nickludlam-mailchimp-to-ghost-skill/snapshot"
Documentation
CLAWHUB
13,135 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: mailchimp-to-ghost
description: Sync Mailchimp newsletter posts to a Ghost blog. Fetches newsletter content from RSS, converts HTML to clean markdown with horizontal rules, uploads images to Ghost, and publishes as Lexical-format posts with proper formatting.
homepage: https://github.com/nickludlam/mailchimp-to-ghost-skill
caption: Sync Mailchimp newsletter posts to Ghost blog
metadata:
openclaw:
emoji: "📰"
homepage: "https://github.com/nickludlam/mailchimp-to-ghost-skill"
requires:
bins: ["python3", "ghst"]
env: ["GHOST_URL", "GHOST_STAFF_ACCESS_TOKEN"]
primaryEnv: "GHOST_URL"
---
# Sync Newsletter Skill
Fetch newsletter posts from a Mailchimp RSS feed and sync them to a Ghost blog as properly formatted posts with uploaded images and horizontal rules.
## Overview
This skill automates the complete workflow of:
1. **Fetching** newsletter content from Mailchimp's RSS feed
2. **Converting** HTML email content to clean markdown (preserving horizontal rules, links, formatting)
3. **Downloading** images from Mailchimp CDN
4. **Uploading** images to Ghost
5. **Publishing** to Ghost as Lexical-format posts with local images
## Requirements
- **Python 3** with packages: `beautifulsoup4`, `requests`, `feedparser`, `markdownify`, `lxml`
- **ghst CLI** for Ghost publishing (see [ghst skill](../ghst/SKILL.md))
- **Environment variables:**
- `GHOST_URL` - Your Ghost instance URL
- `GHOST_STAFF_ACCESS_TOKEN` - Ghost Admin API token
## Installation
### Python Dependencies
```bash
cd skills/sync-newsletter
pip install beautifulsoup4 requests feedparser markdownify lxml
```
### Ghost CLI (ghst)
Install globally via npm:
```bash
npm install -g @tryghost/ghst
```
## Configuration
Set up your Ghost credentials in `~/.openclaw/.env`:
```env
GHOST_URL="https://myghostblog.com"
GHOST_STAFF_ACCESS_TOKEN="your-token-id:secret"
```
## Usage
### ⚠️ CRITICAL: Always Re-fetch First
**You MUST re-fetch the RSS feed every time before syncing** to ensure you're working with the latest newsletter data. The cache may contain stale or previously-processed entries.
```bash
# 1. Clear any stale cache and fetch fresh from RSS (ALWAYS DO THIS FIRST)
rm -rf cache/ && python3 scripts/fetch_markdown.py
# 2. Sync to Ghost (downloads images, uploads them, creates draft post)
python3 scripts/sync_to_ghost.py
```
**Why this matters:** The RSS feed only shows the most recent newsletter(s). If you sync without re-fetching, you may:
- Create duplicate posts (Ghost will add `-2`, `-3` suffixes to slugs)
- Miss new newsletters entirely
- Process outdated content
### Cache Management
All cached data is stored in the `cache/` folder:
- `cache/feed_cache.xml` — RSS feed cache
- `cache/newsletter_markdown_1.md` — Generated markdown
To force a fresh fetch, delete the cache:
```bash
rm -rf cache/
```
### Deduplication
The sync script checks Ghost for existing posts with similar titles before creating. If a match is found, it warns youREADME.md
# Mailchimp to Ghost SKILL **Version: 1.0.0** This repository contains the `mailchimp-to-ghost` skill for Agents, allowing your AI agent to mirror posts made to a Mailchimp mailing list over to a Ghost blog. It's useful when migrating your content from the former to the latter. It's available from: - [https://github.com/nickludlam/mailchimp-to-ghost-skill](https://github.com/nickludlam/mailchimp-to-ghost-skill) - [https://clawhub.ai/nickludlam/mailchimp-to-ghost](https://clawhub.ai/nickludlam/mailchimp-to-ghost) ## Usage For full details on agent capabilities, command references, and specific workflows, please see the primary [SKILL.md](SKILL.md) instruction file.
_meta.json
{
"ownerId": "kn75m16ma7dcvhhpdvd5t9q9gs83qnpn",
"slug": "mailchimp-to-ghost-skill",
"version": "0.1.0",
"publishedAt": 1784809884704
}skill-card.md
## Description: Sync Mailchimp newsletter posts to a Ghost blog by fetching newsletter content from RSS, converting HTML to clean markdown, uploading images to Ghost, and publishing Lexical-format draft posts. This skill is ready for commercial/non-commercial use. ## Publisher: [nickludlam](https://clawhub.ai/user/nickludlam) ### License/Terms of Use: MIT-0 ## Use Case: Developers and site operators use this skill to migrate or mirror Mailchimp newsletter posts into Ghost as reviewable draft posts with converted formatting, uploaded images, and duplicate-post checks. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: The skill requires a Ghost Admin API token, which can grant publishing and content-management access to the target Ghost site. Mitigation: Use only reviewed Ghost credentials for the intended site, store them in the expected environment variables, and review generated draft posts before publishing. Risk: The sync workflow downloads image URLs supplied by newsletter content. Mitigation: Run the skill only from an environment where those network requests are acceptable, and review newsletter content and generated drafts before using force or update behavior. Risk: Cache-clearing commands can remove local cache contents when copied or run in the wrong directory. Mitigation: Run commands from the intended skill directory and confirm the target path before clearing cache files. ## Reference(s): - [Server-resolved source repository](https://github.com/nickludlam/mailchimp-to-ghost-skill) - [ClawHub skill page](https://clawhub.ai/nickludlam/skills/mailchimp-to-ghost-skill) - [ClawHub publisher profile](https://clawhub.ai/user/nickludlam) ## Skill Output: **Output Type(s):** [markdown, code, shell commands, configuration, guidance] **Output Format:** [Markdown guidance with shell commands and generated markdown or Ghost Lexical post content] **Output Parameters:** [1D] **Other Properties Related to Output:** [Creates local cache files and Ghost draft posts when its scripts are run with configured Ghost credentials.] ## Skill Version(s): 0.1.0 (source: server-resolved release metadata and changelog) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
LICENSE
MIT No Attribution Copyright 2026 Nick Ludlam Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/nickludlam/skills/mailchimp-to-ghost-skill",
"sourceUrl": "https://clawhub.ai/nickludlam/skills/mailchimp-to-ghost-skill",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T10:24:45.481Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-nickludlam-mailchimp-to-ghost-skill/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-nickludlam-mailchimp-to-ghost-skill/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-09T10:24:45.481Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "3K downloads",
"href": "https://clawhub.ai/nickludlam/mailchimp-to-ghost-skill",
"sourceUrl": "https://clawhub.ai/nickludlam/mailchimp-to-ghost-skill",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T10:24:45.481Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "0.1.0",
"href": "https://clawhub.ai/nickludlam/mailchimp-to-ghost-skill",
"sourceUrl": "https://clawhub.ai/nickludlam/mailchimp-to-ghost-skill",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-07-23T12:31:24.704Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-nickludlam-mailchimp-to-ghost-skill/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-nickludlam-mailchimp-to-ghost-skill/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 0.1.0",
"description": "mailchimp-to-ghost v0.1.0 - Initial release: sync Mailchimp newsletters to Ghost blog via RSS. - Converts Mailchimp HTML to clean markdown, preserving formatting, horizontal rules, buttons, and images. - Downloads images from Mailchimp and uploads them to Ghost, updating references. - Publishes newsletters as Ghost Lexical-format draft posts with deduplication to prevent duplicates. - Provides cache management and guides on installation, configuration, and workflow.",
"href": "https://clawhub.ai/nickludlam/mailchimp-to-ghost-skill",
"sourceUrl": "https://clawhub.ai/nickludlam/mailchimp-to-ghost-skill",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-07-23T12:31:24.704Z",
"isPublic": true
}
]
}Record generated Oct 9, 2026.
