Allows for the conversion of LaTeX Beamer slide PDFs into PowerPoint presentations while preserving high-resolution vector graphics and metadata.
Allows for the conversion of Typst slide PDFs, specifically those created with the Touying package, into PowerPoint presentations while preserving high-resolution vector graphics and metadata.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@notebookLM2PPTConvert research.pdf to PowerPoint and remove the watermarks."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
notebookLM2PPT
Convert PDF Slides to PowerPoint Presentations with Vector Graphics (highest resolution).

✨ Features
🎯 Vector Graphics - Maintains highest resolution in generated PPT
📝 Metadata Conversion - Preserves title, author and other metadata
📐 Auto Detection - Automatically detects slide size and aspect ratio
🚀 Easy to Use - Simple command line interface with beautiful output
📄 Page Selection - Convert specific pages with
--pagesoption⚡ Parallel Processing - Speed up conversion with
--paralleloption🔍 Dependency Check - Automatically checks for required tools
🎨 Web UI - Modern web interface with drag-and-drop support
📡 REST API - FastAPI server with async processing
🔧 MCP Support - Model Context Protocol for AI integration
🐳 Docker Ready - All-in-one Docker image available
💎 Glassmorphism Design - Ultra modern frosted glass UI with neon effects
🌍 18 Languages - Full internationalization support
🌍 Supported Languages
Language | Code | Language | Code |
English | en | Italiano | it |
简体中文 | zh-CN | Русский | ru |
繁體中文 | zh-TW | العربية | ar |
日本語 | ja | हिन्दी | hi |
한국어 | ko | ไทย | th |
Français | fr | Tiếng Việt | vi |
Deutsch | de | Nederlands | nl |
Español | es | Polski | pl |
Português | pt | Türkçe | tr |
🎯 Motivation
LaTeX users can easily convert
beamerslides from PDF to PPTTypst users can easily convert
touyingslides from PDF to PPT
🚀 Quick Start
Option 1: Command Line (pipx)
# Install via pipx (recommended)
pipx install notebooklm2ppt
# Convert PDF to PPT
pdf2ppt input.pdf output.pptxOption 2: Web UI (Docker)
For x86_64 / AMD64 (Linux servers, Intel Macs):
docker run -d -p 8100:8100 neosun/notebooklm2ppt:1.2.0-amd64For ARM64 (Apple Silicon Macs, ARM servers):
docker run -d -p 8100:8100 neosun/notebooklm2ppt:1.2.0-arm64Auto-detect architecture:
docker run -d -p 8100:8100 neosun/notebooklm2ppt:latestAccess at: http://localhost:8100
Option 3: API Server
# Install with server dependencies
pip install "notebooklm2ppt[server]"
# Start server
python -m uvicorn web.app:app --host 0.0.0.0 --port 8100API Documentation: http://localhost:8100/docs
📦 Installation
Prerequisites
Install Dependencies
macOS:
brew install pdf2svg inkscapeUbuntu/Debian:
sudo apt-get install pdf2svg inkscapeWindows:
Install notebookLM2PPT
# Recommended: Install with pipx (isolated environment)
pipx install notebooklm2ppt
# Or install with pip
pip install notebooklm2ppt📖 Usage
Basic Usage
# Specify output file
pdf2ppt input.pdf output.pptx
# Auto-generate output filename (input.pptx)
pdf2ppt input.pdf
# Verbose mode
pdf2ppt input.pdf --verboseAdvanced Usage
# Convert specific pages
pdf2ppt input.pdf -p 1-5,7,9-11
# Parallel processing (4 workers)
pdf2ppt input.pdf -j 4
# Force overwrite existing file
pdf2ppt input.pdf output.pptx --force
# Keep temporary files for debugging
pdf2ppt input.pdf --no-cleanCommand Line Options
usage: pdf2ppt [-h] [-v] [--verbose] [--no-clean] [--no-check] [--force]
[--pages PAGES] [--parallel PARALLEL]
[--pdf2svg-path PATH] [--inkscape-path PATH]
input [output]
positional arguments:
input Input PDF file
output Output PPTX file (default: input.pptx)
options:
-h, --help show this help message and exit
-v, --version show program's version number and exit
--verbose Verbose output
--no-clean Keep temporary files
--no-check Skip SVG filter check
--force, -f Overwrite output file if exists
--pages, -p PAGES Page range (e.g., "1-5,7,9-11")
--parallel, -j N Parallel workers (default: 1)
--pdf2svg-path PATH Path to pdf2svg executable
--inkscape-path PATH Path to inkscape executable🔧 Technical Implementation
Convert PDF to SVG using
pdf2svgConvert SVG to EMF using
inkscape(due to python-pptx limitations)Insert EMF into PPT using
python-pptx
🛠️ Tech Stack
Component | Technology |
Language | Python 3.9+ |
PDF Processing | pypdf |
PPT Generation | python-pptx |
PDF to SVG | pdf2svg |
SVG to EMF | Inkscape |
CLI Output | rich |
⚠️ Known Issues
Transparent Background
Elements with transparency are not fully supported due to dependency limitations. You will receive a warning when such issues are detected. You can manually copy the generated SVG to fix the problem.
See #1 for more details.
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Fork the repository
Create your feature branch (
git checkout -b feature/AmazingFeature)Commit your changes (
git commit -m 'Add some AmazingFeature')Push to the branch (
git push origin feature/AmazingFeature)Open a Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Copyright © 2023-2024 Teddy van Jerry (Wuqiong Zhao)
⭐ Star History
📱 Follow Us

This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.