Package Information
Available Nodes
Documentation
n8n-nodes-md-to-docs

This is an n8n community node. It lets you use Markdown to Google Docs conversion in your n8n workflows.
This node transforms Markdown content into fully formatted Google Docs documents, handling complex elements like nested lists, tables with styling, and mixed text formatting through Google's Docs API.
n8n is a fair-code licensed workflow automation platform.
π¦ Installation
π οΈ Operations
π Credentials
β
Compatibility
π Usage
π Resources
π
Version history
Installation
Install in your n8n instance:
npm install n8n-nodes-md-to-docs
Restart n8n to load the new node.
Follow the installation guide in the n8n community nodes documentation.
Operations
- Create Document: Directly create a Google Docs document with Markdown content
- Convert to API Requests: Transform Markdown into Google Docs API request JSON
- Test Credentials: Verify Google API credentials and permissions
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:
π Enable APIs in Google Cloud Console:
- Google Docs API
- Google Drive API
π Create OAuth2 Credentials with required scopes:
https://www.googleapis.com/auth/documentshttps://www.googleapis.com/auth/drive.file
β‘ Configure Credential in n8n:
- Add new Google OAuth2 API credential
- Enter your Client ID and Client Secret
- Complete OAuth flow
β 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.82.0+ (latest stable)
- β n8n v1.70.0+ (recent versions)
- β Node.js v20.15.0+ (LTS)
Known Compatibility:
- β Google APIs: Docs API v1, Drive API v3
- β Modern Browsers: Chrome 90+, Firefox 88+, Safari 14+
- β
AI Agents: Compatible with
usableAsTool: true - β Community Nodes: Full n8n community node standards
Potential Issues:
- β οΈ Older n8n versions (< 1.0.0): May not support latest node API features
- β οΈ Node.js < 20: Not tested and may have compatibility issues
- β οΈ Google API changes: Will be updated as needed
Usage
This node provides powerful Markdown to Google Docs conversion with advanced formatting capabilities. Here's how to use it effectively:
π Quick Start
- Add the "Markdown to Google Docs" node to your workflow
- Input your Markdown content in the text area
- Choose operation:
- "Create Document" - Direct document creation (recommended)
- "Convert to API Requests" - Get JSON for HTTP Request node
- Configure document title and output format
- Execute - The node handles the Google Docs API calls
π― Key Features
β¨ Core Capabilities:
- Full Markdown to Google Docs conversion
- Headers, bold/italic, links, lists, code blocks
- Multiple output formats (single/multiple requests)
- AI Agent Tool compatibility (
usableAsTool: true)
π Advanced Features:
- Nested Formatting: Complex combinations like bold and italic together
- Smart Tables: Header styling (bold + centered) with full cell formatting
- Deep Nesting: Unlimited list levels with proper indentation
- Precise Positioning: Accurate text range calculations for Google Docs API
- Image Embedding: Direct URL-based image insertion with optional sizing
- Checkbox Lists: Native Google Docs checkboxes for task lists
π Image Support Notes:
- β
URL-based images: Direct embedding from public URLs (
) - β Optional sizing: Width/height attributes supported
- β οΈ URL requirements: Must be publicly accessible, under 2KB URL length
- β Local files: File uploads not supported (URL-only)
π€ AI Agent Integration
Perfect for AI-powered workflows:
// Import the processor
import { MarkdownProcessor } from 'n8n-nodes-md-to-docs';
// AI Agent can automatically use this node
const markdownContent = await aiAgent.generateMarkdown(userInput);
const googleDocsRequests = MarkdownProcessor.convertMarkdownToApiRequests(
markdownContent,
'AI Generated Document Title',
'single'
);
Available in n8n workflows:
- Node name:
markdownToGoogleDocs - AI Tool compatibility:
usableAsTool: true - Automatic parameter detection for AI agents
β 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 | β |
- [x] / - [ ] |
Native Google Docs checkboxes | β |
`code` |
Monospace formatting + syntax highlighting | β |
| tables | |
Structured tables with header styling | β |
> quotes |
Indented blockquotes with internal formatting | β |
--- |
Horizontal rules | β |
 |
Embedded images (URL only) | β |
Resources
Version History
π Advanced Examples
Example Markdown Input
# My Document Title
This is a **bold statement** with *italic emphasis*.
## Features List
1. First feature
2. Second feature
- Sub-feature A
- Sub-feature B
### Code Example
\`\`\`javascript
const greeting = "Hello World!";
console.log(greeting);
\`\`\`
> Important note: This will be formatted as a blockquote.

| Feature | Status |
| -------- | ------ |
| **Bold** | β
|
| *Italic* | β
|
JSON Output Structure
{
"documentTitle": "My Document Title",
"createDocumentRequest": {
"title": "My Document Title"
},
"batchUpdateRequest": {
"requests": [
{
"insertText": {
"location": { "index": 1 },
"text": "My Document Title\\n\\n"
}
},
{
"updateTextStyle": {
"range": { "startIndex": 1, "endIndex": 18 },
"textStyle": { "bold": true, "fontSize": { "magnitude": 24, "unit": "PT" } },
"fields": "bold,fontSize"
}
}
]
}
}
βοΈ Configuration Options
| Parameter | Type | Description |
|---|---|---|
markdownInput |
string | The Markdown content to convert |
documentTitle |
string | Title for the Google Docs document |
operation |
options | "convertToApiRequests" or "createDocument" |
outputFormat |
options | "single" or "multiple" request format |
π οΈ Development
Setup
git clone <your-repo>
cd n8n-nodes-md-to-docs
npm install
Build
npm run build
Lint
npm run lint
npm run lintfix
Test Locally
# Link for local development
npm link
cd ~/.n8n/nodes
npm link n8n-nodes-md-to-docs
π€ Contributing
- 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
πΊοΈ Roadmap
β Completed Features
- Advanced Table Support: Complete table conversion with header formatting (bold + centered) and cell-level formatting
- Nested Formatting: Complex combinations like bold and italic together with perfect range calculations
- Deep List Nesting: Unlimited levels of nested lists with proper Google Docs bullet handling
- Smart Range Calculations: Precise text positioning accounting for Google Docs API behavior
- Mixed Content Formatting: Bold, italic, code, and links working in all contexts (lists, tables, quotes)
- Comprehensive Markdown Support: Headers, paragraphs, blockquotes, code blocks, horizontal rules
- Direct Integration: One-click document creation with
createDocumentoperation - no HTTP Request node needed - Checkbox Lists: Native Google Docs checkboxes for
- [x]and- [ ]syntax with proper checked/unchecked states - Image Support: Convert Markdown images to Google Docs embedded images (URL-based only)
π Future Enhancements
- Local Image Upload: Support for local image file uploads and conversion
- Advanced Table Features: Column alignment, table styling options, merged cells
- Custom Styling: User-defined fonts, colors, and spacing
- Template System: Pre-defined Google Docs templates with placeholder replacement
- Batch Processing: Handle multiple Markdown files in a single operation
- Export Options: Support for additional output formats (PDF, DOCX)
- Collaborative Features: Document sharing and permission management
π License
MIT Β© Georgi Kyosev
Made with β€οΈ for the n8n community