SkillHub

notion-md

v1.0.0

Convert Markdown to Notion blocks with full format support. Handles bold, italic, strikethrough, inline code, headings, lists, tables, callouts, and more.

Sourced from ClawHub, Authored by Patronum

Installation

Please help me install the skill `notion-md` from SkillHub official store. npx skills add maweis1981/notion-md

notion-md

Convert Markdown to Notion blocks with full format support.

Features

  • Rich Text: Bold, italic, strikethrough, inline code, underline, color
  • Headings: H1, H2, H3 with proper styling
  • Lists: Bulleted, numbered, toggle lists
  • Blocks: Quotes, callouts, dividers, code blocks
  • Advanced: Tables, nested content, links
  • Parent Page: Configurable parent page ID

Setup

1. Get Notion API Key

  1. Go to https://www.notion.so/my-integrations
  2. Create new integration
  3. Copy the API key (starts with ntn_)

2. Configure API Key

# Option A: Environment variable
export NOTION_API_KEY="ntn_your_key"

# Option B: Config file
mkdir -p ~/.config/notion
echo "ntn_your_key" > ~/.config/notion/api_key

3. Get Parent Page ID

The parent page where new pages will be created:

notion-md list-pages

Or set default:

export NOTION_PARENT_PAGE_ID="parent_page_id"

Usage

Create Page from File

notion-md create --file article.md --title "My Article" --emoji 📝

Create from stdin

echo "# Hello World" | notion-md create "Page Title"

Options

Option Description
--file, -f Input Markdown file
--title, -t Page title (required)
--emoji, -e Page icon (default: 📄)
--parent-id, -p Parent page ID
--dry-run Preview without creating

List Pages

notion-md list-pages

Append to Page

echo "## New Section" | notion-md append --page-id "abc123..."

Notion Format Mapping

Markdown Notion Block
# Title heading_1
## Title heading_2
### Title heading_3
**bold** bold annotation
*italic* italic annotation
~~text~~ strikethrough
`code` code annotation
--- divider
- item bulleted_list_item
1. item numbered_list_item
> quote quote
text code block
::: callout callout
| table | table (basic)

Examples

Rich Content

# My Article

**This is bold** and *this is italic*.

> Important quote here

## Code Example

```python
def hello():
    print("Hello World")
  • Item 1
  • Item 2
### Create with Options

```bash
notion-md create 
  --file blog-post.md 
  --title "My Blog Post" 
  --emoji ✍️ 
  --parent-id "page_id_here"

Environment Variables

Variable Description
NOTION_API_KEY Notion API key
NOTION_PARENT_PAGE_ID Default parent page ID

API Version

Notion API: 2022-06-28