2Slides Logo
How to Use OpenClaw with the 2Slides MCP Server (2026 Guide)
2Slides Team
7 min read

How to Use OpenClaw with the 2Slides MCP Server (2026 Guide)

Quick answer (≤60 words): OpenClaw can generate real PowerPoint files by adding the 2Slides MCP server under the

mcp.servers
key in
~/.openclaw/openclaw.json
. Get a key at 2slides.com/api, add a stdio server (
command: "npx"
,
args: ["2slides-mcp"]
,
env.API_KEY
) or a remote one (
url
+
transport: "streamable-http"
), then ask your OpenClaw agent to build a deck.

OpenClaw is an open-source AI agent framework, and it is a full Model Context Protocol (MCP) client. Wire in the 2Slides MCP server and any OpenClaw agent gains the ability to turn a brief — or a document it can read — into a finished, editable

.pptx
.

This guide covers the exact

openclaw.json
schema for both transports (local stdio and remote Streamable HTTP), the
openclaw mcp
CLI shortcuts, how MCP tools surface into agent tool profiles, and how to verify everything with a live probe.

Why give OpenClaw the 2Slides server?

OpenClaw agents reason, plan, and read your files. They don't render binary slide files — that's a job for a dedicated generator. With 2Slides attached:

  • OpenClaw decides the slide structure, copy, and narrative from your source material.
  • The 2Slides MCP server produces the actual PowerPoint — theme-based Fast PPT, or image-designed slides with optional AI voice narration and an exportable asset bundle.

What you need first

  1. OpenClaw installed (
    openclaw
    on your PATH).
  2. A 2Slides API key from 2slides.com/api.
  3. Node.js for the stdio transport (
    npx 2slides-mcp
    ). The HTTP transport needs nothing local.

Stdio vs Streamable HTTP: which transport?

The 2Slides MCP server supports both. In OpenClaw, the two are distinguished simply by which fields you set — there is no

type
field:

Stdio (local)Streamable HTTP (remote)
Identifying field
command
present
url
present
Transport fieldn/a
transport: "streamable-http"
Local Node.jsRequiredNot required
Best forLocal agents, full controlRemote/hosted agents, CI

Method 1: stdio in openclaw.json

OpenClaw's config lives at

~/.openclaw/openclaw.json
. MCP servers go under the top-level
mcp
key, in a name-keyed
servers
object:

{ "mcp": { "servers": { "2slides": { "command": "npx", "args": ["2slides-mcp"], "env": { "API_KEY": "YOUR_2SLIDES_API_KEY" } } } } }

That's it — the presence of

command
marks it as a local stdio server.

Method 2: Streamable HTTP in openclaw.json

For the hosted endpoint, set

url
and the canonical
transport
field:

{ "mcp": { "servers": { "2slides": { "url": "https://2slides.com/api/mcp?apikey=YOUR_2SLIDES_API_KEY", "transport": "streamable-http" } } } }

Note: OpenClaw's canonical transport value is

"streamable-http"
(a legacy
type: "http"
alias is accepted but normalized away — write
transport
). If your key belongs in a header rather than the URL, use
"headers": { "Authorization": "Bearer YOUR_2SLIDES_API_KEY" }
instead of the
?apikey=
query.

Or use the
openclaw mcp
CLI

These write to the same

mcp.servers
config:

# stdio openclaw mcp add 2slides --command npx --arg 2slides-mcp --env API_KEY=YOUR_2SLIDES_API_KEY # remote (set the full server object as JSON) openclaw mcp set 2slides '{"url":"https://2slides.com/api/mcp?apikey=YOUR_2SLIDES_API_KEY","transport":"streamable-http"}'

Verify the connection

OpenClaw ships dedicated MCP diagnostics:

openclaw mcp status --verbose # resolved transport/auth/timeouts (static, no connection) openclaw mcp doctor 2slides --probe # static checks, then a live connection test openclaw mcp probe 2slides --json # connect live and list the exposed tools openclaw mcp reload # drop cached in-process MCP runtimes

A successful

probe
lists the 2Slides tools (
slides_generate
,
themes_search
, and the rest), confirming the agent can call them.

How the tools reach your agent

Configured MCP tools are exposed automatically in OpenClaw's

coding
and
messaging
tool profiles. Notes:

  • The
    minimal
    profile hides MCP tools; switch profiles if you don't see them.
  • To disable MCP tools explicitly, add
    "bundle-mcp"
    to
    tools.deny
    .
  • To expose only some 2Slides tools, use per-server
    toolFilter.include
    /
    toolFilter.exclude
    (exact names or
    *
    globs):
{ "mcp": { "servers": { "2slides": { "command": "npx", "args": ["2slides-mcp"], "env": { "API_KEY": "YOUR_2SLIDES_API_KEY" }, "toolFilter": { "include": ["themes_search", "slides_generate", "jobs_get"] } } } } }

To keep a server defined but inactive, set

"enabled": false
.

Generate your first deck

Ask your OpenClaw agent in plain language:

Read PROJECT_BRIEF.md and generate an 8-slide overview deck. Find a clean "minimal" theme from 2slides first, then create the PowerPoint and give me the download link.

OpenClaw calls

themes_search
slides_generate
(Fast PPT) → returns the
downloadUrl
. For custom image-designed slides it uses
slides_create_pdf_slides
and polls
jobs_get
(about every 20 seconds) until ready.

The 2Slides MCP tool surface

ToolWhat it doesCredits
themes_search
Find a
themeId
for Fast PPT
Free
slides_generate
Theme-based PowerPoint (Fast PPT), sync/async10 / page
slides_create_pdf_slides
Custom image-designed slides from text (Nano Banana)100 / page (1K/2K), 200 (4K)
slides_create_like_this
Slides matching a reference image's style100 / page (1K/2K), 200 (4K)
slides_generate_narration
Add AI voice narration to a Nano Banana job210 / page
slides_download_pages_voices
Export pages + audio as a ZIPFree
jobs_get
Poll an async job to completionFree

Common mistakes and troubleshooting

  • Used
    mcpServers
    instead of
    mcp.servers
    .
    In OpenClaw config, the key is
    mcp.servers
    . (
    mcpServers
    is a different, external-client concept — running OpenClaw as a server.)
  • Wrote
    type
    instead of
    transport
    .
    type
    is a legacy alias; the canonical field is
    transport: "streamable-http"
    .
  • Tools don't appear. You're likely on the
    minimal
    profile, or
    tools.deny
    contains
    bundle-mcp
    . Switch to
    coding
    /
    messaging
    and run
    openclaw mcp reload
    .
  • stdio server won't start. Confirm Node.js is installed and
    API_KEY
    is set in
    env
    .
  • Polling async jobs. Let the agent poll
    jobs_get
    every ~20s; Nano Banana and narration jobs are async by default.

Frequently asked questions

Does OpenClaw support custom MCP servers?

Yes. OpenClaw is a native MCP client. Add servers under the

mcp.servers
key in
~/.openclaw/openclaw.json
, or via
openclaw mcp add
/
openclaw mcp set
. Both stdio and Streamable HTTP transports are supported.

What's the config key for MCP servers in OpenClaw?

mcp.servers
— a name-keyed object inside the top-level
mcp
object. Local servers use
command
/
args
/
env
; remote servers use
url
+
transport: "streamable-http"
.

How do I confirm 2Slides is connected?

Run

openclaw mcp probe 2slides --json
for a live connection that lists the exposed tools, or
openclaw mcp doctor 2slides --probe
for static checks plus a connection test.

Does it generate a real PowerPoint?

Yes.

slides_generate
returns an editable
.pptx
; the Nano Banana tools return image-designed decks with optional AI narration and an exportable bundle.

Where do I get the key and config?

At 2slides.com/api?tab=mcp — your key, a copy-paste config, and the Streamable HTTP endpoint.

The takeaway

One

mcp.servers
entry in
openclaw.json
gives every OpenClaw agent a slide generator. Stdio for local,
transport: "streamable-http"
for remote — then
openclaw mcp probe
to prove it works.

For the wider context, see how MCP is changing presentation workflows and the PowerPoint MCP server ecosystem map. Comparing agents? See how to use Claude Code and OpenAI Codex with the same server.

Get your key and config at 2slides.com/api?tab=mcp and give your OpenClaw agent a one-sentence path to a finished deck.

Sources:

About 2Slides

Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.

Try For Free