remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Used for loading environment variables from a .env file, specifically for storing and accessing the Unstructured API key
Serves as the implementation language for the MCP server, with specific dependencies including unstructured-client for API interaction
非構造化API MCPサーバー
非構造化APIと連携するためのMCPサーバー実装。このサーバーは、ソースとワークフローを一覧表示するツールを提供します。
利用可能なツール
道具 | 説明 |
---|---|
list_sources | 非構造化 API から利用可能なソースを一覧表示します。 |
get_source_info | 特定のソース コネクタに関する詳細情報を取得します。 |
create_source_connector | ソースコネクタを作成します。 |
update_source_connector | パラメータによって既存のソース コネクタを更新します。 |
delete_source_connector | ソース ID によってソース コネクタを削除します。 |
list_destinations | 非構造化 API から利用可能な宛先を一覧表示します。 |
get_destination_info | 特定の宛先コネクタに関する詳細情報を取得する |
create_destination_connector | パラメータによって宛先コネクタを作成します。 |
update_destination_connector | 既存の宛先コネクタを宛先 ID で更新します。 |
delete_destination_connector | 宛先 ID によって宛先コネクタを削除します。 |
list_workflows | 非構造化 API からのワークフローを一覧表示します。 |
get_workflow_info | 特定のワークフローに関する詳細情報を取得します。 |
create_workflow | ソース、宛先 ID などを使用して新しいワークフローを作成します。 |
run_workflow | ワークフローIDで特定のワークフローを実行する |
update_workflow | パラメータによって既存のワークフローを更新します。 |
delete_workflow | ID で特定のワークフローを削除します。 |
list_jobs | 非構造化 API から特定のワークフローのジョブを一覧表示します。 |
get_job_info | ジョブ ID によって特定のジョブの詳細情報を取得します。 |
cancel_job | ID で特定のジョブを削除します。 |
以下は、 UNS-MCP
サーバーが現在サポートしているコネクタのリストです。Unstructuredプラットフォームがサポートするソースコネクタの完全なリストはこちら、宛先コネクタのリストはこちらでご確認ください。今後、コネクタをさらに追加していく予定です。
ソース | 行き先 |
---|---|
S3 | S3 |
アズール | ウィービエイト |
Googleドライブ | 松ぼっくり |
ワンドライブ | アストラDB |
セールスフォース | モンゴDB |
シェアポイント | ネオ4j |
Databricks ボリューム | |
Databricks ボリューム デルタ テーブル |
コネクタを作成/更新/削除するツールを使用するには、.env ファイルで特定のコネクタの認証情報を定義する必要があります。サポート対象のコネクタのcredentials
のリストは以下のとおりです。
資格情報名 | 説明 |
---|---|
ANTHROPIC_API_KEY | サーバーと対話するには、 minimal_client を実行する必要があります。 |
AWS_KEY 、 AWS_SECRET | uns-mcp サーバー経由でS3コネクタを作成する必要があります。方法については、ドキュメントとここを参照してください。 |
WEAVIATE_CLOUD_API_KEY | WeaviateベクターDBコネクタを作成するために必要です。ドキュメントで方法を確認してください。 |
FIRECRAWL_API_KEY | external/firecrawl.py の Firecrawl ツールを使用するには、 Firecrawlにサインアップして API キーを取得する必要があります。 |
ASTRA_DB_APPLICATION_TOKEN 、 ASTRA_DB_API_ENDPOINT | uns-mcp サーバー経由でAstradbコネクタを作成する必要があります。方法についてはドキュメントを参照してください。 |
AZURE_CONNECTION_STRING | uns-mcp サーバー経由で Azure コネクタを作成するにはオプション 1 が必要です。方法についてはドキュメントを参照してください。 |
AZURE_ACCOUNT_NAME + AZURE_ACCOUNT_KEY | uns-mcp サーバー経由で Azure コネクタを作成するにはオプション 2 が必要です。方法についてはドキュメントを参照してください。 |
AZURE_ACCOUNT_NAME + AZURE_SAS_TOKEN | uns-mcp サーバー経由で Azure コネクタを作成するにはオプション 3 が必要です。方法についてはドキュメントを参照してください。 |
NEO4J_PASSWORD | uns-mcp サーバー経由でNeo4jコネクタを作成する必要があります。方法についてはドキュメントを参照してください。 |
MONGO_DB_CONNECTION_STRING | uns-mcp サーバー経由でMongodbコネクタを作成する必要があります。方法についてはドキュメントを参照してください。 |
GOOGLEDRIVE_SERVICE_ACCOUNT_KEY | 文字列値。元のサーバーアカウントキー(ドキュメントを参照)はJSONファイルに保存されています。ターミナルでbase64 < /path/to/google_service_account_key.json を実行して文字列値を取得してください。 |
DATABRICKS_CLIENT_ID 、 DATABRICKS_CLIENT_SECRET | uns-mcp サーバー経由でDatabricksボリューム/デルタテーブルコネクタを作成する必要があります。方法についてはドキュメントとここを参照してください。 |
ONEDRIVE_CLIENT_ID 、 ONEDRIVE_CLIENT_CRED 、 ONEDRIVE_TENANT_ID | uns-mcp サーバー経由で One Drive コネクタを作成する必要があります。方法についてはドキュメントを参照してください。 |
PINECONE_API_KEY | uns-mcp サーバー経由でPineconeベクターDBコネクタを作成する必要があります。方法についてはドキュメントを参照してください。 |
SALESFORCE_CONSUMER_KEY 、 SALESFORCE_PRIVATE_KEY | uns-mcp サーバー経由で Salesforce ソース コネクタを作成する必要があります。方法についてはドキュメントを参照してください。 |
SHAREPOINT_CLIENT_ID 、 SHAREPOINT_CLIENT_CRED 、 SHAREPOINT_TENANT_ID | uns-mcp サーバー経由で One Drive コネクタを作成する必要があります。方法についてはドキュメントを参照してください。 |
LOG_LEVEL | minimal_client のログレベルを設定するために使用します。例えば、すべてを取得するには ERROR に設定します。 |
CONFIRM_TOOL_USE | trueに設定すると、 minimal_client 各ツール呼び出しの前に実行を確認できるようになります。 |
DEBUG_API_REQUESTS | uns_mcp/server.py リクエストパラメータを出力してデバッグを効率化できるように true に設定します |
ファイアクロールソース
Firecrawlは、MCP で 2 つの主な機能を提供する Web クロール API です。
- HTML コンテンツの取得:
invoke_firecrawl_crawlhtml
を使用してクロールジョブを開始し、check_crawlhtml_status
使用して監視します。 - LLM 最適化テキスト生成:
invoke_firecrawl_llmtxt
を使用してテキストを生成し、check_llmtxt_status
使用して結果を取得します。
Firecrawl の仕組み:
Web クロールのプロセス:
- 指定されたURLから開始し、それを分析してリンクを識別します
- サイトマップが利用可能な場合はそれを使用し、そうでない場合はウェブサイト上のリンクに従います
- 各リンクを再帰的に走査してすべてのサブページを検出します
- 訪問したすべてのページからコンテンツを収集し、JavaScript レンダリングとレート制限を処理します。
- 必要に応じて、
cancel_crawlhtml_job
でジョブをキャンセルできます。 - すべての情報を生の HTML に抽出する必要がある場合は、これを使用してください。Unstructured のワークフローにより、非常にきれいにクリーンアップされます :smile:
LLMテキスト生成:
- クロール後、クロールしたページからクリーンで意味のあるテキストコンテンツを抽出します
- 大規模言語モデル向けに特別にフォーマットされた最適化されたテキスト形式を生成します
- 結果は指定されたS3の場所に自動的にアップロードされます
- 注: LLMテキスト生成ジョブは、開始後はキャンセルできません。cancel_llmtxt_job関数は一貫性を
cancel_llmtxt_job
ために提供されていますが、現在Firecrawl APIではサポートされていません。
注意: これらの関数を使用するには、 FIRECRAWL_API_KEY
環境変数を設定する必要があります。
インストールと設定
このガイドでは、Python 3.12 とuv
ツールを使用して UNS_MCP サーバーをセットアップおよび構成するための手順を段階的に説明します。
前提条件
- Python 3.12以上
- 環境管理のための
uv
- UnstructuredのAPIキー。こちらからサインアップしてAPIキーを取得できます。
uv
の使用(推奨)
uvx
を使用する場合、実行はuvxが行うため、追加のインストールは必要ありません。ただし、パッケージを直接インストールしたい場合は、以下の手順に従ってください。
Claudeデスクトップの設定
Claude Desktop との統合については、 claude_desktop_config.json
に次のコンテンツを追加します。
**注:**ファイルは~/Library/Application Support/Claude/
ディレクトリにあります。
uvx
コマンドの使用:
あるいは、Python パッケージを使用する:
ソースコードの使用
- リポジトリをクローンします。
- 依存関係をインストールします:Copy
- 非構造化APIキーを環境変数として設定します。ルートディレクトリに以下の内容の.envファイルを作成します。設定可能な環境変数については、Copy
.env.template
を参照してください。
次のいずれかの方法でサーバーを実行できるようになりました。
Claude Desktop の設定を更新します。
注: パッケージをインストールした環境でuvx実行ファイルを指定することを忘れないでください
注意: Claude Desktop ではサポートされていません。
SSE プロトコルの場合、クライアントとサーバーを分離することでデバッグが簡単になります。
- 1 つのターミナルでサーバーを起動します。Copy
- 別のターミナルでローカル クライアントを使用してサーバーをテストします。Copy
**注:**サービスを停止するには、最初にクライアントでCtrl+C
を使用し、次にサーバーで Ctrl+C を使用します。
Claude Desktop を stdio を使用するように設定します。
あるいは、ローカル クライアントを実行します。
追加のローカルクライアント構成
環境変数を使用して最小限のクライアントを構成します。
LOG_LEVEL="ERROR"
: LLM からのデバッグ出力を抑制し、ユーザーに明確なメッセージを表示するように設定します。CONFIRM_TOOL_USE='false'
: 実行前のツール使用確認を無効にします。LLMは高負荷のワークフローを実行したり、データを削除したりする可能性があるため、特に開発中は注意して使用してください。
デバッグツール
Anthropicは、MCPサーバーのデバッグ/テストに使用できるMCP Inspector
ツールを提供しています。以下のコマンドを実行するとデバッグUIが起動します。そこから、左ペインに環境変数(ローカル環境を指す)を追加できます。環境変数には、ご自身のAPIキーを含めてください。 tools
に移動すると、MCPサーバーに追加した機能をテストできます。
UnstructuredClient
へのリクエスト呼び出しパラメータをログに記録する必要がある場合は、環境変数DEBUG_API_REQUESTS=false
を設定してください。ログはunstructured-client-{date}.log
形式のファイルに保存され、 UnstructuredClient
関数へのリクエスト呼び出しパラメータをデバッグするために使用できます。
最小限のクライアントにターミナルアクセスを追加する
@wonderwhy-er/desktop-commanderを使用して、最小限のクライアントにターミナルアクセスを追加します。これは MCP ファイルシステムサーバー上に構築されています。クライアント(LLM も)がプライベートファイルにアクセスできるようになるため、ご注意ください。
パッケージをインストールするには、次のコマンドを実行します。
次に、追加のパラメータを使用してクライアントを起動します。
ツールのサブセットを使用する
クライアントがツールのサブセットのみの使用をサポートしている場合は、次の点に注意してください。
update_workflow
ツールには、カスタム ノードの作成方法と構成方法に関する詳細な説明が含まれているため、create_workflow
ツールと一緒にコンテキストにロードする必要があります。
既知の問題
update_workflow
- ユーザーが指定するか、get_workflow_info
ツールを呼び出すことによって、更新するワークフローの構成をコンテキストに含める必要があります。このツールはpatch
適用ツールとして機能しないため、ワークフロー構成を完全に置き換えます。
変更ログ.md
新たに開発された機能/修正/拡張機能はすべて CHANGELOG.md に追加されます。安定バージョンに移行する前に、0.xx-dev プレリリース形式が推奨されます。
トラブルシューティング
Error: spawn <command> ENOENT
問題が発生した場合は、<command>
がインストールされていないか、PATH に表示されていないことを意味します。- 必ずインストールして PATH に追加してください。
- または、設定の
command
フィールドにコマンドへの絶対パスを指定します。例えば、python``/opt/miniconda3/bin/python
に置き換えます。
You must be authenticated.
Tools
非構造化 API とのやり取りを可能にし、ソース、宛先、ワークフローを一覧表示、作成、更新、管理するためのツールを提供する MCP サーバー実装。
- Available Tools
- Installation & Configuration
- Prerequisites
- Additional Local Client Configuration
- Add terminal access to minimal client
- Using subset of tools
- Known issues
- CHANGELOG.md
- Troubleshooting