Unstructured API MCP Server

Official

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_workflowID で特定のワークフローを削除します。
list_jobs非構造化 API から特定のワークフローのジョブを一覧表示します。
get_job_infoジョブ ID によって特定のジョブの詳細情報を取得します。
cancel_jobID で特定のジョブを削除します。

以下は、 UNS-MCPサーバーが現在サポートしているコネクタのリストです。Unstructuredプラットフォームがサポートするソースコネクタの完全なリストはこちら、宛先コネクタのリストはこちらでご確認ください。今後、コネクタをさらに追加していく予定です。

ソース行き先
S3S3
アズールウィービエイト
Googleドライブ松ぼっくり
ワンドライブアストラDB
セールスフォースモンゴDB
シェアポイントネオ4j
Databricks ボリューム
Databricks ボリューム デルタ テーブル

コネクタを作成/更新/削除するツールを使用するには、.env ファイルで特定のコネクタの認証情報を定義する必要があります。サポート対象のコネクタのcredentialsのリストは以下のとおりです。

資格情報名説明
ANTHROPIC_API_KEYサーバーと対話するには、 minimal_clientを実行する必要があります。
AWS_KEYAWS_SECRETuns-mcpサーバー経由でS3コネクタを作成する必要があります。方法については、ドキュメントここを参照してください。
WEAVIATE_CLOUD_API_KEYWeaviateベクターDBコネクタを作成するために必要です。ドキュメントで方法を確認してください。
FIRECRAWL_API_KEYexternal/firecrawl.pyの Firecrawl ツールを使用するには、 Firecrawlにサインアップして API キーを取得する必要があります。
ASTRA_DB_APPLICATION_TOKENASTRA_DB_API_ENDPOINTuns-mcpサーバー経由でAstradbコネクタを作成する必要があります。方法についてはドキュメントを参照してください。
AZURE_CONNECTION_STRINGuns-mcpサーバー経由で Azure コネクタを作成するにはオプション 1 が必要です。方法についてはドキュメントを参照してください。
AZURE_ACCOUNT_NAME + AZURE_ACCOUNT_KEYuns-mcpサーバー経由で Azure コネクタを作成するにはオプション 2 が必要です。方法についてはドキュメントを参照してください。
AZURE_ACCOUNT_NAME + AZURE_SAS_TOKENuns-mcpサーバー経由で Azure コネクタを作成するにはオプション 3 が必要です。方法についてはドキュメントを参照してください。
NEO4J_PASSWORDuns-mcpサーバー経由でNeo4jコネクタを作成する必要があります。方法についてはドキュメントを参照してください。
MONGO_DB_CONNECTION_STRINGuns-mcpサーバー経由でMongodbコネクタを作成する必要があります。方法についてはドキュメントを参照してください。
GOOGLEDRIVE_SERVICE_ACCOUNT_KEY文字列値。元のサーバーアカウントキー(ドキュメントを参照)はJSONファイルに保存されています。ターミナルでbase64 < /path/to/google_service_account_key.jsonを実行して文字列値を取得してください。
DATABRICKS_CLIENT_IDDATABRICKS_CLIENT_SECRETuns-mcpサーバー経由でDatabricksボリューム/デルタテーブルコネクタを作成する必要があります。方法についてはドキュメントここを参照してください。
ONEDRIVE_CLIENT_IDONEDRIVE_CLIENT_CREDONEDRIVE_TENANT_IDuns-mcpサーバー経由で One Drive コネクタを作成する必要があります。方法についてはドキュメントを参照してください。
PINECONE_API_KEYuns-mcpサーバー経由でPineconeベクターDBコネクタを作成する必要があります。方法についてはドキュメントを参照してください。
SALESFORCE_CONSUMER_KEYSALESFORCE_PRIVATE_KEYuns-mcpサーバー経由で Salesforce ソース コネクタを作成する必要があります。方法についてはドキュメントを参照してください。
SHAREPOINT_CLIENT_IDSHAREPOINT_CLIENT_CREDSHAREPOINT_TENANT_IDuns-mcpサーバー経由で One Drive コネクタを作成する必要があります。方法についてはドキュメントを参照してください。
LOG_LEVELminimal_clientのログレベルを設定するために使用します。例えば、すべてを取得するには ERROR に設定します。
CONFIRM_TOOL_USEtrueに設定すると、 minimal_client各ツール呼び出しの前に実行を確認できるようになります。
DEBUG_API_REQUESTSuns_mcp/server.pyリクエストパラメータを出力してデバッグを効率化できるように true に設定します

ファイアクロールソース

Firecrawlは、MCP で 2 つの主な機能を提供する Web クロール API です。

  1. HTML コンテンツの取得: invoke_firecrawl_crawlhtmlを使用してクロールジョブを開始し、 check_crawlhtml_status使用して監視します。
  2. 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が行うため、追加のインストールは必要ありません。ただし、パッケージを直接インストールしたい場合は、以下の手順に従ってください。

uv pip install uns_mcp

Claudeデスクトップの設定

Claude Desktop との統合については、 claude_desktop_config.jsonに次のコンテンツを追加します。

**注:**ファイルは~/Library/Application Support/Claude/ディレクトリにあります。

uvxコマンドの使用:

{ "mcpServers": { "UNS_MCP": { "command": "uvx", "args": ["uns_mcp"], "env": { "UNSTRUCTURED_API_KEY": "<your-key>" } } } }

あるいは、Python パッケージを使用する:

{ "mcpServers": { "UNS_MCP": { "command": "python", "args": ["-m", "uns_mcp"], "env": { "UNSTRUCTURED_API_KEY": "<your-key>" } } } }

ソースコードの使用

  1. リポジトリをクローンします。
  2. 依存関係をインストールします:
    uv sync
  3. 非構造化APIキーを環境変数として設定します。ルートディレクトリに以下の内容の.envファイルを作成します。
    UNSTRUCTURED_API_KEY="YOUR_KEY"
    設定可能な環境変数については、 .env.templateを参照してください。

次のいずれかの方法でサーバーを実行できるようになりました。

uvx pip install -e .

Claude Desktop の設定を更新します。

{ "mcpServers": { "UNS_MCP": { "command": "uvx", "args": ["uns_mcp"] } } }

: パッケージをインストールした環境でuvx実行ファイルを指定することを忘れないでください

注意: Claude Desktop ではサポートされていません。

SSE プロトコルの場合、クライアントとサーバーを分離することでデバッグが簡単になります。

  1. 1 つのターミナルでサーバーを起動します。
    uv run python uns_mcp/server.py --host 127.0.0.1 --port 8080 # or make sse-server
  2. 別のターミナルでローカル クライアントを使用してサーバーをテストします。
    uv run python minimal_client/client.py "http://127.0.0.1:8080/sse" # or make sse-client

**注:**サービスを停止するには、最初にクライアントでCtrl+Cを使用し、次にサーバーで Ctrl+C を使用します。

Claude Desktop を stdio を使用するように設定します。

{ "mcpServers": { "UNS_MCP": { "command": "ABSOLUTE/PATH/TO/.local/bin/uv", "args": [ "--directory", "ABSOLUTE/PATH/TO/YOUR-UNS-MCP-REPO/uns_mcp", "run", "server.py" ] } } }

あるいは、ローカル クライアントを実行します。

uv run python minimal_client/client.py uns_mcp/server.py

追加のローカルクライアント構成

環境変数を使用して最小限のクライアントを構成します。

  • LOG_LEVEL="ERROR" : LLM からのデバッグ出力を抑制し、ユーザーに明確なメッセージを表示するように設定します。
  • CONFIRM_TOOL_USE='false' : 実行前のツール使用確認を無効にします。LLMは高負荷のワークフローを実行したり、データを削除したりする可能性があるため、特に開発中は注意して使用してください。

デバッグツール

Anthropicは、MCPサーバーのデバッグ/テストに使用できるMCP Inspectorツールを提供しています。以下のコマンドを実行するとデバッグUIが起動します。そこから、左ペインに環境変数(ローカル環境を指す)を追加できます。環境変数には、ご自身のAPIキーを含めてください。 toolsに移動すると、MCPサーバーに追加した機能をテストできます。

mcp dev uns_mcp/server.py

UnstructuredClientへのリクエスト呼び出しパラメータをログに記録する必要がある場合は、環境変数DEBUG_API_REQUESTS=falseを設定してください。ログはunstructured-client-{date}.log形式のファイルに保存され、 UnstructuredClient関数へのリクエスト呼び出しパラメータをデバッグするために使用できます。

最小限のクライアントにターミナルアクセスを追加する

@wonderwhy-er/desktop-commanderを使用して、最小限のクライアントにターミナルアクセスを追加します。これは MCP ファイルシステムサーバー上に構築されています。クライアント(LLM も)がプライベートファイルにアクセスできるようになるため、ご注意ください。

パッケージをインストールするには、次のコマンドを実行します。

npx @wonderwhy-er/desktop-commander setup

次に、追加のパラメータを使用してクライアントを起動します。

uv run python minimal_client/client.py "http://127.0.0.1:8080/sse" "@wonderwhy-er/desktop-commander" # or make sse-client-terminal

ツールのサブセットを使用する

クライアントがツールのサブセットのみの使用をサポートしている場合は、次の点に注意してください。

  • 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.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

非構造化 API とのやり取りを可能にし、ソース、宛先、ワークフローを一覧表示、作成、更新、管理するためのツールを提供する MCP サーバー実装。

  1. Available Tools
    1. Firecrawl Source
  2. Installation & Configuration
    1. Prerequisites
      1. Using uv (Recommended)
      2. Using Source Code
    2. Additional Local Client Configuration
      1. Debugging tools
    3. Add terminal access to minimal client
      1. Using subset of tools
        1. Known issues
          1. CHANGELOG.md
            1. Troubleshooting
              ID: 56f7310rbq