Encelade

Encelade is a hosted MCP presentation server.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • List Projects: List presentation decks. Returns paginated results. Use the returned cursor to fetch the next page.
  • Get Project: Get a single presentation deck by its pid (public ID).
  • Update Project: Update an existing deck. Pass the project pid and the fields to update.

What data it sees

Do you need an account

No: the server works without sign-in

Encelade is a hosted MCP presentation server. Connect it to Claude Desktop, Claude Code, Cursor, or any MCP client, and a single generate_project call turns a topic and outline into a complete, designed, interactive web deck — narrative, structure, and visuals included.

Why it's different from PowerPoint MCP servers

Most "presentation" MCP servers wrap python-pptx, so the model has to script every shape, textbox, and bullet call by call. Encelade works at the deck level: you describe the deck, you don't assemble it. You get a shareable interactive web deck (a URL), not a hand-built .pptx.

How it works

Generation is asynchronous. generate_project returns a session ID; poll get_generation_session until the deck is ready, then share the link. Typical 10–15 slide decks build in a couple of minutes.

Tools

Tool Purpose
generate_project Topic + outline → full interactive deck (async; returns a session)
plan_project Generate an outline/plan only
get_generation_session Poll generation status + get the deck link
list_projects List your decks (paginated)
get_project Get a single deck by public ID
update_project Update a deck's name/theme
delete_project Permanently delete a deck

Auth

Bearer API key, or OAuth 2.0 with discovery (RFC 9728 / 8414, PKCE). No manual config — your client auto-discovers the auth flow on connect.

Homepage: https://www.encelade.ai · Docs: https://www.encelade.ai/docs/mcp

How to connect

How to connect Encelade to Claude

The server address to paste into Claude settings:

https://encelade.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect Encelade to ChatGPT

The server address to paste into ChatGPT settings:

https://encelade.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect Encelade to Cursor

The server address to paste into Cursor settings:

https://encelade.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (7)

Raw names from tools/list. Only developers need these.

list_projectsList presentation decks. Returns paginated results. Use the returned cursor to fetch the next page.
get_projectGet a single presentation deck by its pid (public ID).
update_projectUpdate an existing deck. Pass the project pid and the fields to update.
delete_projectPermanently delete a deck by its pid. This action cannot be undone.
generate_projectGenerate a full presentation from a topic and outline hints. Returns a session ID immediately — poll get_generation_session to track progress. Required fields: outlineHints (array of slide topic strings). Planning typically takes 30–90 seconds; generating takes 60–180 seconds depending on slide count. Do not flag a session as potentially stuck until 5 minutes have elapsed since startedAt. Optional model param selects the LLM — one of: gpt-5.5, gpt-5.4, gpt-5-mini, claude-sonnet-4-5-20250929 (default), claude-opus-4-5-20251101, claude-haiku-4-5-20251001, gemini-2.5-pro, gemini-2.5-flash.
plan_projectGenerate an outline/plan for a presentation without creating the full content. Returns a plan that can be reviewed before generation. Planning typically takes 30–90 seconds. Do not flag a session as potentially stuck until 5 minutes have elapsed since startedAt. Optional model param selects the LLM — one of: gpt-5.5, gpt-5.4, gpt-5-mini, claude-sonnet-4-5-20250929 (default), claude-opus-4-5-20251101, claude-haiku-4-5-20251001, gemini-2.5-pro, gemini-2.5-flash.
get_generation_sessionPoll the status of a presentation generation session. Returns a short human-readable status line — planning / generating / done / failed — plus a link to the deck once it is available. The structured payload also exposes the current phase, events, plan, and link for programmatic clients. Planning typically takes 30–90 seconds; generating takes 60–180 seconds depending on slide count. Re-poll with the same sessionId until the readable status starts with `Done.`