
Generate, render, and host Slidev presentations from markdown
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Show the user a visual theme gallery with preview images. ONLY call this when the user explicitly asks to SEE or BROWSE themes visually (e.g. "show me the themes", "what do they look like", "let me pick a theme"). This renders an interactive gallery in the user's UI. To show a filtered subset (e.g. only dark themes), first call list_themes to identify matching themes, then pass their names here. Do NOT call this to decide which theme to use yourself — use list_themes for that instead.
Optional list of theme names to show (e.g. ['dracula', 'neocarbon', 'vibe']). If omitted, all themes are shown. Use list_themes first to find matching themes, then pass the filtered names here.
Show the user a visual theme gallery with preview images. ONLY call this when the user explicitly asks to SEE or BROWSE themes visually (e.g. "show me the themes", "what do they look like", "let me pick a theme"). This renders an interactive gallery in the user's UI. To show a filtered subset (e.g. only dark themes), first call list_themes to identify matching themes, then pass their names here. Do NOT call this to decide which theme to use yourself — use list_themes for that instead.
| Argument | Type | Description |
|---|---|---|
| themes | any | Optional list of theme names to show (e.g. ['dracula', 'neocarbon', 'vibe']). If omitted, all themes are shown. Use list_themes first to find matching themes, then pass the filtered names here. |
{
"type": "object",
"properties": {
"themes": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
],
"default": null,
"description": "Optional list of theme names to show (e.g. ['dracula', 'neocarbon', 'vibe']). If omitted, all themes are shown. Use list_themes first to find matching themes, then pass the filtered names here."
}
},
"additionalProperties": false
}Export a presentation as a downloadable PDF. The presentation must have been created in the current session. Returns a URL to download the PDF.
| Argument | Type | Description |
|---|---|---|
| uuid* | string | UUID of the presentation to export. Must be from the current session. |
{
"type": "object",
"required": [
"uuid"
],
"properties": {
"uuid": {
"type": "string",
"description": "UUID of the presentation to export. Must be from the current session."
}
},
"additionalProperties": false
}Get the Slidev syntax guide: how to write slides in markdown. Returns the official Slidev syntax reference (frontmatter, slide separators, speaker notes, layouts, code blocks) plus built-in layout documentation and an example deck. Call this once to learn how to write Slidev presentations.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Get full documentation for a specific theme: layouts, components, and examples. Call this BEFORE render_slides to learn the theme's unique features. Each theme has different layouts, components, and frontmatter options. Use what you learn here to produce high-quality, theme-specific slides. This is the primary tool for preparing to render slides. When the user specifies a theme, call this directly — no need to call browse_themes.
| Argument | Type | Description |
|---|---|---|
| theme* | string | Theme name (e.g. 'seriph', 'neocarbon', 'field-manual'). Available themes: default, seriph, apple-basic, bricks, shibainu, academic, cobalt, dracula, eloc, field-manual, frankfurt, geist, neocarbon, neversink, nord, penguin, purplin, scholarly, swiss-ai-hub, the-unnamed, unicorn, vibe, vuetiful, zhozhoba. |
{
"type": "object",
"required": [
"theme"
],
"properties": {
"theme": {
"type": "string",
"description": "Theme name (e.g. 'seriph', 'neocarbon', 'field-manual'). Available themes: default, seriph, apple-basic, bricks, shibainu, academic, cobalt, dracula, eloc, field-manual, frankfurt, geist, neocarbon, neversink, nord, penguin, purplin, scholarly, swiss-ai-hub, the-unnamed, unicorn, vibe, vuetiful, zhozhoba."
}
},
"additionalProperties": false
}List all slide presentations created in the current MCP session. Returns URLs, themes, and timestamps for each presentation you've created.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Get a list of all available themes with style descriptions and recommendations. Call this to decide which theme to use. Returns a guide organized by style (dark, academic, modern, playful, etc.) with "best for" recommendations. After picking a theme, call get_theme with the theme name to read its full documentation (layouts, components, examples) before rendering. This tool does NOT display anything to the user — it is for your own reference when choosing a theme.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Render a Slidev presentation from markdown and return its hosted URL. IMPORTANT: Before calling this tool, you MUST call get_theme with the theme name you plan to use. Each theme has unique layouts, components, and frontmatter options. Apply the theme's specific features in your markdown to produce high-quality slides that match the theme's design. If the user has not specified a theme, call list_themes to pick one. If you are unfamiliar with Slidev markdown syntax, call get_slidev_guide. Images must be remote URLs or base64-encoded inline. Local file paths are not supported.
| Argument | Type | Description |
|---|---|---|
| uuid | any | UUID of an existing presentation to update in-place (same URL). Omit to create a new presentation. |
| theme* | string | Theme name (e.g. 'seriph', 'default', 'neocarbon'). Read slidev://themes/installed for the full list of available themes. |
| markdown* | string | Full Slidev markdown including frontmatter. Use layouts, components, and features specific to the chosen theme. |
| color_schema | string | Color scheme: 'light' (default), 'dark', or 'auto'. Controls whether slides render in light or dark mode. |
{
"type": "object",
"required": [
"markdown",
"theme"
],
"properties": {
"uuid": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "UUID of an existing presentation to update in-place (same URL). Omit to create a new presentation."
},
"theme": {
"type": "string",
"description": "Theme name (e.g. 'seriph', 'default', 'neocarbon'). Read slidev://themes/installed for the full list of available themes."
},
"markdown": {
"type": "string",
"description": "Full Slidev markdown including frontmatter. Use layouts, components, and features specific to the chosen theme."
},
"color_schema": {
"type": "string",
"default": "light",
"description": "Color scheme: 'light' (default), 'dark', or 'auto'. Controls whether slides render in light or dark mode."
}
},
"additionalProperties": false
}Render all slides as PNG images and return them. Use this to visually review a presentation. Returns one image per slide so you can see exactly what each slide looks like and give specific feedback.
| Argument | Type | Description |
|---|---|---|
| uuid* | string | UUID of the presentation to screenshot. |
{
"type": "object",
"required": [
"uuid"
],
"properties": {
"uuid": {
"type": "string",
"description": "UUID of the presentation to screenshot."
}
},
"additionalProperties": false
}