DeckExtract MCP Server

Download DocSend and Papermark decks as PDF/PPTX and data rooms as ZIPs, including email-gated and protected links.

Documentation

DocSend & Papermark MCP Server

Extract decks with MCP — convert DocSend and Papermark links to PDF or PowerPoint without leaving your AI assistant. DeckExtract ships a hosted Model Context Protocol server, so tools like Claude, Claude Code, ChatGPT, Codex, Mistral and others can turn a sharing link into a downloadable PDF or PPTX on your behalf.

Get your free API key

Sign up free (email code) to get a dk_… key — 5 extractions/month, or go unlimited with Pro.

Get your free API key

Endpoint:https://deckextract.com/mcp

Transport: Streamable HTTP

Tool:deckextract

Auth:Authorization: Bearer dk_…

How it works

Once connected, your assistant gains a single deckextract tool. Give it a DocSend or Papermark link (optionally a password or email for gated decks) and it returns a temporary download link for the extracted document. Extractions take 15–90 seconds; links stay valid ~1 hour.

Setup

Each snippet includes the Authorization: Bearer dk_… header — if you're signed in with a key above, it's filled in automatically.

Claude Code

Add the server with the CLI (HTTP transport is built in):

claude mcp add --transport http deckextract https://deckextract.com/mcp

Then ask Claude in any session to extract a DocSend or Papermark link.

Claude (desktop & web)

In Claude Desktop or claude.ai, open Settings → Connectors → Add custom connector and paste the URL:

https://deckextract.com/mcp

On older Claude Desktop builds without remote connectors, add it to claude_desktop_config.json instead via the mcp-remote bridge (see "Any other client" below).

ChatGPT & GPT API

In the ChatGPT app: Settings → Connectors → Advanced → Developer mode, then add the MCP server URL. From the OpenAI Responses API, pass it as a hosted MCP tool:

{
  "model": "gpt-5",
  "tools": [
    {
      "type": "mcp",
      "server_label": "deckextract",
      "server_url": "https://deckextract.com/mcp",
      "require_approval": "never"
    }
  ],
  "input": "Extract https://docsend.com/view/xzjawgkxgbysq8i5 as a PDF"
}

Codex CLI

Add to ~/.codex/config.toml:

[mcp_servers.deckextract]
command = "npx"
args = ["-y", "mcp-remote", "https://deckextract.com/mcp"]

Codex launches MCP servers as a command, so the mcp-remote bridge connects it to the hosted HTTP endpoint.

Mistral Le Chat

In Le Chat, open Settings → Connectors → Add connector → Custom MCP and paste the URL:

OpenCode

Add a remote MCP server to opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "deckextract": {
      "type": "remote",
      "url": "https://deckextract.com/mcp",
      "enabled": true
    }
  }
}

Cohere

Cohere’s agent platform (North) accepts custom MCP servers — add the URL as an MCP tool source:

For Cohere’s SDK tool-use, bridge the endpoint with mcp-remote and expose the deckextract tool to your agent.

Any other client

Any MCP client that speaks Streamable HTTP can use the URL directly. For clients that only accept a launch command (stdio), use the bridge:

npx -y mcp-remote https://deckextract.com/mcp

Tool reference

The deckextract tool accepts the following inputs:

ParameterTypeRequiredDescription
urlstringYesThe DocSend or Papermark sharing link
format"pdf" | "pptx"NoOutput format (defaults to pdf)
emailstringNoEmail for email-gated decks (one is generated automatically if omitted)
passwordstringNoPasscode for passcode-protected decks
analyzebooleanNoPro only. Also returns a structured analysis of the deck — company, team, round, metrics, market, competition — in structuredContent.analysis. Requires a Pro key in the Authorization header.

Example result

{
  "downloadUrl": "https://deckextract.com/dl/ab12cd….pdf",
  "resourceUri": "deckextract://deck/ab12cd….pdf",
  "format": "pdf",
  "sizeBytes": 542318,
  "expiresAt": "2026-06-11T16:00:00.000Z",
  "sourceUrl": "https://docsend.com/view/xzjawgkxgbysq8i5",
  "analysis": { "company": { "name": "Acme" }, "round": { "stage": "seed" } }
}

The extracted file is also exposed as an MCP resource: read resourceUri (deckextract://deck/…) via resources/read to fetch the bytes through the protocol, or just open the downloadUrl link (valid ~1 hour). The analysis object is present only when analyze: true succeeds.

Try it

Once the server is connected, just ask in plain language:

“Use deckextract to download https://docsend.com/view/xzjawgkxgbysq8i5 as a PowerPoint.”

Prefer raw HTTP?

If you'd rather call DeckExtract directly instead of through an AI tool, the same extraction is available as a plain REST endpoint — see the API documentation.