Deckwright について
Deckwrightは、編集可能なPowerPointスライドを作成し、.pptx内のアニメーションデータを調べるRustツールキットです。プレゼンテーションの作成者やエージェント向けに、CLIとMCPから構造検査、タイムライン、スライド状態、明示的なMorphペアを扱えます。
主な機能
- 01編集可能なPowerPointスライドの作成
- 02パッケージ部品の検査と保持
- 03パッケージとスライドの構造検査
- 04スライド状態とタイムラインの照会
- 05明示的なMorphペアの検出
- 06CLIとMCPインターフェース
活用シーン
- 01編集可能なプレゼンテーションの作成
- 02.pptxパッケージの検査
- 03クリック後のスライド状態の照会
- 04スライド間のMorphリンクの確認
MCP 対応
dw-mcpサーバーは、CLIと同じ構造検査やスライド照会をstdio経由でエージェントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Deckwright
Deckwright は、編集可能な PowerPoint スライドを作成し、.pptx ファイル内のアニメーションデータを調べるための Rust ツールキットです。空のテンプレートからデッキを作成したり、既存のパッケージ内のスライドを置き換えたり、構造をチェックしたりできます。また、CLI または MCP サーバーを通じて、「最初のクリック後、スライド 2 には何が表示されますか?」といった質問にも回答できます。
公開されている Morph デモでは、Morph の明示的な対応付け、クリックによる表示、モーションパスを備えた、編集可能な 3 枚のスライドを作成します。 26 秒の PowerPoint デモを見て、画面切り替え、選択されたネイティブ図形、実際のタイミングクエリをご確認ください。プレゼンテーション作成スキルでは、これらの API をエージェントが使うワークフローを紹介しています。
はじめに
Rust ツールチェーンをインストールし、CLI と MCP サーバーをインストールします。
cargo install dw-cli --version 0.1.1 --locked
cargo install dw-mcp --version 0.1.1 --locked
リリースアーカイブには、Windows、Linux、macOS 用のビルド済み dw および dw-mcp バイナリが含まれています。
Deckwright のチェックアウトから、次のコマンドを実行してサンプルデッキをビルドし、調べます。
cargo run --locked -p deckwright --example morph_demo -- demo.pptx
dw check demo.pptx --json
dw query morph demo.pptx --from 1 --to 2 --json
dw query state demo.pptx --slide 2 --at-ms 400 --clicks-ms 0 --json
ビルドのたびに、新しい出力ファイル名を指定してください。Deckwright は既存の .pptx ファイルへの上書きを拒否します。スライド番号は 1 から始まります。クエリ時刻とクリック時刻は、スライド表示開始からのミリ秒数です。--clicks-ms は、--at-ms までのクリック履歴全体を指定します。
現在できること
| タスク | エントリーポイント |
|---|---|
| サポート対象モデルで、図形、テキスト、画像、表、グラフ、タイミングを備えた編集可能なスライドを作成する | deckwright Rust クレート。Morph デモのソースを参照 |
.pptx を開き、構成要素を調べ、変更されていない構成要素を保持して、新しいパッケージを書き出す | Package、dw inspect、dw roundtrip |
| サポート対象のパッケージ、スライド、タイミング、境界のルールを確認する | dw check |
| スライドの状態、タイムライン、明示的な Morph の組み合わせを調べる | dw query state、dw query timeline、dw query morph |
| 同じチェックとクエリを標準入出力経由でエージェントに提供する | dw-mcp。エージェント連携を参照 |
CLI の仕様では、クエリの入力と出力を定義しています。レポートには、Deckwright が理解できるタイミングとジオメトリが示されます。サポート対象外または曖昧な動作は不明として報告されます。Morph の組み合わせで現在サポートされるのは、一意に対応する明示的な !!name のみです。チェックの合格、クエリの成功、静的レンダリングのいずれも、PowerPoint でのアニメーション再生、フォントの収まり、視覚的な忠実度を保証するものではありません。納品するデッキでは、PowerPoint で確認してください。
ワークフローを選択する
- エージェントでプレゼンテーションを作成する
- エージェントを MCP サーバーに接続する
- Deckwright と python-pptx を比較する
- 中立的な Morph デモを実行する
- ベンチマークの方法と結果を読む
プロジェクトの範囲
Deckwright は、25 枚の修士論文発表用プレゼンテーションを再構築するプロジェクトとして始まりました。実装計画には、忠実度とパフォーマンスの目標が記録されています。論文のソースと抽出したメディアは非公開であり、Git には含まれていません。公開デモでは、生成された中立的なコンテンツを使用しています。提供されたデッキを編集する場合は、ソースの文言、スクリーンショット、写真、アプリの UI を保持してください。
参照用の検査ベンチマークでは、記載されている WSL ホスト上で、p95 が 205.32 ms、ピーク RSS が 78.75 MiB でした。リビジョンとワークロードについては測定用 PRを参照してください。計画に記載されているビルド、編集、クエリの予算は目標値であり、測定結果ではありません。論文全体の再構築と PowerPoint での再生確認は、引き続き別個の完了条件です。
開発
cargo test --workspace --locked
リポジトリのガイドラインについては AGENTS.mdを、PowerPoint による検証の制限についてはオラクルのメモを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。