Skip to main content
Glama

Unstructured API MCP Server

Official

Unstrukturierter API-MCP-Server

Eine MCP-Serverimplementierung für die Interaktion mit der unstrukturierten API. Dieser Server bietet Tools zum Auflisten von Quellen und Workflows.

Verfügbare Tools

Werkzeug

Beschreibung

list_sources

Listet verfügbare Quellen aus der unstrukturierten API auf.

get_source_info

Erhalten Sie detaillierte Informationen zu einem bestimmten Quell-Connector.

create_source_connector

Erstellen Sie einen Quellkonnektor.)

update_source_connector

Aktualisieren Sie einen vorhandenen Quellkonnektor durch Parameter.

delete_source_connector

Löschen Sie einen Quellkonnektor anhand der Quell-ID.

list_destinations

Listet verfügbare Ziele aus der unstrukturierten API auf.

get_destination_info

Erhalten Sie detaillierte Informationen zu einem bestimmten Ziel-Connector

create_destination_connector

Erstellen Sie einen Zielkonnektor anhand von Parametern.

update_destination_connector

Aktualisieren Sie einen vorhandenen Ziel-Connector anhand der Ziel-ID.

delete_destination_connector

Löschen Sie einen Zielkonnektor anhand der Ziel-ID.

list_workflows

Listet Workflows aus der unstrukturierten API auf.

get_workflow_info

Erhalten Sie detaillierte Informationen zu einem bestimmten Workflow.

create_workflow

Erstellen Sie einen neuen Workflow mit Quell-, Ziel-ID usw.

run_workflow

Führen Sie einen bestimmten Workflow mit der Workflow-ID aus

update_workflow

Aktualisieren Sie einen vorhandenen Workflow anhand von Parametern.

delete_workflow

Löschen Sie einen bestimmten Workflow nach ID.

list_jobs

Listet Jobs für einen bestimmten Workflow aus der unstrukturierten API auf.

get_job_info

Erhalten Sie anhand der Job-ID detaillierte Informationen zu einem bestimmten Job.

cancel_job

Löschen Sie einen bestimmten Job anhand der ID.

list_workflows_with_finished_jobs

Listet alle Workflows auf, die über abgeschlossene Aufträge verfügen, zusammen mit Informationen zu Quell- und Zieldetails.

Nachfolgend finden Sie eine Liste der Konnektoren, die der UNS-MCP -Server aktuell unterstützt. Die vollständige Liste der von der Unstructured-Plattform unterstützten Quellkonnektoren finden Sie hier und die Zielkonnektoren hier . Wir planen, weitere hinzuzufügen!

Quelle

Ziel

S3

S3

Azurblau

Weaviate

Google Drive

Tannenzapfen

OneDrive

AstraDB

Salesforce

MongoDB

SharePoint

Neo4j

Databricks-Volumes

Deltatabelle für Databricks-Volumes

Um das Tool zum Erstellen/Aktualisieren/Löschen eines Connectors verwenden zu können, müssen die Anmeldeinformationen für diesen Connector in Ihrer .env-Datei definiert sein. Nachfolgend finden Sie die credentials für die von uns unterstützten Connectors:

Anmeldeinformationsname

Beschreibung

ANTHROPIC_API_KEY

erforderlich, um den

minimal_client

auszuführen und mit unserem Server zu interagieren.

AWS_KEY

,

AWS_SECRET

erforderlich, um einen S3-Connector über

uns-mcp

-Server zu erstellen. Weitere Informationen finden Sie in

der Dokumentation

und

hier

WEAVIATE_CLOUD_API_KEY

erforderlich, um den Weaviate-Vektor-DB-Connector zu erstellen. Weitere Informationen finden Sie in

der Dokumentation.

FIRECRAWL_API_KEY

erforderlich, um Firecrawl-Tools in

external/firecrawl.py

zu verwenden, sich bei

Firecrawl

anzumelden und einen API-Schlüssel zu erhalten.

ASTRA_DB_APPLICATION_TOKEN

,

ASTRA_DB_API_ENDPOINT

erforderlich, um einen Astradb-Connector über

uns-mcp

-Server zu erstellen. Weitere Informationen finden Sie in

der Dokumentation

AZURE_CONNECTION_STRING

erforderliche Option 1 zum Erstellen eines Azure-Connectors über

uns-mcp

Server, siehe

Dokumentation

AZURE_ACCOUNT_NAME

+

AZURE_ACCOUNT_KEY

erforderliche Option 2 zum Erstellen eines Azure-Connectors über

uns-mcp

Server, siehe

Dokumentation

AZURE_ACCOUNT_NAME

+

AZURE_SAS_TOKEN

erforderliche Option 3 zum Erstellen eines Azure-Connectors über

uns-mcp

Server, siehe

Dokumentation

NEO4J_PASSWORD

erforderlich, um einen Neo4j-Connector über

uns-mcp

-Server zu erstellen. Weitere Informationen finden Sie in

der Dokumentation

MONGO_DB_CONNECTION_STRING

erforderlich, um einen MongoDB-Connector über

uns-mcp

-Server zu erstellen. Weitere Informationen finden Sie in

der Dokumentation

GOOGLEDRIVE_SERVICE_ACCOUNT_KEY

ein String-Wert. Der ursprüngliche Server-Kontoschlüssel (siehe

Dokumentation

) befindet sich in einer JSON-Datei. Führen Sie

base64 < /path/to/google_service_account_key.json

im Terminal aus, um den String-Wert abzurufen.

DATABRICKS_CLIENT_ID

,

DATABRICKS_CLIENT_SECRET

erforderlich, um einen Databricks-Volume-/Delta-Tabellen-Connector über

uns-mcp

Server zu erstellen. Weitere Informationen finden Sie in

der Dokumentation

und

hier

ONEDRIVE_CLIENT_ID

,

ONEDRIVE_CLIENT_CRED

,

ONEDRIVE_TENANT_ID

erforderlich, um einen One Drive-Connector über

uns-mcp

-Server zu erstellen. Weitere Informationen finden Sie in

der Dokumentation

PINECONE_API_KEY

erforderlich, um einen Pinecone-Vektor-DB-Connector über

uns-mcp

Server zu erstellen, siehe

Dokumentation

SALESFORCE_CONSUMER_KEY

,

SALESFORCE_PRIVATE_KEY

erforderlich, um den Salesforce-Quellconnector über

uns-mcp

-Server zu erstellen. Weitere Informationen finden Sie in

der Dokumentation

SHAREPOINT_CLIENT_ID

,

SHAREPOINT_CLIENT_CRED

,

SHAREPOINT_TENANT_ID

erforderlich, um einen One Drive-Connector über

uns-mcp

-Server zu erstellen. Weitere Informationen finden Sie in

der Dokumentation

LOG_LEVEL

Wird verwendet, um die Protokollierungsebene für unseren

minimal_client

festzulegen, z. B. auf ERROR, um alles zu erhalten

CONFIRM_TOOL_USE

auf „true“ setzen, damit

minimal_client

die Ausführung vor jedem Tool-Aufruf bestätigen kann

DEBUG_API_REQUESTS

auf true setzen, damit

uns_mcp/server.py

Anforderungsparameter für ein besseres Debugging ausgeben kann

Firecrawl-Quelle

Firecrawl ist eine Web-Crawling-API, die in unserem MCP zwei Hauptfunktionen bietet:

  1. Abrufen von HTML-Inhalten : Verwenden Sie invoke_firecrawl_crawlhtml , um Crawl-Jobs zu starten, und check_crawlhtml_status um sie zu überwachen

  2. LLM-optimierte Textgenerierung : Verwenden von invoke_firecrawl_llmtxt zum Generieren von Text und check_llmtxt_status zum Abrufen von Ergebnissen

So funktioniert Firecrawl:

Web-Crawling-Prozess:

  • Beginnt mit einer angegebenen URL und analysiert diese, um Links zu identifizieren

  • Verwendet die Sitemap, sofern verfügbar; folgt andernfalls den auf der Website gefundenen Links.

  • Durchläuft rekursiv jeden Link, um alle Unterseiten zu entdecken

  • Sammelt Inhalte von jeder besuchten Seite und kümmert sich um JavaScript-Rendering und Ratenbegrenzungen

  • Jobs können bei Bedarf mit cancel_crawlhtml_job abgebrochen werden

  • Verwenden Sie dies, wenn Sie alle Informationen in reines HTML extrahieren möchten. Der Workflow von Unstructured bereinigt das wirklich gut :smile:

LLM-Textgenerierung:

  • Extrahiert nach dem Crawlen sauberen, aussagekräftigen Textinhalt aus den gecrawlten Seiten

  • Generiert optimierte Textformate, die speziell für große Sprachmodelle formatiert sind

  • Die Ergebnisse werden automatisch an den angegebenen S3-Speicherort hochgeladen.

  • Hinweis: LLM-Textgenerierungsaufträge können nach dem Start nicht mehr abgebrochen werden. Die Funktion cancel_llmtxt_job dient der Konsistenz, wird aber derzeit nicht von der Firecrawl-API unterstützt.

Hinweis: Um diese Funktionen zu verwenden, muss eine Umgebungsvariable FIRECRAWL_API_KEY festgelegt werden.

Installation und Konfiguration

Dieses Handbuch enthält schrittweise Anweisungen zum Einrichten und Konfigurieren des UNS_MCP-Servers mit Python 3.12 und dem uv Tool.

Voraussetzungen

  • Python 3.12+

  • uv für Umweltmanagement

  • Ein API-Schlüssel von Unstructured. Sie können sich hier anmelden und Ihren API-Schlüssel erhalten.

Verwendung von uv (empfohlen)

Bei Verwendung von uvx ist keine zusätzliche Installation erforderlich, da uvx die Ausführung übernimmt. Wenn Sie das Paket jedoch lieber direkt installieren möchten:

uv pip install uns_mcp

Claude Desktop konfigurieren

Fügen Sie zur Integration mit Claude Desktop den folgenden Inhalt zu Ihrer claude_desktop_config.json hinzu:

Hinweis: Die Datei befindet sich im Verzeichnis ~/Library/Application Support/Claude/ .

Verwenden

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

Alternativ können Sie das Python-Paket verwenden:

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

Verwenden von Quellcode

  1. Klonen Sie das Repository.

  2. Installieren Sie Abhängigkeiten:

    uv sync
  3. Legen Sie Ihren unstrukturierten API-Schlüssel als Umgebungsvariable fest. Erstellen Sie im Stammverzeichnis eine .env-Datei mit folgendem Inhalt:

    UNSTRUCTURED_API_KEY="YOUR_KEY"

    Die konfigurierbaren Umgebungsvariablen finden Sie unter .env.template .

Sie können den Server jetzt mit einer der folgenden Methoden ausführen:

uvx pip install -e .

Aktualisieren Sie Ihre Claude Desktop-Konfiguration:

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

Hinweis : Denken Sie daran, auf die ausführbare Datei uvx in der Umgebung zu verweisen, in der Sie das Paket installiert haben

Hinweis: Wird von Claude Desktop nicht unterstützt.

Beim SSE-Protokoll können Sie das Debuggen einfacher durchführen, indem Sie Client und Server entkoppeln:

  1. Starten Sie den Server in einem Terminal:

    uv run python uns_mcp/server.py --host 127.0.0.1 --port 8080 # or make sse-server
  2. Testen Sie den Server mit einem lokalen Client in einem anderen Terminal:

    uv run python minimal_client/client.py "http://127.0.0.1:8080/sse" # or make sse-client

Hinweis: Um die Dienste zu stoppen, verwenden Sie zuerst Ctrl+C auf dem Client und dann auf dem Server.

Konfigurieren Sie Claude Desktop für die Verwendung von 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" ] } } }

Alternativ können Sie den lokalen Client ausführen:

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

Zusätzliche lokale Clientkonfiguration

Konfigurieren Sie den Minimal-Client mithilfe von Umgebungsvariablen:

  • LOG_LEVEL="ERROR" : Wird so eingestellt, dass Debug-Ausgaben vom LLM unterdrückt werden und den Benutzern klare Meldungen angezeigt werden.

  • CONFIRM_TOOL_USE='false' : Deaktiviert die Bestätigung der Tool-Nutzung vor der Ausführung. Verwenden Sie diese Option mit Vorsicht , insbesondere während der Entwicklung, da LLM möglicherweise aufwändige Workflows ausführt oder Daten löscht.

Debugging-Tools

Anthropic bietet das Tool MCP Inspector zum Debuggen/Testen Ihres MCP-Servers. Führen Sie den folgenden Befehl aus, um eine Debug-Oberfläche zu öffnen. Von dort aus können Sie im linken Bereich Umgebungsvariablen hinzufügen (die auf Ihre lokale Umgebung verweisen). Fügen Sie dort Ihren persönlichen API-Schlüssel als Umgebungsvariable ein. Unter tools können Sie die Funktionen testen, die Sie dem MCP-Server hinzufügen.

mcp dev uns_mcp/server.py

Wenn Sie Anforderungsaufrufparameter für UnstructuredClient protokollieren müssen, setzen Sie die Umgebungsvariable DEBUG_API_REQUESTS=false . Die Protokolle werden in einer Datei im Format unstructured-client-{date}.log gespeichert, die zum Debuggen von Anforderungsaufrufparametern für UnstructuredClient -Funktionen untersucht werden kann.

Terminalzugriff zum Minimal-Client hinzufügen

Wir verwenden @wonderwhy-er/desktop-commander , um dem Minimal-Client Terminalzugriff hinzuzufügen. Er basiert auf dem MCP-Dateisystemserver. Vorsicht: Der Client (auch LLM) hat nun Zugriff auf private Dateien.

Führen Sie den folgenden Befehl aus, um das Paket zu installieren:

npx @wonderwhy-er/desktop-commander setup

Starten Sie dann den Client mit zusätzlichen Parametern:

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

Verwenden einer Teilmenge von Tools

Wenn Ihr Client nur die Verwendung einer Teilmenge von Tools unterstützt, sollten Sie Folgendes beachten:

  • Das Tool update_workflow muss im Kontext zusammen mit dem Tool create_workflow geladen werden, da es eine detaillierte Beschreibung zum Erstellen und Konfigurieren eines benutzerdefinierten Knotens enthält.

Bekannte Probleme

  • update_workflow – muss die Konfiguration des Workflows im Kontext haben, den es aktualisiert, entweder indem es vom Benutzer bereitgestellt wird oder indem das Tool get_workflow_info aufgerufen wird, da dieses Tool nicht als patch Applier funktioniert, sondern die Workflow-Konfiguration vollständig ersetzt.

ÄNDERUNGSPROTOKOLL.md

Alle neu entwickelten Funktionen/Fixes/Erweiterungen werden zu CHANGELOG.md hinzugefügt. Bevor wir zu einer stabilen Version übergehen, wird das Vorabversionsformat 0.xx-dev bevorzugt.

Fehlerbehebung

  • Wenn Sie auf Probleme mit Error: spawn <command> ENOENT stoßen, bedeutet dies, dass <command> nicht installiert ist oder in Ihrem PATH nicht sichtbar ist:

    • Stellen Sie sicher, dass Sie es installieren und zu Ihrem PATH hinzufügen.

    • oder geben Sie den absoluten Pfad zum Befehl im command Ihrer Konfiguration an. Ersetzen Sie beispielsweise python durch /opt/miniconda3/bin/python

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

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.

Eine MCP-Serverimplementierung, die die Interaktion mit der unstrukturierten API ermöglicht und Tools zum Auflisten, Erstellen, Aktualisieren und Verwalten von Quellen, Zielen und Workflows bereitstellt.

  1. Verfügbare Tools
    1. Firecrawl-Quelle
  2. Installation und Konfiguration
    1. Voraussetzungen
      1. Verwendung von uv (empfohlen)
      2. Verwenden von Quellcode
    2. Zusätzliche lokale Clientkonfiguration
      1. Debugging-Tools
    3. Terminalzugriff zum Minimal-Client hinzufügen
      1. Verwenden einer Teilmenge von Tools
        1. Bekannte Probleme
          1. ÄNDERUNGSPROTOKOLL.md
            1. Fehlerbehebung

              Related MCP Servers

              • -
                security
                A
                license
                -
                quality
                A Python-based MCP server that integrates OpenAPI-described REST APIs into MCP workflows, enabling dynamic exposure of API endpoints as MCP tools.
                Last updated -
                119
                MIT License
                • Linux
                • Apple
              • -
                security
                F
                license
                -
                quality
                This is an MCP server that facilitates building tools for interacting with various APIs and workflows, supporting Python-based development with potential for customizable prompts and user configurations.
                Last updated -
              • -
                security
                A
                license
                -
                quality
                An MCP server that exposes HTTP methods defined in an OpenAPI specification as tools, enabling interaction with APIs via the Model Context Protocol.
                Last updated -
                8
                MIT License
              • A
                security
                A
                license
                A
                quality
                An MCP server implementation built to interact with Confluent Kafka and Confluent Cloud REST APIs.
                Last updated -
                24
                20
                105
                MIT License
                • Apple

              View all related MCP servers

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/Unstructured-IO/UNS-MCP'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server