mcpField
V
view-pdf

view-pdf

github.com/anthropicsドキュメント33.6k6.3k 回インストール1 日前に更新
リポジトリ

view-pdf について

既存 PDF を扱うインタラクティブなワークフロー向けのスキルです。ローカル PDF サーバーとライブビューアーで閲覧、注釈、フォーム入力、署名画像の配置を行い、要約や認証済み署名には対応しません。

主な機能

  1. 01ローカルまたは HTTPS の PDF を表示
  2. 02注釈の追加と管理
  3. 03視覚的に確認しながらフォーム入力
  4. 04署名画像やスタンプの配置
  5. 05ページ移動、検索、スクリーンショット取得

活用シーン

  1. 01契約書を共同で確認して注釈
  2. 02フォームに入力し表示結果を確認
  3. 03ページにイニシャルや視覚的な署名を配置

MCP 対応

ローカル PDF サーバーを使い、クライアントに文書表示と操作のツールを提供します。このスキルでは PDF を開き、同サーバー経由で後続操作を行います。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/anthropics/knowledge-work-plugins --skill view-pdf

インストール後、Claude Code で/view-pdfを入力して読み込まれたか確認します。

詳細

PDF ビューアー — インタラクティブなドキュメントのワークフロー

ローカルの PDF サーバーを利用できます。このサーバーでは、ドキュメントをライブビューアーに表示し、リアルタイムの視覚的なフィードバックを確認しながら、注釈の追加、フォームへの入力、署名の配置を行えます。

このスキルを使う場面

ユーザーがインタラクティブな操作を求めている場合は、PDF ビューアーを使用してください:

  • 「この契約書を見せて」/「この論文を開いて」
  • 「重要な条項をハイライトして、確認できるようにして」
  • 「このフォームへの入力を手伝って」
  • 「3 ページ目に署名して」/「各ページにイニシャルを入れて」
  • 「CONFIDENTIAL のスタンプを押して」/「承認済みとしてマークして」
  • 「このドキュメントの内容を説明しながら、重要な部分に注釈を付けて」

内容の読み取りだけが目的の場合は、ビューアーを使用しないでください:

  • 「この PDF を要約して」→ ネイティブの Read ツールを直接使用してください
  • 「5 ページ目には何と書いてありますか?」→ Read を使用してください
  • 「セクション 3 の表を抽出して」→ Read を使用してください

ビューアーの価値は、ユーザーにドキュメントを見せ、マークアップについて協力して作業できることにあります。テキストをあなたに返すことではありません。

ツール

list_pdfs

利用可能なローカル PDF と、許可されているローカルディレクトリを一覧表示します。引数はありません。

display_pdf

インタラクティブビューアーで PDF を開きます。ドキュメントごとに 1 回呼び出してください。

  • url — ローカルファイルパスまたは HTTPS URL
  • page — 最初に表示するページ(省略可、デフォルトは 1)
  • elicit_form_inputs — true の場合、表示前にフォームへの入力をユーザーに求めます(インタラクティブなフォーム入力に使用)

viewUUID が返されます。すべての interact 呼び出しにこの値を渡してください。display_pdf を再度呼び出すと、別のビューアーが作成されます。新しい UUID を使った interact 呼び出しは、ユーザーが見ているビューアーには届きません。

PDF に入力可能なフィールドがある場合は、formFields(name、type、page、bounding box)も返されます。署名を配置する際には、これらの座標を使用してください。

interact

display_pdf の後に行うすべての操作に使用します。viewUUID と 1 つ以上のコマンドを渡してください。commands 配列を使って、複数のコマンドを 1 回の呼び出しにまとめられます。コマンドは順番に実行されます。変更を視覚的に確認するため、バッチの最後には get_screenshot を指定してください。

注釈操作:

  • add_annotations — マークアップを追加します(以下の種類を参照)
  • update_annotations — 既存の注釈を変更します(id と type が必要)
  • remove_annotations — id 配列で指定して削除します
  • highlight_text — クエリでテキストを自動検索してハイライトします(テキストのマークアップには、手動で矩形を指定する方法よりこちらを推奨)

ナビゲーション操作:

  • navigate(page)、search(query)、find(query、サイレント)、search_navigate(matchIndex)、zoom(scale 0.5–3.0)

抽出操作:

  • get_text — ページ範囲からテキストを抽出します(最大 20 ページ)。注釈する内容を判断するために読む目的で使用してください。要約には使用しないでください。
  • get_screenshot — ページを画像としてキャプチャします(注釈を確認します)

フォーム操作:

  • fill_form — 名前付きフィールドに入力します:fields: [{name, value}, ...]

注釈の種類

すべての注釈には、id(一意の文字列)、type、page(1 始まり)が必要です。座標の単位は PDF ポイント(1/72 インチ)で、原点は左上、Y 座標は下方向に増加します。米国レターサイズは 612×792pt です。

種類主なプロパティ用途
highlightrects, color?, content?重要なテキストをマークします
underlinerects, color?用語を強調します
strikethroughrects, color?削除箇所をマークします
notex, y, content, color?付箋形式のコメント
freetextx, y, content, fontSize?ページ上に表示するテキスト
rectanglex, y, width, height, color?, fillColor?領域を四角で囲みます
circlex, y, width, height, color?, fillColor?領域を円で囲みます
linex1, y1, x2, y2, color?線や矢印を描きます
stampx, y, label, color?, rotation?APPROVED、DRAFT、CONFIDENTIAL など
imageimageUrl, x?, y?, width?, height?署名、イニシャル、ロゴ

画像注釈には、ローカルファイルパスまたは HTTPS URL を指定できます(data: URI は使用できません)。省略した場合、寸法は自動検出されます。ユーザーは画像をビューアーに直接ドラッグ&ドロップすることもできます。

インタラクティブなワークフロー

共同アノテーション(AI 駆動)
  1. display_pdf でドキュメントを開きます
  2. 関連するページ範囲に対して interact → get_text を実行し、内容を把握します
  3. ユーザーにアノテーションのバッチを提案します(何をマークするかを説明します)
  4. 承認されたら、interact → add_annotations + get_screenshot を実行します
  5. ユーザーに表示して修正を依頼し、繰り返します
  6. 完了したら、ビューアーのツールバーからアノテーション付き PDF をダウンロードできることを伝えます
フォーム入力(プログラムではなく視覚的に)

ヘッドレスのフォームツールとは異なり、ユーザーにリアルタイムの視覚的なフィードバックを提供し、ラベルがフィールドのメタデータではなくページ上に印刷されている、分かりにくい名前や名前のないフィールドを含むフォームにも対応します。

  1. display_pdf — 返された formFields(名前、タイプ、ページ、バウンディングボックス)を確認します
  2. フィールド名が分かりにくい場合(Text1、Field_7 など)、ページの get_screenshot を実行し、バウンディングボックスを視覚的なラベルと照合します
  3. 視覚的なラベルを使ってユーザーに値を尋ねるか、文脈から推測します
  4. interact → fill_form を実行し、続けて get_screenshot で結果を表示します
  5. ユーザーが確認するか、ビューアー上で直接編集します

ラベルが明確なシンプルなフォームの場合は、代わりに elicit_form_inputs: true を指定した display_pdf を使うと、あらかじめユーザーに入力を求めます。

署名(視覚的なものであり、認証済みではありません)
  1. 署名またはイニシャルの画像パスを尋ねます
  2. display_pdf を実行し、formFields に署名タイプのフィールドがあるか確認するか、ページと位置を尋ねます
  3. interact → add_annotations を実行し、対象の座標に type: "image" を指定します
  4. get_screenshot を実行して配置を確認します

免責事項: これは視覚的な署名画像を配置する機能です。認証済みのデジタル署名でも、暗号学的なデジタル署名でもありません。

サポート対象のソース

  • ローカルファイル(クライアントの MCP ルート以下のパス)
  • arXiv(/abs/ URL は自動的に PDF に変換されます)
  • HTTPS の PDF への直接 URL(bioRxiv、Zenodo、OSF など。ランディングページではなく、PDF への直接リンクを使用してください)

対象外

  • 要約/テキスト抽出 — 代わりにネイティブの Read を使用してください
  • 認証済みデジタル署名 — 画像のスタンプ処理のみ
  • PDF の作成 — 既存の PDF のみを対象とします

コメント