PluginBench
MCP Server
Maintained

io.github.estruyf/vscode-demo-time MCP Server

io.github.estruyf/vscode-demo-time

Script flawless coding demonstrations and present slides seamlessly within VS Code.

What is the io.github.estruyf/vscode-demo-time MCP server?

The Demo Time MCP server enables AI assistants to interact with Demo Time, a VS Code extension for scripting automated coding demonstrations and presentations. It helps build and manage demos with features like code highlighting, integrated slides, and customizable actions to eliminate typos and missteps during live presentations.

Demo Time lets you automate coding demonstrations within VS Code by scripting each step—from creating files and opening them to highlighting code segments and executing commands. Use it to deliver polished, stress-free presentations with integrated slides and PowerPoint support, ensuring your demos flow perfectly every time.

How to install io.github.estruyf/vscode-demo-time

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "vscode-demo-time": {
      "command": "npx",
      "args": [
        "-y",
        "@demotime/mcp"
      ]
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • create — Create files with specified content as part of a demo step
  • open — Open files during a demo presentation
  • highlight — Highlight specific code segments to draw audience attention
  • snippet — Insert code snippets with template arguments and highlighting
  • execute commands — Execute VS Code commands and tasks as part of demo actions

Use cases

  • Automate live coding demonstrations to eliminate typos and maintain perfect flow
  • Create step-by-step scripted walkthroughs of code features with highlighted sections
  • Build integrated presentations combining slides and code examples in VS Code
  • Execute complex multi-step demos with file creation, editing, and command execution
  • Seamlessly transition between PowerPoint slides and code demonstrations

io.github.estruyf/vscode-demo-time MCP server FAQ

What is Demo Time?

Demo Time is a VS Code extension that lets you script automated coding demonstrations and presentations. You define steps in a JSON or YAML file (demo.json or demo.yaml) that automate file creation, opening, highlighting, and command execution to deliver flawless live demos.

Is Demo Time free?

Yes, Demo Time is available as a free extension on the Visual Studio Marketplace.

How do I install the MCP server?

Install the @demotime/mcp package via npm. The MCP server enables AI assistants to interact with and help build Demo Time presentations programmatically.

What actions can I script in a demo?

You can script actions like creating files, opening files, highlighting code at specific positions, inserting snippets with template arguments, and executing VS Code commands. See demotime.show/actions/ for the complete list of supported actions.

Can I use Demo Time with PowerPoint?

Yes, Demo Time includes PowerPoint integration that lets you seamlessly move from slides to code demonstrations within VS Code.

Where can I find examples?

The GitHub repository includes example demo configurations and links to full presentation projects like demo-time-presentation and presentation-github-actions that demonstrate real-world usage.

README (reference)

Source of truth, from the repository.

<h1 align="center"> <img alt="Demo Time" src="./assets/logo/demotime.png"> </h1> <h2 align="center">Demo Time empowers you to script flawless coding demonstrations and present slides seamlessly within Visual Studio Code. Eliminate typos and missteps, ensuring engaging and stress-free presentations.</h2> <p align="center"> <a href="https://marketplace.visualstudio.com/items?itemName=eliostruyf.vscode-demo-time" title="Check it out on the Visual Studio Marketplace"> <img src="https://vscode-marketplace-badge.vercel.app/api/badge/version/eliostruyf.vscode-demo-time?style=flat-square" alt="Visual Studio Marketplace" style="display: inline-block" /> </a> <img src="https://vscode-marketplace-badge.vercel.app/api/badge/installs/eliostruyf.vscode-demo-time?style=flat-square" alt="Number of installs" style="display: inline-block;margin-left:10px" /> <a href="https://github.com/sponsors/estruyf" title="Become a sponsor" style="margin-left:10px"> <img src="https://img.shields.io/github/sponsors/estruyf?color=%23CE2E7C&logo=github&style=flat-square" alt="Sponsor the project" style="display: inline-block" /> </a> </p> <h2 align="center"> <a href="https://demotime.show/" title="Demo Time Documentation"> Documentation 👉 demotime.show </a> </h2> <p align="center"> <img alt="Demo Time" src="./assets/demotime.gif"> </p>

Features

  • Scripted Demos: Automate your coding demonstrations to maintain a perfect flow.​
  • Code Highlighting: Emphasize specific code segments to draw audience attention.​
  • Integrated Slides: Present slides directly within VS Code for a cohesive experience.​
  • Customizable Actions: Execute various VS Code commands and tasks as part of your demo.
  • PowerPoint Integration: Seamlessly move from slides to code using the PowerPoint integration.

Getting Started

  1. Installation: Install the extension.​
  2. Initialization: After installation, initialize the extension in your project by opening the Explorer panel in VS Code. Locate the Demo Time view and click on the "Initialize" button. This action creates a .demo folder in your workspace containing either a demo.json or demo.yaml file, depending on your chosen format.​
  3. Creating Demos: Populate the act file with your actions, defining each step and action as required.​ More information about the available actions can be found in the supported actions documentation section.

Documentation

For detailed instructions, advanced configurations, and best practices, please refer to the comprehensive documentation available at https://demotime.show. This resource offers in-depth guides and examples to help you maximize the extension's capabilities.

Example act file

Here is an example demo:

{
  "$schema": "https://demotime.show/demo-time.schema.json",
  "title": "Sample demo",
  "description": "This is a sample demo configuration to show the capabilities of the extension.",
  "demos": [
    {
      "title": "Step 1",
      "description": "This is step 1",
      "steps": [
        {
          "action": "create",
          "path": "sample.json",
          "content": "{\n  \"firstName\": \"Elio\",\n  \"lastName\": \"Struyf\"\n}"
        },
        {
          "action": "open",
          "path": "sample.json"
        },
        {
          "action": "highlight",
          "path": "sample.json",
          "position": "2:3"
        }
      ]
    },
    {
      "title": "Step 2",
      "description": "This is step 2",
      "steps": [
        {
          "action": "snippet",
          "contentPath": "./snippets/insert_and_highlight.json",
          "args": {
            "MAIN_FILE": "sample.json",
            "CONTENT_PATH": "content.txt",
            "CONTENT_POSITION": "3",
            "HIGHLIGHT_POSITION": "4"
          }
        }
      ]
    }
  ]
}

You can also explore a comprehensive example in the following GitHub Repositories:

Testing

Run linting and unit tests with:

npm run lint
npm test

Tests use Jest with built-in coverage. New tests are located in the tests/ directory.

Support

If you enjoy my work and find them useful, consider sponsor me and the ecosystem to help Open Source sustainable. Thank you!

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

<p align="center"> <a href="https://github.com/sponsors/estruyf" title="Sponsor Elio Struyf" target="_blank"> <img src="https://img.shields.io/badge/Sponsor-Elio%20Struyf%20%E2%9D%A4-%23fe8e86?logo=GitHub&style=flat-square" height="25px" alt="Sponsor @estruyf" /> </a> </p> <br /> <p align="center"> <a href="https://visitorbadge.io/status?path=https%3A%2F%2Fgithub.com%2Festruyf%2Fvscode-demo-time"> <img src="https://api.visitorbadge.io/api/visitors?path=https%3A%2F%2Fgithub.com%2Festruyf%2Fvscode-demo-time&labelColor=%23555555&countColor=%2397ca00" height="25px" alt="Demo Time visitors" /> </a> </p> <br /> <p align="center"> <a href="https://struyfconsulting.com" title="Hire Elio Struyf via Struyf Consulting" target="_blank"> <img src="./assets/struyf-consulting.webp" height="25px" alt="Struyf Consulting Logo" /> </a> </p>

Related MCP servers

Control multiple browser sessions in parallel across Playwright, Browserbase, Anchor, and Cloudflare.

42
TypeScript
Apache-2.0
View repository →

11 open strategy frameworks as AI-guided prompts for any MCP client.

6
JavaScript
View repository →

Exact-decimal double-entry for agents. Call MCP tools; do not do money math in tokens.

1
TypeScript
MIT
View repository →

Embedded calculators, codegen & schematic review: CRC, timing, struct, IEEE-754, KiCad.

0
TypeScript
MIT
View repository →

Diagnoses pg-boss and graphile-worker job queues: retry storms, stuck workers, missed schedules.

0
TypeScript
MIT
View repository →
OPOpenBrand logo

OpenBrand

Maintained

Extract logos, colors, and brand assets from any website URL instantly.

784
TypeScript
MIT
View repository →