mcpField
A
apify-mcp-server

apify-mcp-server

リモート
github.com/apifyブラウザ自動化13.7k今日更新
リポジトリ

apify-mcp-server について

apify-mcp-server は Apify Actor を AI エージェントに公開し、ウェブサイトやオンラインサービスからのデータ抽出と Actor 管理を可能にします。ホスト型の Streamable HTTP とローカルの stdio に対応し、ツールを動的に発見できます。

主な機能

  1. 01Actor を MCP ツールとして公開
  2. 02Actor の動的な発見
  3. 03サイトのスクレイピングとデータ抽出
  4. 04実行、ストレージ、スケジュールの管理
  5. 05複数の支払い方式に対応

活用シーン

  1. 01ソーシャルメディアや検索結果の収集
  2. 02地図やオンラインストアのデータ抽出
  3. 03Actor の実行状況とログの確認
  4. 04有料 Actor の実行料金の支払い

MCP 対応

Actor の入力スキーマからツールを生成し、Actor の検索、実行、ストレージ、スケジュール管理などを提供する MCP サーバーです。クライアントは OAuth または Bearer token でホスト型エンドポイントに接続するか、stdio でローカル実行できます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://mcp.apify.com/
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

すべてのエンドポイント
Streamable HTTPhttps://mcp.apify.com/認証が必要

ツール

詳細

Apify MCP サーバー
mcp.apify.com

NPM 最新バージョン ダウンロード数 ビルドステータス smithery バッジ

mcp.apify.com の Apify Model Context Protocol(MCP)サーバーを使うと、Apify Store の数千種類の既製スクレイパー、クローラー、自動化ツールを利用して、AI エージェントがソーシャルメディア、検索エンジン、地図、eコマースサイト、その他あらゆるウェブサイトからデータを抽出できます。OAuth に対応しているため、URL を指定するだけで Claude.ai や Visual Studio Code などのクライアントから接続できます。

🚀 ホスト型 Apify MCP サーバーをお使いください!

最適な使い心地を得るには、ホスト型サーバー https://mcp.apify.com に AI アシスタントを接続してください。ホスト型サーバーは、構造化された Actor の結果に対する出力スキーマ推論など、stdio 経由でローカル実行する場合には利用できない最新機能に対応しています。

⚠️ 従来の SSE トランスポートは削除されました。 https://mcp.apify.com/sse エンドポイントは、Streamable HTTP に移行するため削除されました。クライアントの設定から /sse を削除し、https://mcp.apify.com に移行してください。

💰 このサーバーはエージェント型決済にも対応しています。AGI でトークンを購入して任意の Actor を実行するか、直接 x402(Pay Per Event Actor のみ)または Skyfire を利用してリクエストごとに支払えます。

Apify MCP Server は Claude Code, Claude.ai, Cursor, VS Code および Model Context Protocol に準拠するあらゆるクライアントと互換性があります。 詳細は MCP クライアントのセクションをご覧いただくか、MCP 設定ページをご覧ください。

Apify-MCP-server

目次

🌐 Apify MCP サーバーの紹介

Apify MCP サーバーを使用すると、AI アシスタントは任意の Apify Actor を特定のタスクを実行するツールとして利用できます。 たとえば、次のことができます。

  • Facebook Posts Scraper を使用して、複数のページやプロフィールから Facebook の投稿データを抽出します。
  • Google Maps Email Extractor を使用して、Google マップから連絡先情報を抽出します。
  • Google Search Results Scraper を使用して、Google 検索エンジンの検索結果ページ(SERP)をスクレイピングします。
  • Instagram Scraper を使用して、Instagram の投稿、プロフィール、場所、写真、コメントをスクレイピングします。
  • RAG Web Browser を使用して、ウェブを検索し、上位 N 件の URL をスクレイピングして、そのコンテンツを返します。
  • Web Fetch を使用して、任意の URL のコンテンツを取得し、Markdown、プレーンテキスト、HTML、またはリンクとして返します。JavaScript のレンダリングとボット対策にも対応しています。

動画チュートリアル:8,000 以上の Apify Actor とエージェントを Claude と連携する

Apify MCP Server Tutorial: Integrate 5,000+ Apify Actors and Agents with Claude

🚀 クイックスタート

Apify MCP サーバーは、次の 2 つの方法で使用できます。

HTTPS エンドポイント(mcp.apify.com):OAuth を使用するか、リクエストに Authorization: Bearer <APIFY_TOKEN> ヘッダーを含めて、MCP クライアントから接続します。ほとんどのユースケースで推奨される方法です。OAuth に対応しているため、Claude.ai や Visual Studio Code などのクライアントから、URL https://mcp.apify.com を指定するだけで接続できます。

  • https://mcp.apify.com ストリーミング可能なトランスポート

標準入力/出力(stdio):ローカル連携や、Claude for Desktop クライアントなどのコマンドラインツールに最適です。

  • MCP クライアントのサーバーコマンドに npx @apify/actors-mcp-server を設定し、APIFY_TOKEN 環境変数に Apify API トークンを設定します。
  • その他のオプションについては、npx @apify/actors-mcp-server --help を参照してください。

MCP サーバーのセットアップ手順について詳しくは、Apify のドキュメントをご覧ください。

🤖 MCP クライアント

Apify MCP サーバーは、Model Context Protocol に準拠するあらゆる MCP クライアントと互換性があります。ただし、動的なツール検出などの機能への対応状況は、クライアントによって異なる場合があります。

Apify MCP サーバーを利用するには、Claude Desktop、Visual Studio Code、Apify Tester MCP Client などのクライアントを使用できます。

mcp.apify.com にアクセスして、お使いのクライアントに合わせてサーバーを設定してください。

Apify-MCP-configuration-clients

テスト済みのクライアント

🪄 Apify MCPを今すぐ試す

セットアップなしでApify MCPを試してみませんか?

Apify Tester MCP Clientをご覧ください。

このチャットのようなインタラクティブなインターフェースを使えば、ローカル環境をセットアップせずにApify MCPの機能を簡単に試せます。 Apifyアカウントにサインインして、ウェブスクレイピング、データ抽出、自動化ツールを試してみましょう!

または、ワンクリックでインストールできるMCPバンドルファイル(以前はAnthropic Desktop extension file、またはDXTと呼ばれていました)を使用してください:Apify MCP Server MCPB file

💰 エージェント型決済

AGI、直接x402、またはSkyfireを使えば、Apify APIトークンなしでActorの実行料金を支払えます。

  • AGI(agi.apify.com)は、x402またはMPPによる支払いと引き換えに、プリペイドのApify APIトークンを発行します。このトークンは通常のAPIトークンと同じようにmcp.apify.comおよびapi.apify.comで使用できます。Pay Per EventのActorに限らず、あらゆるActorで利用できます。新しい統合には推奨です。詳しくは、以下のAGI(推奨)をご覧ください。
  • 直接x402は、リクエストごとにBase上のUSDCで支払い、別のプラットフォームアカウントは必要ありません。mcpcで完全にサポートされています(brew install apify/tap/mcpcまたはnpm install -g @apify/mcpc)。最新の機能とx402プロトコルにネイティブ対応しているMCPクライアントは数少ないため、ここではmcpcを使用します。
  • SkyfireはPAYトークンで支払い、資金をチャージしたウォレットを持つSkyfireアカウントが必要です。特別なMCPクライアントは必要ありません。決済フロー全体は、MCPツール呼び出しのパラメーターを通じて直接処理されます。

ℹ️ 対象範囲: 直接x402とSkyfireはいずれもPay Per EventのActorに限られ、Standby Actorには対応していません。また、トークンを発行する代わりに、実行ごとに精算されます。

エージェント型決済の仕組み

Actorの実行料金は変動するため、どちらの決済方法もプリペイド残高モデルを使用します。決済フローは次の4つのステップで進みます。

  1. 検出:エージェントはsearch-actorsまたはfetch-actor-detailsを使ってActorを検出します。これらの呼び出しは無料です。
  2. 事前入金:有料のActorツールを実行する前に、エージェントはプリペイド残高に資金を入金します。
    • 直接x402:mcpcが$1.00分のUSDCトランザクションに自動で署名します。
    • Skyfire:エージェントはSkyfireのcreate-pay-tokenツールを使って、最低$5.00分のPAYトークンを作成します。
  3. 実行:エージェントはActorツールを呼び出します。
    • 直接x402:mcpcがプリペイド残高を使って自動で処理します。
    • Skyfire:エージェントは入力プロパティskyfire-pay-idにPAYトークンを明示的に渡します。
  4. 精算:ツールはActorの結果を返します。未使用の資金は次回以降の実行に利用できます。
    • 直接x402:60分間操作がないと、サーバーは未使用残高をBase上のウォレットに返金します。
    • Skyfire:トークンの有効期限が切れると、Skyfireが未使用の資金を返金します。

🪙 AGI(推奨)

AGI(Apify Agent General Interface)は、アカウントなしで自律型エージェントがApifyの利用料金を支払うための推奨方法です。x402またはMPPで一度支払うと、上限付きのプリペイドApify APIトークンを受け取れます。このトークンはmcp.apify.comおよびapi.apify.comに対して直接使用できます(Authorization: Bearer <token>)。あらゆるActorで利用できます。

プロトコル、対応する決済方法、および現在の利用条件(最低金額、トークンの有効期間、返金ポリシー)は、**agi.apify.com/AGENTS.md**に記載されています。ここを唯一の信頼できる情報源として扱ってください。

💸 直接x402

x402プロトコルを使うと、システム間の直接決済が可能になります。MCPクライアントはこれを利用し、Apify APIトークンを使わずに、Baseブロックチェーン上のUSDCでActorの実行料金を支払えます。

前提条件
  • Baseのメインネット上にUSDCがあるウォレット。
セットアップ

ウォレットを作成またはインポートします。

# Create a new wallet
mcpc x402 init

# Import an existing wallet
mcpc x402 import <private-key>

# Show the wallet address and a funding QR code, so you can fund it with USDC on Base (https://base.org)
mcpc x402

x402 を有効にしてサーバーに接続します。

mcpc connect "mcp.apify.com?payment=x402" @apify --x402

これで、有料ツールを呼び出せます。

mcpc @apify tools-call call-actor actor:="apify/rag-web-browser" input:='{"query": "latest AI news"}'

🔥 Skyfire

Skyfire は、AI エージェント向けの決済インフラストラクチャを提供します。Apify API トークンで認証する代わりに、エージェントは Skyfire の決済トークンを渡し、PAY トークンを使って各ツール呼び出しの費用を支払います。

前提条件
  • ウォレットに入金済みの Skyfire アカウント。
  • Claude Desktop、OpenCode、VS Code など、複数のサーバーに対応する MCP クライアント。
セットアップ

Skyfire MCP サーバーと Apify MCP Server をクライアントに設定します。Apify サーバーの URL に payment=skyfire を追加します。

{
  "mcpServers": {
    "skyfire": {
      "url": "https://api.skyfire.xyz/mcp/sse",
      "headers": {
        "skyfire-api-key": "<YOUR_SKYFIRE_API_KEY>"
      }
    },
    "apify": {
      "url": "https://mcp.apify.com?payment=skyfire"
    }
  }
}

セットアップの詳細については、Skyfire integration documentation をご覧ください。Agentic Payments with Skyfire の記事では、さらに詳しい背景を説明しています。

🛠️ ツール、リソース、プロンプト

MCP サーバーは、Apify Actors を操作するためのツールを提供します。 Apify Store は規模が大きく、急速に成長しているため、MCP サーバーを使うことで、新しい Actor を動的に見つけて使用できます。

Actors

Apify Actor はどれでもツールとして使用できます。 デフォルトでは、サーバーには apify/rag-web-browser と apify/web-fetch の 2 つの Actor と、複数のヘルパーツールがあらかじめ設定されています。 MCP サーバーは Actor の入力スキーマを読み込み、対応する MCP ツールを作成します。 これにより、AI エージェントは Actor に渡す引数と、返される内容を正確に把握できます。

たとえば、apify/rag-web-browser Actor の入力パラメーターは次のとおりです。

{
  "query": "restaurants in San Francisco",
  "maxResults": 3
}

どの Actor を呼び出すか、またその入力パラメーターを手動で指定する必要はありません。LLM がこれを自動的に処理します。 ツールが呼び出されると、引数は LLM によって Actor に自動的に渡されます。 使用できる引数の一覧については、該当する Actor のドキュメントをご覧ください。

ヘルパーツール

Apify で MCP を使用する最も強力な機能の 1 つは、ツールを動的に見つけられることです。 これにより、AI エージェントは必要に応じて新しいツール(Actor)を見つけ、取り入れることができます。 以下に、特別な MCP 操作と、それを Apify MCP Server がどのようにサポートするかを示します。

  • Apify Actors:Actor を検索し、アカウント内の Actor を一覧表示して詳細を確認できます。また、AI 用のツールとして使用したり、自分の Actor を削除したりできます。
  • Apify ドキュメント:Apify ドキュメントを検索し、特定のドキュメントを取得して AI にコンテキストを提供できます。
  • Actor の実行:Actor の実行一覧を取得し、詳細を確認してログを取得できます。
  • Apify ストレージ:データセットとキーバリューストアのデータにアクセスできます。
  • Actor タスク:保存済みの Actor タスクを作成、確認、更新し、公開ランディングページを公開または非公開にできます。
  • スケジュール:Actor とタスクを自動実行するスケジュールを作成、確認、更新、削除できます。
  • ビルド:Actor のバージョンをビルドし、ビルドを一覧表示して、ビルドのステータスを確認し、ビルドログを取得できます。
  • Actor のバージョン:各ファイルのハッシュとファイル一式のリビジョンを含む Actor バージョンのファイルを読み取り、ファイルから Actor を作成できます。また、前回読み取ってからの変更を検出するチェックを行いながらバージョンのファイルを変更したり、ファイルから、または別のバージョンのコピーとしてバージョンを追加したり、バージョンを削除したりできます。
  • Apify API:Apify API リファレンスを検索し、操作を確認して、API にリクエストを送信し、データを読み取ったり変更したりできます。
利用可能なツールの概要

Apify MCP Server が提供するすべてのツールの概要を以下に示します。 デフォルトで有効列の凡例:

  • ✅ — デフォルトのツールセットに含まれます。
  • ⚡ — call-actor、Actor ツール、または get-actor-run が存在する場合、自動的に挿入されます(デフォルト設定では該当します)。
  • ✅¹ — デフォルトで提供されますが、テレメトリが有効で、クライアントが対象外にされていない場合に限ります:Anthropic のサービス(Claude.ai / Claude Desktop、およびローカルエージェントモード / Claude Code を含む)。無効にするには、これを除外した明示的な tools= リストを渡してください。明示的に選択すると(tools=report-problem または tools=dev)、クライアントにかかわらず提供されます。ただし、テレメトリは引き続き有効である必要があります。 | ツール名 | カテゴリ | 説明 | デフォルトで有効 | | :--- | :--- | :--- | :---: | | search-actors | actors | Apify Store で Actor を検索します。 | ✅ | | fetch-actor-details | actors | 特定の Actor に関する詳細情報を取得します。入力スキーマ、README(利用可能な場合は要約、それ以外の場合は全文)、料金、Actor の出力スキーマ、Server Actor の HTTP オペレーションが含まれます。 | ✅ | | call-actor | actors | Actor を呼び出し、その実行結果を取得します。Actor の入力スキーマを取得するには、先に fetch-actor-details を使用してください。 | ✅ | | send-server-actor-request | なし(名前で選択:tools=send-server-actor-request) | Server Actor の API(API スキーマに記載されているサーバーインターフェース)に HTTP リクエストを1件送信し、レスポンスを返します。 | | | get-actor-run | runs | 特定の Actor 実行に関する詳細情報を取得します。 | ⚡ | | get-dataset-items | storage | フィルタリングとページネーションに対応した、データセットの項目を取得します。 | ⚡ | | get-key-value-store-record| storage | キーバリューストア内の特定のキーに関連付けられた値を取得します。 | ⚡ | | abort-actor-run | runs | 実行中の Actor 実行を中止します。必要に応じて、正常に終了させることもできます。 | ⚡ | | delete-actor | なし(名前で選択:tools=delete-actor) | アカウントから Actor を完全に削除します。公開 Actor は、先に公開を取り消す必要があります。 | | | search-apify-docs | docs | 関連するページを Apify のドキュメントから検索します。 | ✅ | | fetch-apify-docs | docs | URL で指定された Apify ドキュメントページの全文を取得します。 | ✅ | | apify--rag-web-browser | Actor(ツールの設定を参照) | ウェブを閲覧するための Actor ツールです。 | ✅ | | apify--web-fetch | Actor(ツールの設定を参照) | URL を取得し、そのコンテンツを返す Actor ツールです。 | ✅ | | report-problem | dev | Apify のツールまたは Actor に関する問題を Apify チームに報告します。 | ✅¹ | | get-actor-list | なし(名前で選択:tools=get-actor-list) | 自分が所有する Actor と、自分に共有されている Actor(非公開のものも含む)の一覧を取得します。 | | | get-actor-run-list | runs | Actor とステータスで絞り込み可能な、Actor 実行の一覧を取得します。 | | | get-actor-run-log | runs | 特定の Actor 実行のログを取得します。 | | | get-dataset | storage | 特定のデータセットに関するメタデータを取得します。 | | | get-dataset-schema | storage | データセットの項目から JSON スキーマを生成します。 | | | get-key-value-store | storage | 特定のキーバリューストアに関するメタデータを取得します。 | | | get-key-value-store-keys| storage | 特定のキーバリューストア内のキーの一覧を取得します。 | | | get-dataset-list | storage | ユーザーが利用できるすべてのデータセットの一覧を取得します。 | | | get-key-value-store-list| storage | ユーザーが利用できるすべてのキーバリューストアの一覧を取得します。 | | | create-actor-task | tasks | 保存済み Actor タスク(名前付きで再利用可能な Actor の設定)を作成します。 | | | get-actor-task | tasks | 保存済み Actor タスク、その公開状態、および公開表示設定を取得します。 | | | update-actor-task | tasks | タスクの入力、実行オプション、または公開表示設定を更新します。 | | | publish-actor-task | tasks | タスクを公開ランディングページで公開します。 | | | unpublish-actor-task | tasks | 公開ランディングページでのタスクの公開を取り消します。 | | | create-schedule | schedules | cron スケジュールに従って Actor またはタスクを実行するスケジュールを作成します。 | | | get-schedule | schedules | スケジュール、cron 式、状態、および実行するアクションを取得します。 | | | update-schedule | schedules | スケジュールの cron 式、タイムゾーン、有効状態、またはアクションを更新します。 | | | delete-schedule | schedules | スケジュールを削除します。 | | | get-actor-build | builds | Actor ビルドのステータスを取得します。 | | | get-actor-build-log | builds | 特定の Actor ビルドのログを取得します。 | | | get-actor-build-list | builds | アカウント内、または特定の Actor のすべてのステータスのビルドを、新しい順に一覧表示します。 | | | build-actor | builds | Actor のバージョンをビルドし、上限時間内でビルドの完了を待ちます。 | | | get-actor-version | versions | Actor バージョンのファイル一覧(ハッシュ付き)と、指定したファイルの内容を取得します。 | | | create-actor | versions | ファイルからアカウント内に非公開 Actor を作成します。必要に応じてビルドも開始できます。 | | | update-actor-version | versions | 1回の全件成功または全件失敗となる書き込みで、Actor バージョンのファイルを作成、編集、または削除します。 | | | create-actor-version | versions | ファイルから、または別のバージョンのコピーとして Actor にバージョンを追加します。必要に応じてビルドも開始できます。 | | | delete-actor-version | versions | Actor バージョンを削除します。ビルドとそのタグは残ります。 | | | apify-api-search | api | キーワードで Apify API リファレンスを検索し、各オペレーションのメソッド、パス、ドキュメントページを返します。 | | | apify-api-details | api | パスで指定された Apify API オペレーションのパラメーターとリクエストボディのスキーマを取得します。 | | | apify-api-read | api | actor-runs や /v2/actor-runs などの Apify API パスに GET リクエストを送信します。Apify CLI の apify api と同様に動作します。読み取り専用です。有料実行を開始する method クエリパラメーターと、同期実行エンドポイントへの GET は拒否されます。 | | | apify-api-write | api | JSON ボディを指定して、任意の Apify API パスに POST、PUT、PATCH、または DELETE リクエストを送信します。Apify CLI の apify api と同様に動作します。method クエリパラメーターは拒否されます。 | |

注:

call-actor、Actor ツール、または get-actor-run が含まれている場合、サーバーは get-actor-run、get-dataset-items、get-key-value-store-record、abort-actor-run を自動的に追加します。

call-actor 経由、または Actor ツール(例:apify--rag-web-browser)を直接使用して Actor を呼び出すと、レスポンスには実行メタデータ、ストレージ ID、summary と nextStep が含まれますが、データセットの項目は含まれません。項目を取得するには、nextStep に従い、呼び出しで返された datasetId を渡して get-dataset-items(自動追加)を呼び出してください。

ツールのアノテーション

すべてのツールには、MCP クライアントと LLM がツールの動作を理解するためのメタデータアノテーションが含まれています。

  • title:ツールの短い表示名(例:「Actors を検索」「Actor を呼び出す」「apify/rag-web-browser」)
  • readOnlyHint:状態を変更せず、データを読み取るだけのツールでは true になります(例:get-dataset、fetch-actor-details)。Actor ツールでは、権限が制限され、シークレット、書き込み可能なストレージ、MCP コネクター、コード入力を受け付けない、Apify が管理する Actor に対してのみ設定されます(例:apify--web-fetch)。直接呼び出すツールでは、元の Actor 入力を制限できます。apify--website-content-crawler は pageFunction と initialCookies を除外し、拒否するため、読み取り専用です。その他の Actor ツールには破壊的な操作を示すアノテーションが付与されます。
  • openWorldHint:Apify プラットフォーム外の外部リソースにアクセスするツールでは true になります(例:call-actor は外部 Actor を実行します)。Apify プラットフォーム内でのみ動作するツール(search-actors や fetch-apify-docs など)には、このアノテーションは付与されません。

直接呼び出す apify--website-content-crawler ツールでは、デフォルトで respectRobotsTxtFile が true に設定されます。明示的に false を指定した場合は、その値が保持されます。これらの制限とデフォルト値は、直接呼び出すツールにのみ適用されます。call-actor、call-actor-widget、fetch-actor-details では、元の Actor 入力の仕様が維持されます。

ツールの設定

tools 設定パラメーターでは、読み込むツール(カテゴリまたは個別のツール、および Apify Actor)を指定します。たとえば、tools=storage,runs は 2 つのカテゴリを読み込み、tools=call-actor は 1 つのツールのみを読み込みます。

クエリパラメーターが指定されていない場合、MCP サーバーはデフォルトで次の tools を読み込みます。

  • actors
  • docs
  • apify/rag-web-browser
  • apify/web-fetch

tools パラメーターを指定すると、一覧にあるツールまたはカテゴリのみが有効になり、デフォルトのツールは含まれません。

report-problem はデフォルトで提供されます(上記の脚注にある制限の対象)が、dev カテゴリに属しているため、明示的に tools=dev を指定した場合にも選択されます。無効にするには、tools=actors,docs のように、report-problem を含まない tools= の一覧を明示的に渡してください。

簡単な設定:

UI コンフィギュレーターを使用してサーバーを設定し、その設定をクライアントにコピーしてください。

ホスト型サーバーの設定:

ホスト型サーバーは、URL のクエリパラメーターを使用して設定できます。たとえば、デフォルトのツールを読み込むには、次のようにします。

https://mcp.apify.com?tools=actors,docs,apify/rag-web-browser,apify/web-fetch

最小限の設定で、検出ツールや汎用呼び出しツールを使用せず、単一の Actor ツールのみを使用する場合、サーバーは次のように設定できます。

https://mcp.apify.com?tools=apify/my-actor

この設定では、指定した Actor(apify/my-actor)のみがツールとして公開されます。その他のツールは使用できません。

CLI の設定:

CLI はコマンドラインフラグを使用して設定できます。たとえば、ホスト型サーバーの設定と同じツールを読み込むには、次のようにします。

npx @apify/actors-mcp-server --tools actors,docs,apify/rag-web-browser,apify/web-fetch

最小限の設定は、ホスト型サーバーの設定と同様です。

npx @apify/actors-mcp-server --tools apify/my-actor

上記と同様に、この設定では、指定した Actor(apify/my-actor)のみがツールとして公開されます。その他のツールは使用できません。

⚠️ 重要な推奨事項

デフォルトのツール設定は、今後のバージョンで変更される可能性があります。 tools パラメーターが指定されていない場合、サーバーは現在デフォルトのツールを読み込みますが、この動作は変更される可能性があります。

本番環境での使用や安定したインターフェースのために、必ず tools パラメーターを明示的に指定してください。 これにより、更新後も設定の一貫性を保てます。

UI モードの設定

ui パラメーターを有効にすると、ツールの応答でMCP Appsのウィジェットをレンダリングできます。有効にすると、search-actors などのツールから、インタラクティブな MCP App の応答が返されます。

ホステッドサーバーの設定:

ui クエリパラメーターを使用して UI モードを有効にします。

https://mcp.apify.com?ui=true

ほかのパラメーターと組み合わせることもできます。

https://mcp.apify.com?tools=actors,docs&ui=true

CLI の設定:

CLI はコマンドラインフラグで設定できます。たとえば、UI モードを有効にするには、次のようにします。

npx @apify/actors-mcp-server --ui true

UI_MODE 環境変数を設定して有効にすることもできます。

export UI_MODE=true
npx @apify/actors-mcp-server
下位互換性

v2 の設定は、v1 の使用方法との下位互換性を維持しています。注意事項:

  • actors パラメーター(URL)と --actors フラグ(CLI)は引き続きサポートされています。
    • 内部では、これらは tools セレクターに統合されます。
    • 例:?actors=apify/rag-web-browser ≡ ?tools=apify/rag-web-browser、--actors apify/rag-web-browser ≡ --tools apify/rag-web-browser。
  • enableAddingActors(URL)、enable-adding-actors(CLI)、および従来のエイリアス enableActorAutoLoading は削除されました。Actor を動的に呼び出すには、tools=call-actor(actors カテゴリーを通じてデフォルトで含まれています)を使用してください。残っている生の値は無視されます。
  • デフォルト設定は引き続き互換性があります。tools が指定されていない場合、サーバーは actors、docs、apify/rag-web-browser、apify/web-fetch を読み込みます。
    • tools が1つでも指定されている場合、デフォルトは追加されません(明示的な選択に関する v1 の意図と同じです)。
  • call-actor は、actors カテゴリーを通じてデフォルトで含まれるようになりました(追加的な変更です)。除外するには、actors を含まない明示的な tools リストを指定してください。
  • tools=add-actor、tools=experimental、tools=preview は廃止されました。これらは無視され、ツールは読み込まれません。代わりに tools=call-actor(またはデフォルトの actors カテゴリー)を使用してください。
  • tools=get-actor-log は廃止されました。このツールは get-actor-run-log に名前が変更されました。古いセレクターは無視され、ツールは読み込まれません。代わりに tools=get-actor-run-log(または runs カテゴリー)を使用してください。
  • tools=source は廃止されました。このカテゴリーは versions に名前が変更されました。古いセレクターは無視され、ツールは読み込まれません。代わりに tools=versions を使用してください。

?actors=... または --actors を使用する既存の URL とコマンドは、変更なしで引き続き動作します。

プロンプト

サーバーは prompts ケイパビリティを通知しますが、現在プロンプトは登録されていません。prompts/list は空のリストを返します。

リソース

Apify のデータは resources/list には列挙されません。読み取りはオンデマンドで行われます。Apify API の GET URL(https://api.apify.com/v2/...)を resources/read に渡すと、サーバーがセッションの Apify トークンを挿入し、レスポンス本文を返します。resources/templates/list には、一般的な形式としてデータセット項目、キー・バリューストアのレコードとキー、実行メタデータ、実行ログが、それぞれのページングパラメーターとともに列挙されます。レスポンスは最大 256 KB までインラインで返されます。それを超える場合は、本文の代わりにダウンロード URL を含む短い通知が返されます。API の読み取りには Apify トークンが必要なため、決済専用のセッション(x402 または Skyfire)ではエラーが JSON-RPC 形式で返されます。

💬 使用例

以下は、AI アシスタントが Apify MCP Server のツールを使用する実際的な例です。

例 1:RAG Web Browser を使用したウェブ検索

ユーザーのプロンプト:

自律型 AI エージェントに関する最新ニュースを探し、主な動向を要約してください。

AI アシスタントは、事前設定された apify--rag-web-browser Actor ツールを呼び出してウェブを検索し、上位の検索結果からコンテンツを取得します。 ツールは上位3件の検索結果から Markdown 形式のコンテンツを返し、AI アシスタントはそれを要約してユーザーに提示します。

例 2:Apify Store から Actor を見つけて実行

ユーザーのプロンプト:

Google マップからプラハのレストラン上位10件を、連絡先情報とともにスクレイピングしてください。

AI アシスタントは、まず適切な Actor を検索し、その入力スキーマを確認してから実行します。 ツールは、レストラン名、住所、評価、電話番号、ウェブサイトを含むスクレイピングデータのプレビューを返します。

例 3:Actor の実行結果を取得し、ページネーションする

ユーザーのプロンプト:

そのスクレイピング実行の次の 10 件の結果を表示してください。

AI アシスタントは、前回の Actor 実行のデータセット ID を使って、追加のアイテムを取得します。 想定される出力:ツールは Actor の出力データセットから、構造化データアイテムの次のページを返します。

📡 テレメトリー

Apify MCP Server は、Apify が利用パターンを把握し、サービスを改善できるよう、ツール呼び出しに関するテレメトリーデータを収集します。 デフォルトでは、すべてのツール呼び出しでテレメトリーが有効になっています。 テレメトリーが有効な場合、Apify Store での Actor 検索では MCP セッション ID が _traceId として送信され、ツール呼び出しイベントには trace_id が含まれます。 search-actors では、任意の useCase も指定できます。これは、ユーザーが検索している理由をモデルが記述する 1 文です。Store の検索時に _useCase として送信され、検索結果の改善に役立てるため、Apify の Store 検索分析に記録されます。 テレメトリーを無効にすると、これらの機能はすべて停止します。

stdio トランスポートでは、エラー追跡に Sentry も使用しているため、問題をより迅速に特定して修正できます。 テレメトリーをオプトアウトすると、Sentry は自動的に無効になります。

テレメトリーのオプトアウト

--telemetry-enabled CLI フラグを false にするか、TELEMETRY_ENABLED 環境変数を false に設定すると、(Sentry によるエラー追跡を含む)テレメトリーをオプトアウトできます。 CLI フラグは環境変数より優先されます。

例

リモートサーバー(mcp.apify.com)の場合:

# Disable via URL parameter
https://mcp.apify.com?telemetry-enabled=false

ローカルの stdio サーバーの場合:

# Disable via CLI flag
npx @apify/actors-mcp-server --telemetry-enabled=false

# Or set environment variable
export TELEMETRY_ENABLED=false
npx @apify/actors-mcp-server

⚙️ 開発

貢献のガイドラインとコミットメッセージの規約については、CONTRIBUTING.md ガイドを参照してください。

開発環境の詳細なセットアップ、プロジェクト構成、ローカルテストの手順については、DEVELOPMENT.md ガイドを参照してください。

前提条件

次の内容で .env 環境ファイルを作成します。

APIFY_TOKEN="your-apify-token"

actors-mcp-server パッケージをビルドします。

pnpm run build

HTTP ストリーミング可能な MCP サーバーを起動する

Apify CLI を使って実行します。

export APIFY_TOKEN="your-apify-token"
export APIFY_META_ORIGIN=STANDBY
apify run -p

サーバーの起動後、MCP Inspector を使って、http://localhost:3001 で公開されているサーバーをデバッグできます。

標準入力/出力(stdio)MCP サーバーを起動する

次のコマンドで MCP Inspector を起動できます。

export APIFY_TOKEN="your-apify-token"
npx @modelcontextprotocol/inspector node ./dist/stdio.js

起動すると、Inspector に URL が表示されます。ブラウザーでその URL を開くと、デバッグを開始できます。

認証なしのアクセス

tools クエリパラメーターに、認証なしでの使用が明示的に許可されているツールのみが含まれている場合、ホスト型サーバーには API トークンなしでアクセスできます。 現在許可されているツール:search-actors、fetch-actor-details、search-apify-docs、fetch-apify-docs、apify-api-search、apify-api-details。 例:https://mcp.apify.com?tools=search-actors。

🐦 Canary PR リリース

Apify MCP は 2 つのリポジトリに分かれています。このリポジトリにはコア MCP ロジックがあり、プライベートリポジトリ apify-mcp-server-internal にはホスト型サーバーがあります。 両方の変更を同期する必要があります。

Canary リリースを作成するには、プルリクエストに beta ラベルを追加します。 これにより、マージ前のステージングとテスト用に、パッケージが pkg.pr.new に公開されます。 詳細はワークフローファイルを参照してください。

🐋 Docker Hub との統合

Apify MCP Server は Docker Hub でも利用でき、mcp-registry リポジトリ経由で登録されています。servers/apify-mcp-server/server.yaml のエントリーは、Docker Hub MCP レジストリによって自動的にデプロイされるはずです(デプロイ頻度は不明です)。stdio サーバーバージョンに大きな変更を加える前に、ローカルでテストして Docker のビルドが成功することを確認してください。 テストするには、source.branch を PR ブランチに変更して、task build -- apify-mcp-server を実行してください。詳細は CONTRIBUTING.md をご覧ください。

🐛 トラブルシューティング

手順に沿ったトラブルシューティングについては、Apify のドキュメントにある Claude Desktop 統合ガイドをご覧ください。

💡 制限事項

Actor の入力スキーマは、JSON Schema 規格に準拠しながら、ほとんどの MCP クライアントと互換性を持つように処理されます。処理内容は次のとおりです。

  • 説明が 500 文字を超える場合(ACTOR_MAX_DESCRIPTION_LENGTH で定義)、その範囲内の最後の完全文、または文の区切りがない場合は最後の完結した単語で切り詰められ、[Description truncated] と表示されます。
  • 列挙型フィールドは、合計文字数が 2000 文字以内(ACTOR_ENUM_MAX_LENGTH で定義)であればすべて保持されます。それを超える列挙型は省略され、代わりに説明に短い注記といくつかの値の例が記載されます。
  • JSON スキーマを適切に処理できないフレームワークとの互換性を確保するため、必須フィールドは説明の先頭に REQUIRED を付けて明示されます。
  • プロキシ設定やリクエストリストのソースなどの特殊なケースでは、正しい入力構造を確保するためにネストされたプロパティが構築されます。
  • スキーマで明示的に定義されていない場合、次の優先順位で配列の項目型が推定されます。items 内の明示的な型 > 事前入力の型 > デフォルト値の型 > エディターの型。
  • クライアントが JSON スキーマを完全にはサポートしていない場合でも表示されるよう、列挙値と例がプロパティの説明に追加されます。
  • レンタル Actorは、ホスト型 MCP サーバー(https://mcp.apify.com)でのみ利用できます。stdio 経由でサーバーをローカル実行する場合、ローカルのツールセットにすでに追加されている Actor のみ利用できます。レンタル Actor を含む Apify Store の任意の Actor を動的に検索して利用するには、ホスト型エンドポイントに接続してください。

🔒 プライバシーポリシー

このサーバーを使用すると、リクエストと Actor の入力が実行のために Apify API に送信されます。 データは、リクエストされた Actor の実行に必要な範囲を超えて第三者と共有されることはありません。 データの収集、利用、共有、保持に関する詳細は、Apify Legalをご覧ください。

🤝 貢献

バグ報告、機能リクエスト、ドキュメントの修正を歓迎します。パッチではなく、問題をお知らせください — 再現手順を含む明確な課題報告は、プルリクエストよりも役立ちます。

  • 🐛 バグを報告:issue を作成し、再現手順を記載してください。お送りいただく情報として最も役立ちます。
  • 💡 機能を提案:issue を作成してください。実装方法ではなく、問題と影響を受ける人をお知らせください。
  • 🔧 コード:メンテナーから招待された issue にのみ取り組んでください。公開されている issue は着手への招待ではありません。予告なしに送られたプルリクエストはクローズされます。
  • 📚 ドキュメント:誤字、リンク切れ、誤ったコマンドは、そのまま PR をお送りください。

AI-assisted contributionsを含むすべてのルールについては、CONTRIBUTING.mdをご覧ください。

📚 詳しく見る

コメント

MCP は初めてですか?

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

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