Skip to main content
Glama
MakeSlates MCP Server

MakeSlates MCP Server

MakeSlates MCP Server

AI-powered slide deck creation for Cursor, Claude Code, and other MCP clients.

Create beautiful presentations with natural language - just describe what you want, and the AI builds it for you.

Try It Now

Quick test with npx (requires API key):

MAKESLATES_API_KEY=sk_live_your_key npx makeslates-mcp-server

Or configure it with your AI assistant (Cursor, Claude Code, etc) - see below.

Related MCP server: Egile MCP Slide Deck Generator

Quick Start

1. Get Your API Key

  1. Go to makeslates.com/settings

  2. Sign in and generate an API key

  3. Copy your sk_live_... key

2. Configure Your MCP Client

For Cursor

Add to your Cursor MCP settings (~/.cursor/mcp.json):

{
  "mcpServers": {
    "makeslates": {
      "command": "npx",
      "args": ["-y", "makeslates-mcp-server"],
      "env": {
        "MAKESLATES_API_KEY": "sk_live_your_key_here"
      }
    }
  }
}

For Claude Code

Add to ~/.claude/claude_desktop_config.json:

{
  "mcpServers": {
    "makeslates": {
      "command": "npx",
      "args": ["-y", "makeslates-mcp-server"],
      "env": {
        "MAKESLATES_API_KEY": "sk_live_your_key_here"
      }
    }
  }
}

For Claude Desktop

Add to your Claude Desktop config:

{
  "mcpServers": {
    "makeslates": {
      "command": "npx",
      "args": ["-y", "makeslates-mcp-server"],
      "env": {
        "MAKESLATES_API_KEY": "sk_live_your_key_here"
      }
    }
  }
}

3. Restart Your Editor

After updating the config, restart Cursor/Claude to load the MCP server.

4. Start Creating!

Once configured, you can ask your AI assistant things like:

Simple Requests:

  • "Create a pitch deck for my AI startup"

  • "Make a presentation about Q4 results with charts"

  • "Build slides explaining our new product features"

Detailed Requests:

"Create a dark mode presentation called 'AI Trends 2024' with:
- An opening slide with a striking image
- A slide showing market size is $4.2B
- A bar chart comparing adoption rates
- A two-column slide with pros and cons"

Editing Existing Presentations:

  • "List my presentations"

  • "Add a team slide to presentation abc-123"

  • "Change slide 3 to show 50% growth instead of 40%"

The AI will automatically:

  1. Call list_templates() to see available layouts

  2. Create your presentation with create_presentation_with_slides()

  3. Return a link: https://makeslates.com/deck/{id}

Available Tools

Tool

Description

list_templates

List all slide templates (call this first!)

create_presentation_with_slides

Create a full presentation in one call

list_presentations

List your presentations

get_presentation

Get a presentation with all slides

add_slide_from_template

Add a slide using a template

update_slide

Update slide content

delete_slide

Remove a slide

get_upload_url

Get URL for image uploads

Slide Templates

Opening Slides

  • image-full - Full-bleed image with title (best for first slide)

  • title - Title and subtitle

  • section - Section divider

Content Slides

  • title-content - Header with bullet points

  • two-column - Side-by-side comparison

  • three-column - Three parallel points

  • image-left / image-right - Image with text

Impact Slides

  • big-number - Single impressive metric

  • quote - Featured quotation

  • statement - Bold claim with visual

Data Slides

  • chart-bar - Bar chart

  • chart-pie - Pie chart

  • chart-line - Line chart

How It Works

When you ask: "Create a pitch deck about AI automation"

You → Cursor/Claude → MakeSlates MCP Server → makeslates.com API
                           ↓
              1. list_templates() - Get available layouts
              2. create_presentation_with_slides({
                   title: "AI Automation Pitch Deck",
                   darkMode: true,
                   slides: [
                     { template: "image-full", title: "AI Automation" },
                     { template: "title-content", title: "The Problem", content: "..." },
                     { template: "big-number", number: "10x", label: "Faster" },
                     { template: "chart-bar", title: "ROI Comparison", data: [...] }
                   ]
                 })
              3. Returns: https://makeslates.com/deck/abc-123

The AI agent handles all the API calls - you just describe what you want!

Example Agent Prompts

Goal

What to Ask

Quick pitch deck

"Create a 5-slide pitch deck for an AI automation SaaS"

Data presentation

"Make slides for Q4 metrics with revenue charts showing 34% growth"

Product showcase

"Build a presentation about our 3 new features with images"

Edit existing

"Add a slide with our team bios to presentation abc-123"

Update content

"Change the growth number on slide 3 from 40% to 50%"

Environment Variables

Variable

Description

Required

MAKESLATES_API_KEY

Your API key from makeslates.com

Yes

MAKESLATES_API_URL

Custom API URL (default: https://makeslates.com/api/mcp)

No

License

MIT

Available Tools

14 tools
add_slide_from_templateA

THE ONLY WAY TO ADD SLIDES - Uses pre-designed templates.

ALWAYS use this tool. NEVER use add_slide. Templates: title, section, image-full, two-column, quote, big-number, chart-bar, etc.

  1. Call list_templates first

  2. Pick the best template

  3. Use this tool to add the slide

  4. Use update_slide only to change text content

Inputs: template (required), presentationId (required), position.

create_presentationA

Create a new empty presentation. Use create_presentation_with_slides for efficiency.

Inputs: title (required), darkMode, workspaceId.

create_presentation_with_slidesA

Create a presentation with slides in one call.

Each slide needs a template ID and content fields. Use list_templates to see all templates and their contentFields.

Content fields map to element roles - pass them directly: { template: "big-number", number: "42%", label: "Growth" }

Inputs: title (required), slides (required), darkMode, workspaceId.

delete_presentationB

Soft-delete a presentation

Inputs: id (required).

delete_slideC

Delete a slide from a presentation

Inputs: slideIndex (required), presentationId (required).

get_presentationA

Get a presentation by ID with all its slides and content

Inputs: id (required).

get_schemaA

Get schema reference. Usually not needed - just use templates.

Inputs: no named parameters.

get_upload_urlA

Get a presigned URL for fast direct image uploads.

Returns:

  • uploadUrl: POST your image file here directly

  • publicUrl: Use this URL in your slides after upload

This is MUCH faster than base64 encoding. Upload directly to storage.

Inputs: filename (required), contentType.

list_presentationsA

List presentations. Use workspaceId to filter by workspace, or omit for personal presentations.

Inputs: limit, search, workspaceId.

list_templatesA

MANDATORY FIRST STEP - List all available slide templates.

YOU MUST call this before adding any slides. Templates are the ONLY way to create good-looking slides. Each template has perfect spacing, typography, and layout built-in.

Inputs: no named parameters.

list_workspacesA

List workspaces the user is a member of. Returns workspace id, name, slug, and role.

Inputs: no named parameters.

move_presentationA

Move a presentation to a different workspace, or to personal (no workspace). Only the presentation creator can move it.

Inputs: id (required), workspaceId.

update_presentationA

Update a presentation's metadata. Use update_slide for slide content.

Inputs: id (required), title, darkMode.

update_slideB

Update a slide's content. Replaces elements array entirely.

Design rules:

  • backgroundColor: ALWAYS "default"

  • font: ALWAYS "default"

  • Text color: ALWAYS "default"

Inputs: slideIndex (required), presentationId (required), elements, backgroundColor.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 14 tools

    Disambiguation4/5

    Most tools are clearly distinct, but 'add_slide_from_template' and 'update_slide' overlap in that both modify slide content—descriptions clarify the boundary but the existence of a deprecated 'add_slide' (mentioned in text) creates minor confusion. The relationship between 'create_presentation' and 'create_presentation_with_slides' is clear from names and descriptions.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun snake_case pattern (e.g., list_workspaces, move_presentation, add_slide_from_template). No deviations or mixed conventions.

    Tool Count5/5

    14 tools is well-scoped for a presentation creation and management server. Each tool serves a distinct purpose covering workspaces, presentations, slides, templates, and uploads.

    Completeness4/5

    Covers core CRUD for presentations, slides, and workspaces, plus template listing, schema retrieval, and image upload. Minor gap: no tool to reorder slides or duplicate presentations, but these are likely workaroundable.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers