mcpField
C
crawlport

crawlport

ローカル
github.com/CloudCorpRecordsブラウザ自動化02 週間前に更新

crawlport について

crawlportは、Firecrawlを利用するコマンドラインツール兼MCPサーバーです。エージェントやターミナル利用者向けに、ページ取得、検索、構造化データ抽出、llms.txt生成などのウェブ収集・調査機能を提供します。

主な機能

  1. 01ページを読みやすい形式で取得
  2. 02URLのマッピングとサイトのクロール
  3. 03ウェブ検索
  4. 04プロンプトやスキーマに沿ったデータ抽出
  5. 05一括スクレイピングと詳細調査
  6. 06llms.txtコンテンツの生成

活用シーン

  1. 01ウェブページの内容を読みやすい形で取得
  2. 02サイト内の対象ページを発見してクロール
  3. 03複数のウェブ情報源を検索・調査
  4. 04指定スキーマでページの項目を抽出

MCP 対応

MCPサーバーは、スクレイピング、マッピング、検索、クロール、抽出、調査、一括処理、llms.txt生成のFirecrawlツールを提供します。Firecrawl APIキーが必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-crawlport": {
"command": "npx",
"args": [
"-y",
"@reneturcios/crawlport"
]
}
}
}
起動コマンドnpx -y @reneturcios/crawlport

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@reneturcios/crawlport0.1.0
ocighcr.io/cloudcorprecords/crawlport:0.1.0

ツール

10

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
urlstringはいスクレイピングする単一ページの URL。
proxystringいいえスクレイピングリクエストで使用するプロキシモード。Firecrawl API が受け付ける値を指定します。
actionsarrayいいえスクレイピング前に実行するブラウザー操作。Firecrawl のアクションオブジェクトで指定します。
formatsarrayいいえスクレイピングしたページの出力形式(markdown や html など)。
timeoutintegerいいえスクレイピングリクエストのタイムアウト(ミリ秒)。
waitForintegerいいえスクレイピング前にページが安定するまで待機する時間(ミリ秒)。
blockAdsbooleanいいえtrue の場合、ページのスクレイピング中に広告とポップアップをブロックします。
excludeTagsarrayいいえスクレイピング結果から除外する HTML タグ。
includeTagsarrayいいえスクレイピング結果に含める HTML タグ。設定すると、これらのタグ内のコンテンツのみを返します。
onlyMainContentbooleanいいえtrue の場合、ナビゲーションやその他の定型コンテンツを除き、ページのメインコンテンツのみを返します。

詳細

crawlport

crawlport は、Firecrawl を基盤とする、エージェントと読み取り可能なウェブをつなぐ窓口です。1 ページを渡すと、整った Markdown が返されます。サイト全体を渡すと、ページをマップしたり、セクションをクロールしたり、リストをまとめてスクレイピングしたりできます。質問を渡すと、検索したり、指定したスキーマに従ってページから構造化フィールドを抽出したり、複数のソースを横断して調査したり、サイトが自らについて公開する llms.txt を作成したりできます。CLI または MCP サーバーとして実行でき、Firecrawl API キーが必要です。

セットアップ

Firecrawl からキーを取得して、環境変数に設定します。

export FIRECRAWL_API_KEY=<redacted>

変数が設定されていない場合、すべてのコマンドとツール呼び出しは FIRECRAWL_API_KEY が指定されていないことを示すエラーで失敗します。外部には何も送信されません。

インストール

npx @reneturcios/crawlport scrape https://example.com/some/page

または、コンテナイメージを実行します。

docker run -i -e FIRECRAWL_API_KEY ghcr.io/cloudcorprecords/crawlport

コンテナはデフォルトで MCP サーバーとして起動します(下記を参照)。CLI として使うには、CLI 引数を渡してください。

CLI

# One page, as markdown (add --formats html,links etc. for more)
crawlport scrape https://example.com/article --only-main-content

# Discover a site's URLs, optionally filtered
crawlport map https://example.com --search pricing --limit 100

# Web search, with locale controls
crawlport search "standing desk reviews" --limit 5 --lang en --country US

# Start a crawl, then poll it with the returned job id
crawlport crawl https://example.com/docs --limit 50 --max-depth 2
crawlport crawl-status <job-id>

# Structured extraction and batch scraping
crawlport extract https://example.com/a https://example.com/b --prompt "pull the price"
crawlport batch-scrape https://example.com/a https://example.com/b
crawlport batch-status <job-id>

# Research and llms.txt
crawlport deep-research "home battery storage costs in 2026" --max-urls 40
crawlport llmstxt https://example.com --max-urls 25

crawlport --version

成功した呼び出しでは、API の JSON レスポンスが出力されます。クロールとバッチのジョブは上流で非同期に処理されます。開始呼び出しはジョブ ID を返し、対応するステータスコマンドで進行状況と結果を確認します。終了コードは次のとおりです。 0 は成功、1 は API 呼び出しの失敗(キーがない場合を含む)、2 は使用方法のエラーです。

MCP サーバー

1 つのバイナリで、どちらの使い方にも対応します。mcp サブコマンドで stdio MCP サーバーを起動します。

npx -y @reneturcios/crawlport mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "crawlport": {
      "command": "npx",
      "args": ["-y", "@reneturcios/crawlport", "mcp"],
      "env": { "FIRECRAWL_API_KEY": "your-key-here" }
    }
  }
}
ツール
ツール入力機能
firecrawl_scrapeurl(必須);formats、onlyMainContent、waitFor、timeout、actions、includeTags、excludeTags、blockAds、proxy(任意)POST /v1/scrape で 1 ページをスクレイピングします。
firecrawl_mapurl(必須);search、limit、ignoreSitemapPOST /v1/map でサイト内の検出済み URL を一覧表示します。
firecrawl_searchquery(必須);limit、lang、country、scrapeOptionsPOST /v1/search でウェブ検索します。必要に応じて各検索結果もスクレイピングします。
firecrawl_crawlurl(必須);limit、maxDepth、allowBackwardLinks、allowExternalLinks、excludePaths、includePaths、scrapeOptionsPOST /v1/crawl でクロールを開始し、ジョブ ID を返します。
firecrawl_check_crawl_statusid(必須)GET /v1/crawl/{id} でクロールジョブの状態を確認します。
firecrawl_extracturls(必須);prompt、schema、enableWebSearch、allowExternalLinksPOST /v1/extract で、プロンプトまたはスキーマに従って LLM 抽出を行います。
firecrawl_batch_scrapeurls(必須);formats、onlyMainContentPOST /v1/batch/scrape でバッチスクレイピングを開始し、ジョブ ID を返します。
firecrawl_check_batch_statusid(必須)GET /v1/batch/scrape/{id} でバッチジョブの状態を確認します。
firecrawl_deep_researchquery(必須);maxDepth、timeLimit、maxUrlsPOST /v1/deep-research で複数のソースを横断して調査します。
firecrawl_generate_llmstxturl(必須);maxUrls、showFullTextPOST /v1/llmstxt で llms.txt の内容を生成します。

ツールの結果は上流の JSON で、整形してテキストとして出力されます。任意の引数は指定された場合にのみ転送され、それ以外の場合は API のデフォルト値が適用されます。上流でのエラーは、HTTP ステータスと API 独自のメッセージを含むツールエラーとして返されます。

開発

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。