slidev-mcp

mcp server for slidev to make web ppt quickly and elegantly

GitHub Stars

50

User Rating

Not Rated

Favorites

0

Views

59

Forks

6

Issues

2

README
Slidev slidev-mcp AI

AI-powered Professional Slide Creation Made Easy!

English | 中文

Slidev AI TypeScript Vue 3
✨ Introduction

slidev-mcp is an intelligent slide generation tool based on Slidev that integrates large language model technology, allowing users to automatically generate professional online PPT presentations with simple descriptions.

AI Key Features:

  • Dramatically lowers the barrier to using Slidev
  • Natural language interactive slide creation
  • Automated generation of professional presentations
🎥 Demo Video

The following video demonstrates the basic process of creating a Slidev project using the MCP tool (with a Chinese interface example):

https://github.com/user-attachments/assets/88e9d940-23cb-4da7-a4a7-68f635c8a3c5

🚀 Quick Start

For detailed setup and usage instructions, please see Quick Start Guide.

Environment Variable

You can customize the root directory where generated Slidev projects are stored by setting the environment variable SLIDEV_MCP_ROOT (MUST be an absolute path). If not set (or set as a non-absolute path), the default relative directory .slidev-mcp (under current working directory) is used.

Example (Windows cmd, PowerShell similar):

Projects will then be created under that absolute path instead of .slidev-mcp/.
set SLIDEV_MCP_ROOT=my-slides
python main.py


Projects will then be created under `my-slides/` instead of `.slidev-mcp/`.

## 🔧 Available Tools

The MCP server provides the following tools for slide creation and management:

### Environment & Project Management

| Tool | Input Parameters | Output | Purpose |
|------|------------------|--------|---------|
| `check_environment` | None | Environment status and version info | Verify dependencies are installed |
| `create_slidev` | `path` (str), `title` (str), `author` (str) | Project creation status and path | Initialize new Slidev project |
| `load_slidev` | `path` (str) | Project content and slide data | Load existing presentation |

### Slide Content Management

| Tool | Input Parameters | Output | Purpose |
|------|------------------|--------|---------|
| `make_cover` | `title` (str), `subtitle` (str, opt), `author` (str, opt), `background` (str, opt), `python_string_template` (str, opt) | Cover slide creation status | Create/update cover page |
| `add_page` | `content` (str), `layout` (str, opt) | New slide index | Add new slide to presentation |
| `set_page` | `index` (int), `content` (str), `layout` (str, opt) | Update status | Modify existing slide content |
| `get_page` | `index` (int) | Slide content in markdown | Retrieve specific slide content |

### Utility Tools

| Tool | Input Parameters | Output | Purpose |
|------|------------------|--------|---------|
| `websearch` | `url` (str) | Extracted markdown text | Gather web content for slides |


> **Note**: `opt` = optional parameter

## 📄 License

MIT License © 2023 [LSTM-Kirigaya](https://github.com/LSTM-Kirigaya)