md-to-docs-append

Fork of n8n-nodes-md-to-docs with append functionality added

Package Information

Released: 10/9/2025
Downloads: 21 weeklyΒ /Β 53 monthly
Latest Version: 0.7.1
Author: Nathan House / StationX

Documentation

n8n-nodes-md-to-docs-append

Banner image

n8n-nodes-md-to-docs-append

This is an n8n community node. It lets you use Markdown to Google Docs conversion with append functionality in your n8n workflows.

Fork by Nathan House / StationX - Adds append capabilities to the original n8n-nodes-md-to-docs node.

Google Docs is a popular online document editor that allows you to create, edit, and collaborate on documents in real time. With this node, you can automate the process of turning Markdown into beautifully formatted Google Docsβ€”and now you can append content to existing documents!

n8n is a fair-code licensed workflow automation platform.


πŸ“¦ Installation
πŸ› οΈ Operations
πŸ”‘ Credentials
βœ… Compatibility
πŸ“– Usage
πŸ”— Resources
πŸ“… Version history

Installation

Install in your n8n instance via the Community Nodes interface:

  1. Go to Settings β†’ Community Nodes β†’ Install
  2. Enter package name: n8n-nodes-md-to-docs-append
  3. Click Install

Or install via npm:

npm install n8n-nodes-md-to-docs-append

Note: The node will load automatically in n8n without requiring a restart.

For self-hosted installations, make sure your n8n instance can install npm dependencies (cheerio, marked).

Follow the installation guide in the n8n community nodes documentation.


Operations

  • Create Document: Instantly create a Google Docs document from Markdown content.
  • Append to Document ✨ NEW: Append Markdown content to an existing Google Docs document (top or bottom).
  • Export Google Doc: Export existing Google Docs to Markdown, PDF, or Plain Text formats.
  • Convert to API Requests: Transform Markdown into Google Docs API request JSON (for advanced HTTP Request node usage).
  • Test Credentials: Verify your Google API credentials and permissions.

Append Functionality

The Append to Document operation allows you to add Markdown content to existing Google Docs without overwriting:

How It Works

  1. Select Operation: Choose "Append to Document" from the operations dropdown
  2. Choose Document: Select the target document by:
    • List: Pick from your Google Docs
    • URL: Paste the full Google Doc URL
    • ID: Enter the document ID directly
  3. Set Append Position:
    • Bottom (default): Adds content at the end of the document
    • Top: Adds content at the beginning of the document
  4. Add Markdown: Enter your Markdown content
  5. Execute: The content is converted and appended to your document

Use Cases

  • Daily Logs: Append daily entries to a running log document
  • Report Updates: Add new sections to existing reports
  • Meeting Notes: Add notes to the top of a shared meeting document
  • Change Logs: Prepend new changes to a changelog document
  • Content Aggregation: Collect information from multiple sources into one document

Technical Details

  • Preserves all existing document content
  • Maintains formatting of existing content
  • Supports all standard Markdown elements (headers, lists, tables, links, images, etc.)
  • Respects document structure and spacing
  • Uses Google Docs API batchUpdate for reliable insertion

Credentials

This node requires Google API credentials to authenticate with Google Docs and Google Drive services.

πŸš€ Prerequisites

  • Google Cloud Account - Free tier available
  • Google Cloud Project - Create one in Google Cloud Console
  • n8n Instance - Running version 1.0.0 or higher

πŸ”§ Authentication Methods

  • OAuth2 (Recommended)
    • Best for personal and small team use
    • User-friendly consent flow
    • Automatic token refresh

βš™οΈ Quick Setup

⚠️ Important: This node requires Google API credentials to function.

πŸ“– Detailed Setup Guide: See Google Cloud Console Documentation for complete OAuth2 setup instructions.

Essential Steps:

  1. 🌐 Enable APIs in Google Cloud Console:

    • Google Docs API
    • Google Drive API
  2. πŸ” Create OAuth2 Credentials with required scopes:

    • https://www.googleapis.com/auth/documents
    • https://www.googleapis.com/auth/drive
  3. ⚑ Configure Credential in n8n:

    • Add new Google OAuth2 API credential
    • Enter your Client ID and Client Secret
    • Complete OAuth flow
  4. βœ… Verify Setup:

    • Use Test Credentials operation
    • Check for successful connection

Compatibility

Minimum Requirements:

  • n8n version: 1.0.0 or higher
  • Node.js: 20.15.0 or higher
  • API Version: n8n Nodes API v1

Tested Versions:

  • βœ… n8n v1.110.0+ (latest stable)
  • βœ… n8n v1.82.0+ (recent versions)
  • βœ… Node.js v20.15.0+ (LTS)

Known Compatibility:

  • βœ… Google APIs: Docs API v1, Drive API v3
  • βœ… Google Drive Types: My Drive, Shared Drives, and Shared with Me
  • βœ… Modern Browsers: Chrome 90+, Firefox 88+, Safari 14+
  • βœ… AI Agents: Compatible with usableAsTool: true
  • βœ… Community Nodes: Full n8n community node standards

Usage

This node provides powerful Markdown to Google Docs conversion with advanced formatting capabilities. Here's how to use it effectively:

πŸš€ Quick Start - Create Document

  1. Add the "Markdown to Google Docs (Append)" node to your workflow.
  2. Select the "Create Document" operation (this is the default).
  3. Choose your Google Drive and destination Folder where the document will be created.
  4. Set a Title for your new document.
  5. Input your Markdown content in the text area.
  6. (Optional) Use "Additional Options" to create a document from a template or use placeholders.
  7. Execute the node! Your document will be created in the specified location.

πŸš€ Quick Start - Append to Document

  1. Add the "Markdown to Google Docs (Append)" node to your workflow.
  2. Select the "Append to Document" operation.
  3. Choose your target document (by list, URL, or ID).
  4. Select append position (Top or Bottom).
  5. Input your Markdown content in the text area.
  6. Execute the node! Your content will be appended to the document.

Pro tip: Supports advanced formatting, images (via public URLs), tables, checkboxes, and even deep list nesting.

For more help, see the n8n Try it out documentation.


🎯 Key Features

✨ Core Capabilities:

  • Full Markdown to Google Docs conversion
  • Append to existing documents (top or bottom)
  • Headers, bold/italic, links, lists, code blocks
  • Multiple output formats (single/multiple requests)
  • AI Agent Tool compatibility (usableAsTool: true)

πŸš€ Advanced Features:

  • Document Append: Add content to existing docs without overwriting
  • Position Control: Append to top or bottom of document
  • Nested Formatting: Complex combinations like bold and italic together
  • Smart Tables: Header styling (bold + centered) with full cell formatting and vertical alignment
  • Page Break Control: Multiple strategies for automatic page breaks (H1, H2, or custom text markers)
  • Deep Nesting: Unlimited list levels with proper indentation
  • Image Embedding: Direct URL-based image insertion with optional sizing
  • Checkbox Lists: Native Google Docs checkboxes for task lists
  • Precise Positioning: Accurate text range calculations for Google Docs API

✨ Template and Text Placeholder System:

  • Use Any Doc as a Template: Select any Google Doc from your Drive to use as a template. The node preserves headers and footers, only replacing the body content.
  • Dynamic Text Placeholder Replacement:
    • Use text placeholders like {{key}} anywhere in your template (headers, footers, body).
    • Provide a JSON object with corresponding key-value pairs (e.g., { "key": "Your Value" }) to replace them dynamically.
    • Supports n8n expressions for generating values on the fly.
  • Smart Markdown Injection:
    • By default, your Markdown input replaces the entire body of the template.
    • Optionally, specify a "Main Content Placeholder" (e.g., {{MainContent}}) in your template body. The node will replace only this specific placeholder with your rendered Markdown.
    • The Markdown input can be disabled entirely if you only need to replace simple placeholders.

πŸ“‹ Image Support Notes:

  • βœ… URL-based images: Direct embedding from public URLs (![alt](https://example.com/image.png))
  • βœ… Optional sizing: Width/height attributes supported
  • ⚠️ URL requirements: Must be publicly accessible, under 2KB URL length
  • ❌ Local files: File uploads not supported (URL-only)

βœ… Supported Elements

Element Google Docs Output Status
# Headers Styled headings (H1-H6) βœ…
**bold** / *italic* Text formatting + nested combinations βœ…
[links](url) Hyperlinks in any context βœ…
- lists / 1. lists Bulleted/numbered with unlimited nesting and multi-line items βœ…
- [x] / - [ ] Native Google Docs checkboxes βœ…
`code` Monospace formatting + syntax highlighting βœ…
| tables | Structured tables with header styling and vertical alignment βœ…
> quotes Indented blockquote with internal formatting βœ…
--- Horizontal rules βœ…
![images](url) Embedded images (URL only) βœ…

Resources


Version History

v0.7.0 (Latest)

  • ✨ Added append position control (top/bottom)
  • πŸ› Fixed variable declaration issues
  • βœ… Added peerDependencies for n8n-workflow

v0.6.5

  • πŸ› Fixed missing variable declarations for TypeScript optional chaining

v0.6.4

  • βœ… Added peerDependencies configuration
  • πŸ“ Updated package metadata

v0.6.0-0.6.3

  • ✨ Initial append functionality
  • πŸ“ Package setup and configuration

🀝 Contributing

This is a fork of the original n8n-nodes-md-to-docs by Georgi Kyosev.

Contributions welcome:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

MIT Β© Nathan House / StationX

Based on n8n-nodes-md-to-docs by Georgi Kyosev


Made with ❀️ for the n8n community by StationX


Tags: n8n, markdown, google-docs, automation, community-node, n8n-workflow, document-generation, append, stationx

Discussion