mcp server
auto-blogger
Automatic Blog Writer (Powered by AOAI and uv)
Set up
Runs on your computer. Pick your agent and operating system.
Before you start
- uv (`curl -LsSf https://astral.sh/uv/install.sh | sh`)
{
"mcpServers": {
"auto-blogger": {
"command": "uvx",
"args": [
"auto-blogger"
]
}
}
}same format Cursor, GitHub Copilot CLI, Junie, JetBrains AI Assistant, Augment (Auggie CLI), Factory Droid, Kiro, Devin CLI +12
Values in angle brackets are placeholders. Restart Claude Desktop after editing its config.Claude Desktop docs
README
synced Oct 26, 2026Auto-Blogger
AI-powered blog post generator CLI tool with MCP integration, SEO optimization, and Unsplash images.
🌟 Generate high-quality, SEO-optimized blog posts with automatic research, keywords, and professional images!
✨ Key Features
- 🤖 LangChain-powered blog post generation with customizable tone and length
- 🔍 MCP (Model Context Protocol) integration for automatic research from trusted sources
- 🎯 SEO Optimization: Auto-generates keywords, abstract, and URL-friendly slugs
- 📸 Unsplash Integration: Automatically adds professional header images with proper attribution
- 📝 YAML Front Matter: Includes metadata (title, date, author, keywords, abstract)
- 🌍 Multi-language Support: Korean, English, and more
- 🔌 OpenAI-compatible APIs: Works with Azure OpenAI, OpenRouter, vLLM, LiteLLM, etc.
- 💻 Cross-platform: Wrapper scripts for Linux, macOS, and Windows
- 🎨 Markdown Linter Compliant: Clean, properly formatted markdown output
📋 Table of Contents
- Installation
- Quick Start
- Configuration
- Usage Examples
- Features in Detail
- Support This Project
- Contributing
- License
🚀 Quick Start
Prerequisites
- Python 3.12 or higher
- UV package manager
- OpenAI API key (or compatible service)
Installation
# Clone the repository
git clone https://github.com/rkttu/auto-blogger.git
cd auto-blogger
# Install dependencies with UV
uv sync
# Initialize configuration
uv run auto-blogger init
Basic Usage
# Generate a blog post (default: 1 Unsplash image, Korean)
uv run auto-blogger generate "Your Topic Here"
# Save to file with custom options
uv run auto-blogger generate "AI in 2024" \
--output ai-trends.md \
--language English \
--length long \
--research
⚙️ Configuration
-
Initialize configuration:
uv run auto-blogger init -
Edit
.envfile with your credentials:# OpenAI Configuration OPENAI_API_KEY=your-api-key-here DEFAULT_MODEL=gpt-4o-mini OPENAI_API_BASE= # Optional: for Azure OpenAI or compatible services # Blog Settings DEFAULT_LANGUAGE=Korean DEFAULT_TONE=professional DEFAULT_LENGTH=medium TEMPERATURE=0.7 # MCP Servers (optional, for research) MCP_SERVERS=https://learn.microsoft.com/api/mcp # Unsplash API (optional, for images) UNSPLASH_APPLICATION_ID=your-app-id UNSPLASH_ACCESS_KEY=your-access-key UNSPLASH_SECRET_KEY=your-secret-key
📖 Usage Examples
Generate with Images
# With 1 image (default)
uv run auto-blogger generate "Docker Best Practices"
# With multiple images
uv run auto-blogger generate "Cloud Architecture" --image-count 2
# Without images
uv run auto-blogger generate "API Design" --image-count 0
Research Mode
# Gather reference materials from MCP servers
uv run auto-blogger generate "Kubernetes Security" \
--research \
--tone technical \
--output k8s-security.md
Multi-language Support
# Korean (default)
uv run auto-blogger generate "인공지능의 미래"
# English
uv run auto-blogger generate "The Future of AI" --language English
Custom Tone and Length
# Technical, long-form article
uv run auto-blogger generate "Distributed Systems" \
--tone technical \
--length long
# Casual, short post
uv run auto-blogger generate "Weekend Coding Projects" \
--tone casual \
--length short
CLI Options
Options:
--output, -o PATH Output file path (default: stdout)
--language, -l TEXT Language (default: Korean)
--tone, -t TEXT Tone: professional, casual, technical
--length TEXT Length: short (300-500), medium (800-1200), long (1500-2500)
--research, -r Enable MCP research
--author, -a TEXT Author name (default: Auto-Blogger)
--image-count, -i INT Number of images (0-3, default: 1)
--help Show help message
🎯 Features in Detail
SEO Optimization
Auto-Blogger automatically generates:
- Keywords: 5-8 relevant SEO keywords extracted from content
- Abstract: 2-3 sentence marketing-friendly summary
- URL Slug: English-friendly slug (even for non-English titles)
MCP Integration
Leverage Model Context Protocol servers for research:
- Microsoft Learn documentation
- Custom MCP servers
- Automatic reference gathering and citation
Unsplash Images
Professional images with:
- Keyword-based search
- Proper attribution (required by Unsplash)
- Download tracking (API compliance)
- Markdown-ready formatting
Output Format
---
title: "Your Title"
date: 2024-11-20
author: Auto-Blogger
language: English
slug: your-title-slug
keywords:
- keyword1
- keyword2
abstract: |
Your auto-generated abstract here.
---

*Photo by [Photographer](link) on [Unsplash](link)*
> This article was written with partial assistance from generative AI.
# Your Title
[Content here...]
💖 Support This Project
If Auto-Blogger helps you create better content faster, please consider:
- ⭐ Star this repository on GitHub
- 🐛 Report issues or suggest new features
- 🔀 Contribute via pull requests
- 💝 Sponsor via GitHub Sponsors
Your support helps maintain and improve this project. Every contribution, big or small, makes a difference!
🛠️ Development️ Development
# Install dependencies
uv sync
# Run locally
uv run auto-blogger generate "Test Topic"
# Run tests (if available)
uv run pytest
🗺️ Roadmap
- LangChain integration
- MCP server support for research
- SEO optimization (keywords, abstract, slug)
- Unsplash image integration
- YAML front matter
- OpenAI-compatible API support
- Cross-platform wrapper scripts
- LlamaIndex integration for advanced RAG
- Multiple MCP servers simultaneously
- Batch post generation
- Platform-specific optimizations (Dev.to, Medium, WordPress)
- WebSocket-based MCP servers
- Web UI (optional)
🤝 Contributing
Contributions are welcome! Please feel free to submit issues and pull requests.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
📄 License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
🙏 Acknowledgments
- Built with LangChain
- Images from Unsplash
- Research powered by Model Context Protocol
Made with ❤️ by rkttu
If this project helps you, please consider sponsoring ⭐