Presio について
Presioは、デスクトップアプリをインストールせずにスライドを上映したい人向けの、ブラウザー型PDFプレゼンテーションツールです。PDFは通常ブラウザー内で扱い、ビューアー画面の同期、スピーカーノート、メディア、プラグインに対応します。
主な機能
- 01ブラウザーでPDFをプレゼン
- 02操作画面とビューアー画面の同期
- 03デバイス間でプレゼンを共有
- 04Markdown形式のスピーカーノート表示
- 05動画や埋め込みメディアの再生同期
- 06プラグインによる機能拡張
活用シーン
- 01ブラウザーからPDFをプレゼン
- 02別ウィンドウやデバイスにスライドを表示
- 03発表中にスピーカーノートを参照
- 04プラグインで投票や字幕を追加
MCP 対応
Presioは、エージェントがPDFをプレゼンしたり検証したりするためのMCPサーバーとREST APIを提供します。案内されているMCPエンドポイントは https://presio.ch/mcp です。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://presio.xyz/mcpclaude mcp add --transport http xyz-presio-presio https://presio.xyz/mcp{"mcpServers":{"xyz-presio-presio":{"type":"http","url":"https://presio.xyz/mcp"}}}Cursor で開く{"servers":{"xyz-presio-presio":{"type":"http","url":"https://presio.xyz/mcp"}}}VS Code で開く{"mcpServers":{"xyz-presio-presio":{"type":"http","url":"https://presio.xyz/mcp"}}}{"mcpServers":{"xyz-presio-presio":{"serverUrl":"https://presio.xyz/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
2| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| filename | string | いいえ | 元のファイル名(例:deck.pdf) |
| pdf_base64 | string | はい | PDF ファイルの内容(base64 エンコード) |
| session_id | string | いいえ | 新しいプレゼンテーションを作成する代わりに、その場で更新する既存のプレゼンテーションの ID(以前の present 応答から取得) |
| controller_token | string | いいえ | このプレゼンテーションのコントローラートークン。作成時に返された url の t= クエリパラメーターです。session_id を指定する場合は必須です。 |
詳細
Presio
ブラウザーからPDFをプレゼンテーションできます。Pympressのインストール不要な代替ツールです。
presio.ch または presio.xyz でお試しください
(所属機関が .xyz をブロックしている場合は presio.ch をご利用ください)。
PDFを開き、あるブラウザーウィンドウからスライドを操作して、別のウィンドウに表示できます。 このリポジトリは、ホストされているサービスのソースです。


機能
- デフォルトでローカル:PDFはブラウザー内に保持され、オフラインでも動作します。ローカルのプレゼンテーションは7日間保存されます。
- コントローラー+ビューアー:ビューアーウィンドウには、コントローラーの内容が同期して表示されます。
- デバイス間でプレゼンテーション:ログインして同期すると、6文字のコードが発行されます。ビューアーでホームページにコードを入力すると、ライブでプレゼンテーションを閲覧できます。
- 共有操作:パスフレーズを共有して、相手に操作してもらえます。
- スピーカーノート:現在のスライドと次のスライドの横に、Markdown形式で表示されます。
- 埋め込みメディア:動画、GIF、YouTube/Vimeoに対応し、ビューアー間で再生が同期されます。
- タイマー、カスタマイズ可能なレイアウト、再割り当て可能なショートカット。
- プラグイン:投票やキャプションなどの機能を追加できます。プラグインをご覧ください。
- エージェント API:MCP サーバーとREST APIを利用できます。AI エージェントから使うをご覧ください。
動画とスピーカーノートの追加
どのPDFでも使用できます。ノートやメディアを追加するには、公式パッケージを使うか、手動で埋め込みます(ノートを手動で埋め込むをご覧ください)。
- Typst — presio-typst-package
- LaTeX — presio-latex-package
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
\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 エージェントから使う
エージェントは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 は現在のメジャーバージョンを追跡するため、破壊的変更は入りません(バージョンとアップグレードをご覧ください)。このモードに含まれる内容については、完全ローカル/オフラインでの実行をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。