mcpField
P
Presio

Presio

远程服务
presio.xyz生产力405 天前更新

关于 Presio

Presio 是基于浏览器的 PDF 演示工具,适合希望无需安装桌面应用即可播放幻灯片的演讲者。它默认在浏览器中处理本地 PDF,并支持查看窗口同步、演讲者备注、媒体和插件。

主要功能

  1. 01在浏览器中演示 PDF
  2. 02同步控制窗口与观看窗口
  3. 03跨设备共享演示
  4. 04显示 Markdown 演讲者备注
  5. 05同步视频和嵌入媒体播放
  6. 06通过插件扩展演示功能

适用场景

  1. 01通过浏览器演示 PDF
  2. 02在第二个窗口或设备上显示幻灯片
  3. 03演示时查看演讲者备注
  4. 04通过插件添加投票或字幕

MCP 相关

Presio 提供 MCP 服务和 REST API,供 Agent 演示及验证 PDF。文档列出的 MCP 端点为 https://presio.ch/mcp。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://presio.xyz/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

2
参数类型必填说明
filenamestring否原始文件名,例如 deck.pdf
pdf_base64string是PDF 文件内容,采用 base64 编码
session_idstring否要原位更新的现有演示文稿 ID(来自先前的 present 响应),而不是创建新的演示文稿
controller_tokenstring否该演示文稿的控制器令牌——创建时返回的 url 中的 t= 查询参数。提供 session_id 时必须提供此参数。

详细介绍

Presio

在浏览器中展示 PDF:无需安装,是 Pympress 的替代方案。可在 presio.ch 或 presio.xyz 试用(如果你的机构屏蔽了 .xyz,请使用 presio.ch)。

插件

打开 PDF,在一个浏览器窗口中控制幻灯片,并在另一个窗口中展示。本仓库是托管服务的源代码。

演示

工作原理

功能

  • 默认本地运行:你的 PDF 保留在浏览器中,并且可离线使用。本地演示文稿会保留 7 天。
  • 控制器 + 查看器:查看器窗口会实时同步显示控制器的内容。
  • 跨设备演示:登录并同步,即可获得一个 6 位代码。查看者在主页输入代码,即可实时跟随演示。
  • 共享控制权:将口令交给他人,即可让对方控制演示。
  • 演讲者备注:以 markdown 格式显示在当前幻灯片和下一张幻灯片旁。
  • 嵌入式媒体:视频、GIF 和 YouTube/Vimeo 视频,并与查看者同步播放。
  • 计时器、可自定义布局和可重新映射的快捷键。
  • 插件:添加投票或字幕等功能;参见插件。
  • Agent API:MCP 服务和 REST API;参见通过 AI Agent 使用。

添加视频和演讲者备注

任何 PDF 都可以使用。要添加备注和媒体,请使用官方软件包,或手动嵌入(参见手动嵌入备注):

Typst
#import "@preview/presio:0.2.3": media, speaker-notes

= Introduction

Hello world.

#speaker-notes[
  Remember to mention the demo before moving on.
]

#media("https://www.youtube.com/watch?v=dQw4w9WgXcQ", width: 60%, aspect-ratio: 16/9)
LaTeX

在 Overleaf 中打开

\documentclass{beamer}
\usepackage{presio}

\begin{document}

\begin{frame}{Introduction}
  Hello world.
  \presionote{Remember to mention the demo before moving on.}
\end{frame}

\begin{frame}{The demo}
  \presiomedia[width=0.7\linewidth]{https://www.youtube.com/watch?v=dQw4w9WgXcQ}
\end{frame}

\end{document}

安装时,将软件包仓库中的 presio.sty 复制到 .tex 文件所在目录。

手动嵌入备注

Presio 会从附加到 PDF 的 JSON 文件(Typst),或从 note: 链接注释(LaTeX)中读取演讲者备注。

Typst:定义一个辅助函数,并在每张幻灯片上调用它:

#let speaker-notes(notes) = context {
  // Page number keeps the attachment filename unique per slide
  let page-num = counter(page).display()
  let filename = "notes-slide-" + page-num + ".json"

  let json-string = json.encode((slide: page-num, notes: notes))

  pdf.attach(
    filename,
    bytes(json-string),
    description: "Speaker notes for slide " + page-num,
    mime-type: "application/json",
  )
}

#speaker-notes("Remember to mention the demo.")

LaTeX:使用 hyperref 创建不可见的 note: 链接:

\usepackage{hyperref}

\newcommand{\speakernote}[1]{%
  \href{note:#1}{\phantom{n}}%
}

% Usage on a slide:
\speakernote{Remember to mention the demo.}

在 presio.ch/check 检查结果,该页面会报告每页的备注和媒体是否有效。

插件

插件可添加实时投票或隐藏式字幕等功能。可在 GitHub 的 presio-plugin 主题下浏览插件,然后前往“设置” → “发现插件”添加。

要构建自己的插件,请将以下提示词粘贴到 Claude Code、Codex 或 Cursor 中:

Read https://presio.ch/plugins.md and build me a Presio plugin. Ask me what it should do first.

通过 AI Agent 使用

Agent 可以通过 MCP 或 REST 演示和检查 PDF。请从 presio.ch/llms.txt 开始。要将 MCP 服务添加到 Claude Code:

claude mcp add --transport http presio https://presio.ch/mcp

自托管

如需完整部署(账号、跨设备同步、自有域名),请参阅 deploy/README.md。

如需使用无账号或 Supabase 的单个离线容器:

docker run -d -p 3001:3001 -e PRESIO_MODE=local -e LOCAL_DATA_DIR=/data \
  -e TRUST_PROXY=false -v presio-data:/data \
  ghcr.io/potentialhedge/presio-local:1

:1 会跟踪当前主版本,因此不会引入破坏性变更(参见版本和升级)。有关此模式所包含的内容,请参阅完全本地运行 / 离线运行。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。