PDF to Markdown(マークダウン)変換

PDFを、きれいなMarkdownに。

PDFを、人にもエージェントにも使いやすいきれいなMarkdownへ変換します。表、数式、OCRに対応し、ブラウザ、API、MCPから利用できます。

PDFアップロード / 取り込み
待機中インライン
処理中OCR • 解析
完了検証済み
Markdown整形済み • 構造化
PDFをMarkdownへ変換する画面の日本語プレビュー
実際の文書に対応

そのままモデルに渡せる、整ったMarkdown

すべての入口で同じ変換エンジンを使います。ブラウザからでもAPIへURLを送る場合でも、平坦なテキストではなく構造化されたMarkdownを返します。

  • 見出し、リスト、読み順を保持
  • 崩れた列ではなくMarkdown表を生成
  • 数式を保持し、画像は埋め込みまたはプレースホルダー化
  • スキャン文書をOCR
利用方法

1つの変換エンジンを複数の方法で利用

用途に合う入口を選べます。スロット、上限、保存期間は共通で、APIやMCPだけが製品のルールを回避することはありません。

Chrome拡張機能

PDFをドラッグ、ドロップするかURLを貼り付けて変換します。匿名で利用でき、ログインするとAPIキー、MCP、有料プランも使えます。

Chromeに追加

Web変換ツール

アップロード、URL、設定、スロット、状態、プレビュー、ダウンロードをまとめて操作できます。匿名でもログイン後でも利用できます。

PDF変換ツールを開く

REST API

Bearer APIキーでジョブを作成し、状態を確認してMarkdownを取得し、HTTPS経由でスロットを解放します。安定したDTOとOpenAPI仕様を提供します。

APIを見る

ホスト型MCP

対応エージェントを管理されたMCPエンドポイントに接続できます。同じAPIの薄いラッパーなので、同じ上限とスロットが適用されます。

MCPに接続

ChatGPT Custom GPT

用意済みのAction仕様をChatGPT Custom GPTへ取り込むと、コードを書かずにPDF変換を組み込みツールとして使えます。

Actionを設定
エージェントの処理フロー

ジョブを作成し、待機して取得後にスロットを解放

REST APIでもホスト型MCPでも処理手順は同じです。status=readyになる前に結果が得られたと判断しないでください。REST API ホスト型MCP status=ready

REST API ホスト型MCP
1

ジョブを作成

PDFのURLまたはファイルをPOSTします。ジョブIDとスロットが返ります。Idempotency-Keyは任意で利用できます。Idempotency-Key

POST /api/v2/jobsmcp · pdf_to_markdown_create_job_from_url
2

状態を確認

readyまたはerrorになるまで状態を確認します。有料プランでは、ポーリングの代わりに署名付きWebhookも利用できます。ready error

GET /api/v2/jobs/{id}mcp · pdf_to_markdown_get_job
3

Markdownを取得

readyになったら結果を取得します。長い文書が一部だけ返ったかはtruncatedとpagesで確認できます。truncated pages

GET /api/v2/jobs/{id}/downloadmcp · pdf_to_markdown_get_markdown
4

削除してスロットを解放

完了後はスロットを解放します。queuedまたはprocessingのジョブ削除は破壊的操作なので、利用者に確認してください。

DELETE /api/v2/jobs/{id}mcp · pdf_to_markdown_delete_job
# 1. create a job from a PDF URL
curl -X POST https://pdf2md.dev/api/v2/jobs \
  -H "Authorization: Bearer p2m_…" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/report.pdf"}'
# → { "job_id": "job_9f3c…", "status": "queued" }

# 2. poll status
curl https://pdf2md.dev/api/v2/jobs/job_9f3c… \
  -H "Authorization: Bearer p2m_…"
# → { "status": "ready", "pages": 24, "truncated": false }

# 3. fetch the Markdown
curl https://pdf2md.dev/api/v2/jobs/job_9f3c…/download \
  -H "Authorization: Bearer p2m_…"

# 4. free the slot
curl -X DELETE https://pdf2md.dev/api/v2/jobs/job_9f3c… \
  -H "Authorization: Bearer p2m_…"
出力品質

変換後も保持される要素

スキャン文書のOCR

画像だけのPDFやスキャンPDFを、選択可能なMarkdownへOCR変換します。必要に応じてOCRを強制できます。

正しい表

列を崩れた行にせず、本物のMarkdown表として再構成します。人にもモデルにも読みやすい構造を保ちます。

数式を保持

数式表記を文字化けしたテキストへ平坦化せず、可能な限り保持します。

画像の扱い

画像をbase64で埋め込むか、軽量なプレースホルダーにするかを用途に合わせて選べます。

レンダリング表示とRaw表示

レンダリング済み表示とRawソースを確認し、クリップボードへコピーするか.mdファイルとして保存できます。.md

リンクと脚注

ハイパーリンクと脚注を削除せず、Markdownリンクとして引き継ぎます。

上限とプライバシー

アカウントの扱いまで明確な標準設定

Freeプランの上限

有効スロット数(キュー深度)3
PDFの最大サイズ10 MB
文書ごとの処理時間枠15分
完了結果の保存期間1時間
キュー共有プール

処理時間枠まで変換し、完了した範囲を返します。残りはtruncatedとして示されます。有料プランでは各上限が増えます。プランを比較 →

プライバシーとアクセス

標準は匿名です。Chrome拡張機能またはWebアプリで登録せずに変換でき、リクエストは端末署名されます。
ログインすると機能が増えます。無料GoogleアカウントでAPIキー、ホスト型MCP、有料プランをすべての入口から利用できます。
キーは秘密情報です。HTTPSでAuthorization: Bearer p2m_…として送り、いつでも失効できます。
ファイルは自動削除されます。結果はプランの保存期間後に削除され、手動でもいつでも削除できます。
料金

無料で開始。容量と優先度が必要ならアップグレード

有料プランではキュー容量、ファイルサイズ、処理時間枠、保存期間、Webhook、優先度が増えます。専用の有料変換プールを利用します。

Free
$0
ブラウザでは匿名
  • 3スロット · 10 MB
  • 処理時間枠15分
  • 保存期間1時間
  • APIキー + ホスト型MCP(無料アカウント)
Builder
$9/月
継続的な自動化向け
  • 10スロット · 25 MB
  • 処理時間枠25分
  • 保存期間6時間
  • Webhook · 一括作成
Business
$49/月
チームとパイプライン向け
  • 50スロット · 100 MB
  • 処理時間枠55分
  • 保存期間24時間
  • 優先サポート

月額契約を避けたい場合は、$39の買い切りアンロックも選べます。サービス継続中は毎月600ページ、大きなファイル、長い処理時間枠を利用できます。$39、1回払い 内容を見る

料金の詳細を見る 最新の上限と価格は料金ページに表示します。Enterpriseでは上限を個別に設定できます。

エージェントと開発者向けのディスカバリー

ソースコードを読まなくても統合できるように、セットアップハブ、機械可読マニフェスト、OpenAPI仕様を公開しています。

よくある質問

よくある質問

変換にアカウントは必要ですか?

Chrome拡張機能とWebアプリでの日常的な変換にはアカウントが不要です。無料GoogleアカウントでAPIキー、ホスト型MCP、有料プランを利用できます。

APIキーはどのように使いますか?

Googleでログインしてキーを発行し、HTTPSでAuthorization: Bearer p2m_…として送ります。キーは安全に保管し、いつでも失効できます。Authorization: Bearer p2m_…

ホスト型MCPとは何ですか?

Model Context Protocol経由で変換ツールを提供する管理済みエンドポイントです。同じREST APIを使うため、同じスロット、上限、保存期間が適用されます。

有料プランでは何が増えますか?

スロット、ファイルサイズ、処理時間枠、保存期間、Webhook、一括作成、レート上限、キュー優先度が増えます。

データはどのくらい保存されますか?

結果はプランの保存期間だけ一時保存され、自動削除されます。Freeでは約1時間です。ジョブはいつでも手動削除できます。

長い文書はどうなりますか?

各プランに処理時間枠があります。時間内に完了した範囲をtruncated=true付きの部分結果として返し、処理全体を失敗にはしません。truncated=true

本当に無料ですか?

はい。Freeでは3スロット、10 MB、処理時間枠15分、保存期間1時間を、ブラウザから匿名かつカード不要で利用できます。

スキャンPDFにも対応しますか?

はい。画像だけのPDFやスキャンPDFをOCRし、選択可能なMarkdownへ変換します。文字レイヤーが不正な場合はOCRを強制できます。

どの言語に対応しますか?

変換とOCRは、日本語を含む幅広い言語と多言語混在文書に対応します。拡張機能UIは50+ languagesに対応しています。

URLから直接変換できますか?

はい。拡張機能またはWebアプリへPDFの直接URLを貼るか、APIへurlをPOSTできます。先にダウンロードする必要はありません。url

Webhookは利用できますか?

有料プランでは署名付きWebhookとジョブごとのcallback_urlを登録し、完了時に通知を受け取れます。callback_url

ファイルをモデル学習に使いますか?

いいえ。ファイルと結果は変換に必要な期間だけ一時保存し、自動削除します。文書をモデル学習には使用しません。