hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
The MCP server provides integration with Docker, allowing users to run the server in a containerized environment and integrate it with existing Crawlab Docker Compose setups.
The MCP server documentation uses Mermaid for architecture diagrams, illustrating the communication flow between components.
The MCP server integrates with OpenAI as an LLM provider, allowing AI applications to interact with Crawlab through the MCP protocol. The architecture shows OpenAI as one of the supported LLM providers for processing natural language queries.
Crawlab MCP サーバー
これは Crawlab のモデル コンテキスト プロトコル (MCP) サーバーであり、AI アプリケーションが Crawlab の機能と対話できるようにします。
概要
MCP サーバーは、AI アプリケーションが Crawlab の機能にアクセスするための標準化された方法を提供します。これには以下が含まれます。
- スパイダー管理(作成、読み取り、更新、削除)
- タスク管理(実行、キャンセル、再開)
- ファイル管理(読み取り、書き込み)
- リソース アクセス (スパイダー、タスク)
建築
MCP サーバー/クライアント アーキテクチャは、AI アプリケーションと Crawlab 間の通信を容易にします。
コミュニケーションフロー
- ユーザークエリ: ユーザーはMCPクライアントに自然言語クエリを送信します。
- LLM処理: クライアントはクエリをLLMプロバイダー(例:Claude、OpenAI)に転送します。
- ツール選択: LLMは必要なツールを識別し、ツール呼び出しを生成します
- ツール実行: クライアントはツール呼び出しをMCPサーバーに送信します。
- APIインタラクション: サーバーは対応するCrawlab APIリクエストを実行します。
- レスポンス生成: 結果はサーバーを経由してクライアントへ、そしてLLMへ返されます。
- ユーザーの応答: クライアントは最終的な人間が読める応答をユーザーに配信します。
インストールと使用方法
オプション1: Pythonパッケージとしてインストールする
便利な CLI を提供する Python パッケージとして MCP サーバーをインストールできます。
インストール後、CLI を使用できます。
オプション2: ローカルで実行
前提条件
- Python 3.8以上
- Crawlab インスタンスが実行中でありアクセス可能
- CrawlabからのAPIトークン
構成
.env.example
ファイルを.env
にコピーします。Copy- Crawlab API の詳細を使用して
.env
ファイルを編集します。Copy
ローカルで実行
- 依存関係をインストールします:Copy
- サーバーを実行します。Copy
Dockerで実行する
- Docker イメージをビルドします。Copy
- コンテナを実行します。Copy
Docker Composeとの統合
既存の Crawlab Docker Compose セットアップに MCP サーバーを追加するには、次のサービスをdocker-compose.yml
に追加します。
AIアプリケーションでの使用
MCPサーバーは、AIアプリケーションが自然言語を介してCrawlabと対話することを可能にします。上記のアーキテクチャ図に従って、MCPシステムの使用方法は以下のとおりです。
接続の設定
- MCPサーバーを起動します。MCPサーバーが実行中でアクセス可能であることを確認します。
- AIクライアントを構成する: AIアプリケーションをMCPサーバーに接続する
例: Claude Desktop での使用
- クロードデスクトップを開く
- 設定 > MCPサーバーへ移動
- MCP サーバーの URL (例:
http://localhost:8000
) を使用して新しいサーバーを追加します。 - クロードとの会話では、自然言語でやりたいことを説明することで、Crawlabの機能を使用できるようになりました。
やり取りの例
私たちのアーキテクチャに基づいた、システムとのやり取りの例を以下に示します。
スパイダーを作成する:
タスクを実行する:
利用可能なコマンド
次のような自然言語コマンドを使用してシステムと対話できます。
- 「私のクモをすべてリストする」
- 「これらの仕様で新しいスパイダーを作成します...」
- 「Xという名のクモのコードを見せてください」
- 「このコードを使用して、Spider X の main.py ファイルを更新します...」
- 「スパイダーXを実行し、完了したら通知してください」
- 「スパイダーXの最後の実行結果を見せてください」
利用可能なリソースとツール
これらは、自然言語によるやりとりを可能にする基礎となるツールです。
リソース
spiders
: すべてのクモを一覧表示tasks
: すべてのタスクを一覧表示する
ツール
クモ管理
get_spider
: 特定のスパイダーの詳細を取得するcreate_spider
: 新しいスパイダーを作成するupdate_spider
: 既存のスパイダーを更新するdelete_spider
: スパイダーを削除する
タスク管理
get_task
: 特定のタスクの詳細を取得するrun_spider
: スパイダーを実行するcancel_task
: 実行中のタスクをキャンセルするrestart_task
: タスクを再開するget_task_logs
: タスクのログを取得する
ファイル管理
get_spider_files
: スパイダーのファイルを一覧表示するget_spider_file
: 特定のファイルの内容を取得するsave_spider_file
: コンテンツをファイルに保存する
This server cannot be installed
AI アプリケーションが自然言語を通じて Crawlab の機能と対話し、スパイダー管理、タスク実行、ファイル操作を実行できるようにするモデル コンテキスト プロトコル サーバー。
- Overview
- Architecture
- Installation and Usage
- Integration with Docker Compose
- Using with AI Applications
- Available Resources and Tools