Rendex について
Rendexは、Webページをキャプチャし、HTMLやMarkdownを画像やPDFに変換するエージェント向けMCPサーバーです。ページ内容の抽出やホスト型リンクの作成、ブランド付き成果物の生成、変更監視にも対応します。
主な機能
- 01URL、HTML、Markdownのキャプチャ
- 02画像とPDFへの出力
- 03読みやすいページ内容の抽出
- 04ホスト型レンダーリンクの作成
- 05ブランド付きPDF・PNGの生成
- 06視覚またはテキストの変更監視
活用シーン
- 01WebページをPDFとして保存
- 02SPAの記事を抽出して要約
- 03共有用のソーシャルプレビュー画像を作成
- 04価格ページの変更を追跡
MCP 対応
スクリーンショット、コンテンツ抽出、レンダリング、成果物生成、監視のツールをMCPクライアントに公開します。ローカルのstdio設定とホスト型リモートサーバーに対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.rendex.dev/mcpclaude mcp add --transport http rendex https://mcp.rendex.dev/mcp{"mcpServers":{"rendex":{"type":"http","url":"https://mcp.rendex.dev/mcp"}}}Cursor で開く{"servers":{"rendex":{"type":"http","url":"https://mcp.rendex.dev/mcp"}}}VS Code で開く{"mcpServers":{"rendex":{"type":"http","url":"https://mcp.rendex.dev/mcp"}}}{"mcpServers":{"rendex":{"serverUrl":"https://mcp.rendex.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://mcp.rendex.dev/mcp認証が必要ツール
13| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| js | string | いいえ | キャプチャ前にページ内で実行するカスタム JavaScript です。ブラウザーのサンドボックスで実行されます。最大 50KB。 |
| css | string | いいえ | ページに挿入するカスタム CSS です。Cookie バナーの非表示、透かしの追加、スタイルの上書きに使用します。最大 50KB。 |
| geo | string | いいえ | 地域指定キャプチャに使用する ISO 3166-1 alpha-2 の国コード(例:'US'、'DE'、'JP')。その国から見たページをレンダリングします。Pro/Enterprise のみ。注:地域指定では、CSS/JS インジェクション、Cookie、要素キャプチャ、ダークモードなど一部の機能を利用できません。 |
| url | string | いいえ | キャプチャするウェブページの URL('example.com' のようなスキームのないホスト名も使用できます)。'html' および 'markdown' とは併用できません。 |
| data | object | いいえ | Mustache テンプレート用のキーと値のデータオブジェクト。指定すると、キャプチャ前に 'html' または 'markdown' の文字列がロジックレスな Mustache テンプレートとしてレンダリングされます — {{var}} は HTML エスケープされた値を挿入し、{{{var}}} は生の値を挿入し、{{#items}}...{{/items}} は配列を反復し、{{a.b}} はネストされたフィールドにアクセスします。'url' とは併用できません。シリアライズ後の最大サイズは 256KB です。 |
| html | string | いいえ | レンダリングしてキャプチャする生の HTML。'url' および 'markdown' とは併用できません。請求書、ソーシャルカード、メールテンプレート、OG 画像に適しています。 |
| delay | integer | いいえ | ページ読み込み後、キャプチャ前に待機する時間(ミリ秒)(JS でレンダリングされるコンテンツに便利) |
| width | integer | いいえ | ビューポートの幅(ピクセル、320-3840) |
| device | enum | いいえ | ビューポート、スケール係数、ユーザーエージェントを一括設定するデバイスプリセット。モバイルのスクリーンショットには、たとえば 'iphone_15' を指定します。width/height/deviceScaleFactor/userAgent を上書きします。desktop | iphone_15 | iphone_se | pixel_8 | ipad | ipad_pro |
| format | enum | いいえ | 出力形式 — png(可逆圧縮)、jpeg(小さめ)、webp(最小)または pdf(ドキュメント)。請求書、レポート、アーカイブには pdf を使用してください。png | jpeg | webp | pdf |
| height | integer | いいえ | ビューポートの高さ(ピクセル、240-2160) |
| cookies | array | いいえ | キャプチャ前に設定する Cookie。認証が必要なページに便利です。Cookie は最大 50 個です。 |
| geoCity | string | いいえ | より正確な位置情報ターゲティングに使用する都市(例:'Berlin'、'New York')。'geo' が必要です。 |
| headers | object | いいえ | ページリクエストとともに送信するカスタム HTTP ヘッダー。Host、Connection、Content-Length、Transfer-Encoding は上書きできません。 |
| quality | integer | いいえ | 画像品質 1-100(JPEG/WebP のみ。PNG/PDF では無視されます) |
| timeout | integer | いいえ | ページ読み込みを待機する最大時間(秒、5-60)。Cloudflare のハード上限は 60 秒です。 |
| blockAds | boolean | いいえ | キャプチャ前に広告とトラッカーをブロックする |
| darkMode | boolean | いいえ | ダークカラースキーム(prefers-color-scheme: dark)をエミュレートする |
| fullPage | boolean | いいえ | ビューポートだけでなく、スクロール可能なページ全体をキャプチャする |
| geoState | string | いいえ | より正確な位置情報ターゲティングに使用する州または地域(例:'California')。'geo' が必要です。 |
| markdown | string | いいえ | 画像または PDF にレンダリングする Markdown。'url' および 'html' とは併用できません。サーバーはレンダリング前に Markdown を HTML に変換します。レポート、リリースノート、README のスナップショット、ドキュメントカードに適しています。 |
| pdfScale | number | いいえ | PDF のスケール係数(0.1-2)。デフォルト:1 |
| selector | string | いいえ | ページ全体ではなく、特定の要素をキャプチャするための CSS セレクターです。OG 画像やコンポーネントの抽出(例:`#hero`、`.pricing-card`)に便利です。 |
| pdfFormat | enum | いいえ | PDF のページサイズ。format='pdf' の場合のみ使用します。デフォルト:A4A4 | Letter | Legal | Tabloid | A3 |
| pdfMargin | object | いいえ | PDF のページ余白。format='pdf' の場合のみ使用します。CSS 値を指定できます。 |
| pdfMargin.top | string | いいえ | 上余白(CSS 値。例:'1cm'、'20px') |
| pdfMargin.left | string | いいえ | 左余白 |
| pdfMargin.right | string | いいえ | 右マージン |
| pdfMargin.bottom | string | いいえ | 下余白 |
| userAgent | string | いいえ | ブラウザーの user agent 文字列を上書きします。 |
| waitUntil | enum | いいえ | ページの準備完了イベント。networkidle2(デフォルト)はほとんどのサイトに最適です。速度を優先する場合は domcontentloaded、完全性を優先する場合は networkidle0 を使用します。load | domcontentloaded | networkidle0 | networkidle2 |
| bestAttempt | boolean | いいえ | true(デフォルト)の場合、タイムアウト時に失敗せず、レンダリング済みの内容をキャプチャします。false にすると、タイムアウト時にエラーになります。 |
| resizeWidth | integer | いいえ | キャプチャした画像をこの幅(ピクセル、16-3840)に縮小します。resizeHeight が省略された場合、アスペクト比を維持します。PDF では無視されます。 |
| pdfLandscape | boolean | いいえ | PDF の横向き設定。format='pdf' の場合のみ使用します。 |
| resizeHeight | integer | いいえ | キャプチャした画像をこの高さ(ピクセル、16-2160)に縮小します。resizeWidth が省略された場合、アスペクト比を維持します。PDF では無視されます。 |
| hideSelectors | array | いいえ | キャプチャ前に非表示(display:none)にする CSS セレクター。例:['.modal', '#newsletter-popup'] でオーバーレイを削除します。最大 50 個です。 |
| waitForSelector | string | いいえ | キャプチャ前に待機する CSS セレクター。SPA では必須です(例:'.main-content'、'#app-loaded')。 |
| deviceScaleFactor | number | いいえ | デバイスピクセル比(1 = 標準、2 = Retina)。デフォルトは 2× Retina です。 |
| blockCookieBanners | boolean | いいえ | キャプチャ前に一般的な Cookie/同意確認画面(GDPR/CCPA バナー)を非表示にします。厳選されたセレクターリストを使用し、カスタム hideSelectors より軽量です。 |
| blockResourceTypes | array | いいえ | 特定のリソースタイプをブロックしてキャプチャを高速化します。例:['font', 'image'] でテキストのみのスクリーンショットを作成できます。 |
| pdfPrintBackground | boolean | いいえ | PDF に背景色/画像を印刷します。デフォルト:true |
詳細
@copperline/rendex-mcp
R endex 用の MCP サーバーです。Model Context Protocol を介して、AI エージェントから生の HTML、Markdown、または任意の URL を画像や PDF にレンダリングできます。
クイックスタート
Claude Desktop / Cursor / Windsurf(npx)
MCP クライアントの設定に追加します。
{
"mcpServers": {
"rendex": {
"command": "npx",
"args": ["-y", "@copperline/rendex-mcp"],
"env": {
"RENDEX_API_KEY": "your-api-key"
}
}
}
}
追加先:
| クライアント | 設定場所 |
|---|---|
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json(macOS) |
| Cursor | プロジェクトルートの .cursor/mcp.json、または Settings > MCP |
| Windsurf | Settings > MCP Servers |
Claude Code(CLI)
上記と同じ設定を含む .mcp.json をプロジェクトルートに追加します。その後、Claude Code を再起動します。
重要:API キーが含まれているため、
.mcp.jsonを.gitignoreに追加してください。
リモート(インストール不要、OAuth または API キー)
ホストされているサーバー https://mcp.rendex.dev/mcp に接続します。インストールは不要です。
OAuth 2.1(認可コード + PKCE S256)に対応しているため、OAuth 対応クライアント(ChatGPT、Claude、Cursor、MCP Inspector)はAPI キーなしで接続できます。
一度限りのメールコードでサインインすると、各呼び出し元の利用料はそれぞれの Rendex プランとクレジットプールに請求されます。
固定キーを使用するクライアントでは、引き続きキーを直接渡すことができます。
{
"mcpServers": {
"rendex": {
"url": "https://mcp.rendex.dev/mcp",
"headers": {
"Authorization": "Bearer your-api-key"
}
}
}
}
ツール
rendex_screenshot
任意のウェブページ、生の HTML、または Markdown を画像または PDF にレンダリングします。
"Take a screenshot of https://example.com"
"Capture the full page of https://news.ycombinator.com in dark mode"
"Generate a PDF of https://github.com with A4 page size"
"Capture https://amazon.de as seen from Germany"
"Render this HTML invoice as a PDF"
"Render this Markdown release note as a PDF"
パラメーター:
| パラメーター | 型 | デフォルト | 説明 |
|---|---|---|---|
url | string | required* | キャプチャするウェブページの URL です。html および markdown とは同時に指定できません。 |
html | string | — | レンダリングする生の HTML です。url および markdown とは同時に指定できません。 |
markdown | string | — | レンダリングする Markdown です(サーバーが HTML に変換します)。url および html とは同時に指定できません。 |
data | object | — | Mustache テンプレート用のキーと値のデータです。設定すると、キャプチャ前に html または markdown の文字列がロジックレスの Mustache テンプレートとしてレンダリングされます。url との併用は無効です。 |
format | "png" | "jpeg" | "webp" | "pdf" | "png" | 出力形式 |
fullPage | boolean | false | スクロール可能なページ全体をキャプチャします |
darkMode | boolean | false | ダークカラースキームをエミュレートします |
width | number | 1280 | ビューポートの幅(320-3840) |
height | number | 800 | ビューポートの高さ(240-2160) |
resizeWidth | number | — | 出力をこの幅(px)に縮小します(resizeHeight を省略した場合はアスペクト比を維持)。PDF では無視されます |
resizeHeight | number | — | 出力をこの高さ(px)に縮小します(resizeWidth を省略した場合はアスペクト比を維持)。PDF では無視されます |
quality | number | 80 | 画像品質 1-100(JPEG/WebP のみ。デフォルトは 80) |
delay | number | 0 | キャプチャ前に待機する時間(ms) |
blockAds | boolean | true | 広告とトラッカーをブロックします |
blockCookieBanners | boolean | — | キャプチャ前に一般的な Cookie/同意バナー(GDPR/CCPA)を非表示にします |
blockResourceTypes | string[] | — | ブロックするリソースの種類:font、image、media、stylesheet、other |
device | string | — | デバイスのプリセット:desktop、iphone_15、iphone_se、pixel_8、ipad、ipad_pro。ビューポート、スケール、ユーザーエージェントを一度に設定します。width/height/deviceScaleFactor/userAgent より優先されます |
deviceScaleFactor | number | 2 | デバイスのピクセル比(1-3)。デフォルトでは 2× Retina です |
timeout | number | 30 | ページの読み込みを待つ最大秒数(5-60) |
waitUntil | string | "networkidle2" | ページの準備状態:load、domcontentloaded、networkidle0、networkidle2 |
waitForSelector | string | — | キャプチャ前に待機する CSS セレクター |
bestAttempt | boolean | true | タイムアウト時に失敗とせず、部分的なレンダリング結果を返します |
selector | string | — | ページ全体の代わりにキャプチャする要素の CSS セレクター |
hideSelectors | string[] | — | キャプチャ前に非表示にする CSS セレクター(display:none)。例:['.modal', '#newsletter-popup']。最大 50 件 |
css | string | — | キャプチャ前に挿入するカスタム CSS(最大 50KB) |
js | string | — | キャプチャ前に実行するカスタム JavaScript(最大 50KB) |
cookies | array | — | 認証が必要なキャプチャで設定する Cookie(最大 50 件) |
headers | object | — | ページリクエストに使用するカスタム HTTP ヘッダー |
userAgent | string | — | ブラウザーのユーザーエージェント文字列を上書きします |
pdfFormat | string | — | PDF のページサイズ:A4、Letter、Legal、Tabloid、A3 |
pdfLandscape | boolean | — | PDF を横向きにします |
pdfPrintBackground | boolean | true | PDF に背景を印刷します |
pdfScale | number | 1 | PDF の拡大縮小率(0.1-2) |
pdfMargin | object | — | PDF の余白:CSS 値で指定する {top, right, bottom, left} |
geo | string | — | 地域ターゲティングによるキャプチャ用の ISO 国コード(Pro/Enterprise) |
geoCity | string | — | 地域ターゲティング用の都市(geo が必要です) |
geoState | string | — | 地域ターゲティング用の州(geo が必要です) |
async | boolean | — | 非同期で処理します(ジョブ ID を返します) |
webhookUrl | string | — | 非同期キャプチャ完了時にコールバックを受け取る URL(Starter+。Free/Basic ではジョブのステータスをポーリングします) |
cacheTtl | number | — | 結果をキャッシュする秒数(3600-2592000) |
rendex_extract
任意の Web ページから、リーダーモードで読みやすいコンテンツを Markdown、JSON、または HTML として抽出します。スクリーンショットと同じ Chromium のレンダリング処理を実行するため、JavaScript の実行後のコンテンツを取得でき、取得専用のリーダーでは見逃される SPA も処理できます。ナビゲーション、広告、定型コンテンツを取り除き、記事本文とタイトル、著者名、抜粋を返します。ページのコンテンツを LLM に入力したり、要約や RAG への取り込みに利用したりするのに最適です。
"Extract the article text from https://example.com/post as Markdown"
"Pull the readable content from this SPA as JSON so I can summarize it"
パラメーター:
| パラメーター | 型 | デフォルト | 説明 |
|---|---|---|---|
url | string | 必須 | 読みやすいコンテンツを抽出する Web ページの URL |
extractFormat | "markdown" | "json" | "html" | "markdown" | 出力形式 — markdown(LLM に適した文章)、json(title/byline/excerpt/siteName/length を含む構造化データ)、または html(リーダーモード用に整形された HTML) |
device | string | — | デバイスのプリセット(desktop、iphone_15、iphone_se、pixel_8、ipad、ipad_pro)— ページのモバイル/タブレット版を抽出します |
blockAds | boolean | true | 抽出前に広告とトラッカーをブロックします |
blockCookieBanners | boolean | — | 抽出前に一般的な Cookie/同意バナーを非表示にします |
hideSelectors | string[] | — | 抽出前に非表示にする CSS セレクター。例:['.modal', '#newsletter-popup']。最大 50 件 |
waitUntil | string | "networkidle2" | ページの準備状態:load、domcontentloaded、networkidle0、networkidle2 |
timeout | number | 30 | ページの読み込みを待つ最大秒数(5~60) |
rendex_render_link
URL、生の HTML、または Markdown をレンダリングし、バイト列の代わりに署名付きのホスト型・エッジキャッシュ画像 URLを返します。動的な OG 画像に最適です。URL を <meta property="og:image"> または <img> タグに設定すると、共有のたびに Rendex がキャッシュ済みのコピーを配信します。rendex_screenshotと同じパラメーターに、任意の expiresIn を追加できます。{ url, expiresAt, format, cacheTtl } を返します。
"Make me a hosted OG-image URL for this Markdown release note"
"Give me a render link for this HTML card that I can drop into og:image"
| パラメーター | 型 | デフォルト | 説明 |
|---|---|---|---|
(rendex_screenshotのすべてのパラメーター) | — | — | 同じソース(url/html/markdown)、形式、サイズ設定、テンプレート設定 |
expiresIn | number | サーバー TTL | 署名付き URL の有効期限までの秒数(60~2592000) |
render_artifact
Markdown または HTML から、ブランド要素を適用したダウンロード可能な成果物(PDF、PNG、ホスト型共有ページ)を 1 回の呼び出しで作成します。レポート、請求書、要約、リリースノート、ダッシュボードなど、エージェントの出力に最適です。ロゴ、アクセントカラー、フォント、ヘッダー、フッターを適用し、PDF のページサイズ、向き、余白を選択できます。ホスト型 URL { pdfUrl, pngUrl, shareUrl, expiresAt } を返すため、手元でのストレージは不要です。リクエストした形式ごとにレンダリングクレジットを 1 消費します。
"Turn this Markdown report into a branded PDF and PNG with our logo and an orange accent"
"Render this invoice HTML to a PDF and give me a share link that expires in a week"
| パラメーター | 型 | デフォルト | 説明 |
|---|---|---|---|
content | string | 必須 | レンダリングする Markdown または HTML の本文(最大約 4MB) |
inputFormat | "markdown" | "html" | "markdown" | content の解釈方法 — markdown はスタイル付き HTML に変換され、html は本文の断片として使用されます |
formats | ("pdf" | "png")[] | ["pdf","png"] | 生成する形式。それぞれ 1 クレジットを消費します |
accentColor | string | — | バー、リンク、見出しに使用する CSS アクセントカラー(例:#EA580C) |
logo | string | — | ヘッダーに表示するロゴ画像の http(s) URL |
header | string | — | ロゴの横に表示するプレーンテキストのヘッダー行 |
footer | string | — | 下部に表示するプレーンテキストのフッター行 |
font | string | — | 本文に使用する CSS の font-family スタック |
pageSetup | object | — | { size, orientation, margin{top,right,bottom,left}, scale, width, height, fullPage } |
data | object | — | Mustache データ — 設定すると、変換前に content がロジックレスの Mustache テンプレートとして(branding の {{logo}}/{{header}}/…とともに)レンダリングされます |
expiresIn | number | 86400 | ホスト型 URL の有効期限までの秒数(3600~2592000)。デフォルトは 24 時間 |
Rendex Watch
スケジュールに従って URL を監視し、変更があったときに通知を受け取れます。実際の Chrome によるビジュアル差分(変更箇所をハイライトしたオーバーレイ付き)、抽出されたテキストの差分、または両方に対応しています。8 つのツールで、エージェントは共有 Rendex プラットフォーム上の監視を設定、確認、編集、削除できます(rdx_ キー 1 つ、クレジットプール 1 つ)。
"Watch https://example.com/pricing for visual changes and alert my webhook"
"Before I save it, test whether you can capture #pricing on that page"
"Show me the last few runs of watch <id> — did anything change?"
| ツール | 目的 | 主な入力 |
|---|---|---|
watch_create | 監視を作成します(有効にすると、現在の状態をベースラインとしてキャプチャします) | url、name?、intervalMinutes?、diffMode?(visual/text/both)、threshold?、renderParams?、webhookUrl?(Starter 以上)、notifyEmail?、paused? |
watch_test | 設定を事前にドライランします(何も作成されません) | watch_create と同じ |
watch_list | 監視の一覧を取得します | status?(active/paused/all)、cursor?、limit? |
watch_get | 1 件の監視を取得します(ベースライン URL 付き) | id |
watch_run | 今すぐチェックを実行します(1 クレジット) | id |
watch_runs | 前後の画像とオーバーレイの署名付き URL を含む実行履歴を取得します | id、cursor?、limit? |
watch_update | 監視をその場で編集します。間隔、差分モード、通知チャネル、レンダリングパラメーターを変更できます | id と、watch_create の任意のフィールド。チャネルを解除するには、webhookUrl/notifyEmail に null を指定します |
watch_delete | 監視とその実行履歴を削除します | id |
renderParams には、チェックごとのキャプチャ設定(fullPage のデフォルトは true、selector、device、geo(Pro 以上))に加え、ノイズ制御の ignoreRegions/ignoreText/minTextChars/suppressWhilePresent と uaMode を指定します。間隔の下限はプランごとに異なります(Free 1440/Basic 180/Starter 60/Pro 30/Enterprise 5)。監視のメタデータと署名付き画像 URL は JSON テキストとして返されます。
rendex_account
エージェント内からアカウントを確認できます。利用中のプラン、今月のレンダリングクレジットの使用数と上限(およびリセット日時)、1 分あたりのレート制限、ワンタップのアップグレードリンクを確認できます。「どれくらい使った?」や「レンダリングを増やすには?」といった質問に、ユーザーをダッシュボードに誘導せずにエージェントが回答できます。読み取り専用のため、クレジットは消費しません。
"How many Rendex renders do I have left this month?"
"What plan am I on, and how do I upgrade for more?"
{ plan, usage: { used, limit, remaining, unlimited, resetsAt }, rateLimitPerMinute, upgrade: { recommendedPlan, recommendedPlanCredits, upgradeUrl, manageBillingUrl } } を返します。
データテンプレート
再利用可能なテンプレートから複数のドキュメントを作成できます。html または
markdown とともに data オブジェクトを渡すと、Rendex はキャプチャ前に文字列をロジックレスな Mustache
テンプレートとしてレンダリングします。{{var}} による補間、{{#items}}…{{/items}} によるループ、
ネストされた {{a.b}} によるアクセスに対応しています。請求書、レポート、証明書、OG カードなどに最適です。
"Render this HTML invoice template to a PDF, filling it with this data:
<h1>Invoice {{number}}</h1><p>Total: {{total}}</p>
data = { number: 'INV-014', total: '$2,400' }"
data は html または markdown でのみ有効です。url と組み合わせると、検証エラーが返されます。
認証
API キーは rendex.dev で取得してください。
MCP クライアントの設定で、RENDEX_API_KEY 環境変数を設定してください。
料金
| プラン | 月間呼び出し数 | レート |
|---|---|---|
| Free | 100 | 3/min |
| Starter | 10,000 | 60/min |
| Pro | 100,000 | 300/min |
| Enterprise | カスタム | 1,000/min |
ライセンス
MIT — Copperline Labs LLC
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。