Notion Md
VerifiedConvert Markdown to Notion blocks with full format support. Handles bold, italic, strikethrough, inline code, headings, lists, tables, callouts, and more.
$ Add to .claude/skills/ About This Skill
# 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
- Go to https://www.notion.so/my-integrations
- Create new integration
- Copy the API key (starts with `ntn_`)
2. Configure API Key
```bash # 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:
```bash notion-md list-pages ```
Or set default:
```bash export NOTION_PARENT_PAGE_ID="parent_page_id" ```
Usage
Create Page from File
```bash notion-md create --file article.md --title "My Article" --emoji 📝 ```
Create from stdin
```bash 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
```bash notion-md list-pages ```
Append to Page
```bash 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
```markdown # 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
Use Cases
- Convert Markdown files into properly formatted Notion pages with full rich text support
- Create new Notion pages from CLI with custom titles, emojis, and parent page targeting
- Append Markdown content to existing Notion pages for incremental documentation updates
- Preview Markdown-to-Notion block conversion with dry-run mode before creating pages
- Automate content publishing pipelines from Markdown repositories to Notion workspaces
Pros & Cons
Pros
- +Comprehensive format mapping covering headings, lists, tables, callouts, code blocks, and rich text
- +Supports multiple input methods — file, stdin, and append to existing pages
- +Clean CLI interface with environment variable and config file authentication options
Cons
- -One-way conversion only (Markdown to Notion) — cannot export Notion back to Markdown
- -Table support is labeled as basic, which may not handle complex table structures well
FAQ
What does Notion Md do?
What platforms support Notion Md?
What are the use cases for Notion Md?
100+ free AI tools
Writing, PDF, image, and developer tools — all in your browser.
Next Step
Use the skill detail page to evaluate fit and install steps. For a direct browser workflow, move into a focused tool route instead of staying in broader support surfaces.