Foliopdf について
Foliopdfは、AIエージェント向けにPDFの生成、加工、情報抽出を行うローカルMCPサーバーです。単一バイナリでオフライン動作し、HTML、Markdown、PDF用のツールを備えています。
主な機能
- 01HTMLとMarkdownからPDFを生成
- 02PDFの結合、分割、回転
- 03テキストとメタデータの抽出
- 04Tailwind CSS v3対応
- 05テンプレート、ヘッダー、フッター
- 06フォント内蔵のオフライン描画
活用シーン
- 01HTMLやMarkdownからPDFを作成
- 02PDF文書の結合や回転
- 03PDFからテキストとメタデータを抽出
MCP 対応
PDFの描画、加工、抽出ツールをMCPクライアントに公開します。レスポンスにはbase64形式のPDFデータとローカルファイルパスが含まれます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
FolioPDF MCP サーバー
AI エージェント向けの PDF 生成、操作、抽出ツールです。単一のバイナリでローカルにレンダリングし、オフラインでも動作します。
インストール
Homebrew
brew install foliopdf/tap/foliopdf-mcp
Go
go install github.com/foliopdf/foliopdf-mcp@latest
直接ダウンロード
# macOS (Apple Silicon)
curl -L https://github.com/foliopdf/foliopdf-mcp/releases/latest/download/foliopdf-mcp-darwin-arm64.tar.gz | tar xz
sudo mv foliopdf-mcp /usr/local/bin/
# macOS (Intel)
curl -L https://github.com/foliopdf/foliopdf-mcp/releases/latest/download/foliopdf-mcp-darwin-amd64.tar.gz | tar xz
sudo mv foliopdf-mcp /usr/local/bin/
# Linux
curl -L https://github.com/foliopdf/foliopdf-mcp/releases/latest/download/foliopdf-mcp-linux-amd64.tar.gz | tar xz
sudo mv foliopdf-mcp /usr/local/bin/
セットアップ
Claude Desktop に追加します(設定 → 開発者 → 設定を編集):
{
"mcpServers": {
"foliopdf": {
"command": "foliopdf-mcp"
}
}
}
Claude Desktop を再起動し、PDF を生成するよう依頼してください。
ツール
| ツール | 機能 |
|---|---|
render_html | Tailwind CSS v3、ヘッダー/フッター、テンプレート変数に対応した HTML から PDF への変換 |
render_markdown | テーマと構文ハイライトに対応した Markdown から PDF への変換 |
manipulate_pdf | PDF の結合、分割、回転 |
extract_pdf | PDF からのテキストとメタデータの抽出 |
すべてのレスポンスには、base64 データとしての PDF とローカルファイルのパスが含まれます。
機能
Tailwind CSS v3
tailwind: true を設定します。スタイルシート全体がバイナリに組み込まれているため、オフラインでも動作します。
{"html": "<div class='bg-blue-500 text-white p-8'>Hello</div>", "tailwind": true}
Tailwind v4 には対応していません。
組み込みフォント
Inter と Geist がバイナリに埋め込まれています。設定不要で CSS から使用できます:
body { font-family: 'Inter', sans-serif; }
h1 { font-family: 'Geist', sans-serif; }
どちらのフォントも、Regular、Bold、Italic、Bold Italic のウェイトに対応しています。
テンプレート変数
HTML と Markdown の両方で Go の html/template 構文を使用できます:
{
"html": "<h1>Invoice for {{.company}}</h1><p>Amount: {{.amount}}</p>",
"data": {"company": "Acme Corp", "amount": "$1,234"}
}
{{.variable}}、{{range .items}}...{{end}}、{{if .condition}}...{{end}} に対応しています。
ヘッダーとフッター
すべてのページに繰り返し表示されるコンテンツです。ページ番号には <span class='pageNumber'></span> と <span class='totalPages'></span> を使用します。
{
"header_html": "<div style='text-align:right;font-size:10px'>{{.company}}</div>",
"footer_html": "<div style='text-align:center;font-size:9px'>Page <span class='pageNumber'></span> of <span class='totalPages'></span></div>"
}
Markdown テーマ
render_markdown には、組み込みのテーマが 3 つあります:
- github — すっきりとしたサンセリフ体、色付きのリンク、コードの背景
- minimal — セリフ体のタイポグラフィ、最大限の読みやすさ
- print — フォーマルなレイアウト、両端揃えのテキスト、印刷向けに最適化
透かし
すべてのページに斜めにテキストを重ねて表示します:
{"watermark": "DRAFT"}
開発
go build ./...
go test ./...
./foliopdf-mcp --version
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。