mdslides-mcp-server
Generates Reveal.js HTML presentations from Markdown content, allowing customization of themes, highlight themes, and Reveal.js options.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
mdslides-mcp-server
An MCP (Model Context Protocol) server for generating HTML slides from Markdown content using the mkslides library.
What it Does
This server provides a simple interface to the mkslides command-line tool, allowing you to generate presentation slides directly from Markdown input via the Model Context Protocol. This enables integration with tools like Claude in VSCode to easily create and manage presentations.
Related MCP server: ppt-generator
Demo
Features
Generate HTML slides from Markdown.
Support for various mkslides configuration options (themes, highlight themes, Reveal.js options).
Clean handling of temporary files.
Containerized deployment option using Docker.
Installation
Prerequisites
Python 3.12 or higher
mkslides installed and available in your PATH.
Model Context Protocol (MCP) client (e.g., Claude in VSCode).
Docker (if using the Docker installation method).
Installation Methods
Using pip
Clone the repository:
git clone https://github.com/your-repo/mdslides-mcp-server.git cd mdslides-mcp-serverInstall using pip and uv (recommended):
uv syncOr using pip:
pip install .
Using Docker
Ensure Docker is installed and running.
From the repository root, run the deployment script:
./deploy_mdslides_docker.sh
This script will build the Docker image (if not already built) and start a container instance named `mdslides-mcp-instance`. The server inside the container will be running and ready to accept connections via MCP. The script also handles creating the necessary output directory (`./mkslides_output`) on the host.
### Configuration in MCP Settings
To use the server with your MCP client (like Claude in VSCode), you need to add it to your MCP settings.
If you installed using pip, you can run the server directly:
```json
{
"mcpServers": {
"mdslides-mcp-local": {
"command": "python",
"args": ["src/mdslides_mcp_server/server.py"],
"disabled": false,
"autoApprove": []
}
}
}If you are using the Docker deployment via the script:
Configure your MCP client to attach to the running container instance:
{
"mcpServers": {
"mdslides-mcp-local": {
"autoApprove": [],
"disabled": false,
"timeout": 60,
"command": "docker",
"args": [
"attach",
"mdslides-mcp-instance"
],
"transportType": "stdio"
}
}
}Usage with Claude/VSCode
Once configured in your MCP settings, you can use the generate_slides tool directly within your Claude chat interface in VSCode.
Available Tool: generate_slides
Generates HTML presentation slides from Markdown input using mkslides and serves them via a local HTTP server.
Parameters:
markdown_content(string, required): Raw Markdown text for the slides.slides_theme(string, optional): Theme name for the slides (e.g.,black,white,league,beige,night,serif,simple,solarized,moon,dracula,sky,blood). Overrides the default.slides_highlight_theme(string, optional): Syntax highlighting theme for code blocks (any built-in theme fromhighlight.js).revealjs_options(object, optional): A dictionary containing Reveal.js config options to merge/override defaults.
Returns:
(string): A URL (e.g.,
http://localhost:8080/latest/index.html) pointing to the generated HTML slides served by the MCP server's internal HTTP server. You can open this URL in your browser.
Example Usage:
<use_mcp_tool>
<server_name>mdslides-mcp-local</server_name>
<tool_name>generate_slides</tool_name>
<arguments>
{
"markdown_content": "# My Presentation\n\n---\n\n## Slide 2\n\n- Bullet 1\n- Bullet 2",
"slides_theme": "black",
"revealjs_options": {
"transition": "slide"
}
}
</arguments>
</use_mcp_tool>This will generate the slides in the default output directory (./mkslides_output) using the 'black' theme and a 'slide' transition.
Development
Contributing
Contributions are welcome! Please follow standard GitHub practices: fork the repository, create a feature branch, and submit a pull request.
Running Tests
Currently, there is a placeholder test file (tests/test_server.py). To run tests, you would typically use a test runner like pytest:
pytestRemember to add actual tests to tests/test_server.py.
Building from Source
Follow the pip installation steps above to set up your development environment.
License
This project is licensed under the MIT License - see the LICENSE file for details. (Note: A LICENSE file does not currently exist in the repository. You may want to create one.)
Acknowledgements
mkslides for the core slide generation functionality.
Model Context Protocol for enabling server integration.
Related MCP Connectors
List, share, upload, and manage Slideless HTML presentations from any MCP host.
Generate, render, and host Slidev presentations from markdown
Build it. Rehearse it. Own the room. The hosted MCP server for Kadal Deck (deck.kadal.cc), which has your back for the whole talk, from the first idea to the last applause. Connect once with OAuth and your AI agent can list and inspect your decks, read a talk in progress (current slide, who is watching, polls and questions by votes), check analytics, change titles, visibility and passcodes, roll back versions, create share links, and quick-edit and publish decks through the web builder, with conflict-safe publishing that never overwrites newer work. Pair it with the local server (npx @kadal/deck mcp) to write, check and build decks on your machine. Open source.
MCP Server for Web2MD — convert URLs to Markdown from Claude Desktop, Cursor, etc.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceMCP server for generating slides from natural language, with interactive preview and export to PDF, PPTX, and Markdown.19MIT
- FlicenseAqualityAmaintenanceAn MCP server that auto-generates presentations from a topic using AI, supporting slide editing, visual QA, and export to HTML/PPTX.357-
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables creating, editing, and manipulating PowerPoint presentations programmatically through Claude and other MCP-compatible clients.MIT
- AlicenseAqualityBmaintenanceAn MCP server that turns an AI agent into a slide author, enabling drafting decks in Pandoc Markdown, compiling to PDF or PowerPoint, validating with PNG exports, and pulling in research from the web, Wikipedia, and Semantic Scholar.172MIT