jupyter-markdown-mcp

hyunjae-labs/jupyter-markdown-mcp

3.2

If you are the rightful owner of jupyter-markdown-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Jupyter Markdown MCP Server facilitates seamless conversion between Jupyter Notebooks and Markdown, ensuring perfect cell preservation.

Tools
2
Resources
0
Prompts
0

Jupyter Markdown MCP Server

🎉 Now in TypeScript! Version 1.3.0 is a complete TypeScript rewrite. No Python required! 📢 Migration Notice: This package was previously named notebook-convert-mcp. If you have the old package installed, please uninstall it and install jupyter-markdown-mcp instead.

Native TypeScript MCP server for seamless Jupyter Notebook ↔ Markdown conversion with perfect cell preservation.

Features

FeatureDescriptionSupport
Notebook → Markdown.ipynb.md (clean, metadata-free)✅ All Platforms
Markdown → Notebook.md.ipynb (executable)✅ All Platforms

Why This Tool?

Problem: Jupyter Notebooks contain massive metadata that overwhelms AI analysis:

  • Code execution results (often hundreds of lines)
  • Base64 encoded images
  • Kernel information, cell IDs, output metadata
  • AI models struggle to focus on actual content

Solution: Clean conversion for AI-friendly analysis:

  • Notebook → Markdown: Strip all metadata, keep only code and markdown content
  • Markdown → Notebook: Convert back to executable notebooks when needed

Installation

Quick Install (Recommended)

# Install globally
npm install -g jupyter-markdown-mcp

# Run the installer
jupyter-markdown-mcp install

That's it! No Python required - pure TypeScript implementation.

Claude Code CLI Installation

Option 1: Using NPX (No installation needed)
claude mcp add --scope user jupyter-markdown-mcp -- npx jupyter-markdown-mcp@latest
Option 2: Using NPM Global Install
# Install globally first
npm install -g jupyter-markdown-mcp

# Then add to Claude Code CLI
claude mcp add --scope user jupyter-markdown-mcp -- jupyter-markdown-mcp

Manual Installation

1. Install Dependencies
cd "{YOUR_PROJECT_PATH}/jupyter-markdown-mcp"
npm install
npm run build

No Python dependencies required! Built with TypeScript and Node.js.

2. AI CLI Configuration

Claude Code CLI
macOS

~/.config/claude-code/claude_desktop_config.json:

{
  "mcpServers": {
    "jupyter-markdown": {
      "command": "node",
      "args": [
        "/{YOUR_PROJECT_PATH}/jupyter-markdown-mcp/dist/index.js"
      ],
      "env": {
        "NODE_ENV": "production"
      }
    }
  }
}
Windows

%APPDATA%\\Claude\\claude_desktop_config.json:

{
  "mcpServers": {
    "jupyter-markdown": {
      "command": "node",
      "args": [
        "C:\\\\{YOUR_PROJECT_PATH}\\\\jupyter-markdown-mcp\\\\dist\\\\index.js"
      ],
      "env": {
        "NODE_ENV": "production"
      }
    }
  }
}

3. Restart AI CLI

Success confirmation:

🟢 jupyter-markdown - Connected (2 tools cached)
  convert_notebook, convert_markdown

Verify Installation

# Check installed version
npm list -g jupyter-markdown-mcp

# Verify MCP connection
claude mcp list
# Should show: jupyter-markdown-mcp - ✓ Connected

Usage Examples

Notebook → Markdown (AI Analysis)

Convert all notebooks in the project folder to markdown for AI analysis.
Use convert_notebook to convert .ipynb files to clean markdown format.

What happens:

  • Removes all execution outputs and metadata
  • Converts code cells to ```python blocks
  • Preserves markdown cells as-is
  • Result: Clean, AI-friendly markdown files

Markdown → Notebook (Development)

Convert markdown document back to executable notebook.
Use convert_markdown to convert tutorial.md into a working notebook.

What happens:

  • Detects ```python code blocks automatically
  • Converts code blocks to executable code cells
  • Converts other content to markdown cells
  • Result: Fully functional Jupyter Notebook

Practical Workflow

For Machine Learning Projects

# 1. Convert notebooks to markdown for AI analysis
convert_notebook(
  source_path="/{YOUR_PROJECT_PATH}/analysis_notebook.ipynb",
  output_dir="/{YOUR_PROJECT_PATH}/markdown_docs/"
)

# 2. AI analyzes clean markdown (no metadata noise)
# 3. Modify/improve content with AI help

# 4. Convert back to executable notebook
convert_markdown(
  source_path="/{YOUR_PROJECT_PATH}/markdown_docs/improved_analysis.md", 
  output_dir="/{YOUR_PROJECT_PATH}/notebooks/"
)

Benefits

  • Clean AI Analysis: No metadata interference
  • Bidirectional: Seamless conversion both ways
  • Preserves Content: Code and markdown integrity maintained
  • Universal: Works on all platforms (macOS, Windows, Linux)

Troubleshooting

Node.js Version

# Check Node.js version (requires v14 or higher)
node --version

# Verify installation
node -e "console.log('Node.js OK')"

Build Issues

# Rebuild if needed
npm run build

# Check build output
ls dist/

Path Configuration

Replace {YOUR_PROJECT_PATH} with your actual path:

macOS/Linux Examples

  • /Users/YourName/Projects/mcp-servers
  • /home/username/development/mcp-servers

Windows Examples

  • C:\\Users\\YourName\\Projects\\mcp-servers
  • D:\\Development\\mcp-servers

Changelog

See for detailed version history.

Latest: Version 1.3.0 (2025-01-20)

  • Complete TypeScript rewrite - No Python required!
  • Native performance - Faster execution with Node.js
  • Type safety - Full TypeScript type definitions
  • Added: Cell boundary markers (<!-- NOTEBOOK_CELL_BOUNDARY -->) to maintain cell structure
  • Improved: Enhanced markdown-to-notebook parsing to respect cell boundaries
  • Result: Perfect round-trip conversion with no cell merging

Version 1.1.2

  • Initial stable release with basic conversion functionality

Focus: Simple, reliable Jupyter Notebook ↔ Markdown conversion for AI-enhanced development workflows.