Unstructured
आधिकारिकअनस्ट्रक्चर्ड प्लेटफॉर्म में अपने असंरचित डेटा प्रोसेसिंग वर्कफ़्लो को सेट अप और इंटरैक्ट करें।
Unstructured MCP के साथ आप क्या कर सकते हैं?
- उपलब्ध स्रोतों और गंतव्यों की सूची बनाएं — यह देखने के लिए
list_sourcesऔरlist_destinationsका उपयोग करें कि आपके Unstructured खाते में कौन से कनेक्टर कॉन्फ़िगर किए गए हैं। - स्रोत और गंतव्य कनेक्टर प्रबंधित करें —
create_source_connector,update_destination_connectorऔर संबंधित टूल के माध्यम से कनेक्टर बनाएं, अपडेट करें या हटाएं। - इंजेशन वर्कफ़्लो चलाएँ और निगरानी करें —
run_workflowके साथ एक वर्कफ़्लो ट्रिगर करें, फिरlist_jobsऔरget_job_infoका उपयोग करके उसके कार्यों को ट्रैक करें। - पूर्ण कार्यों वाले वर्कफ़्लो खोजें — उन वर्कफ़्लो की पहचान करने के लिए
list_workflows_with_finished_jobsको कॉल करें जिन्होंने प्रसंस्करण पूरा कर लिया है। - अपने पाइपलाइन में वेबसाइटों को क्रॉल करें —
invoke_firecrawl_crawlhtmlके साथ Firecrawl क्रॉल शुरू करें औरcheck_crawlhtml_statusके माध्यम से स्थिति जांचें।
दस्तावेज़
Unstructured API MCP सर्वर
[!NOTE] यह सर्वर स्रोतों, गंतव्यों और वर्कफ़्लो को प्रबंधित करने के लिए Unstructured API के साथ इंटरैक्ट करता है। यह सक्रिय रूप से अनुरक्षित नहीं है और संदर्भ के लिए यहाँ रखा गया है।
यदि आप फ़ाइलों को संरचित आउटपुट (markdown, JSON, HTML, या सादा पाठ) में पार्स और रूपांतरित करना चाहते हैं, तो इसके बजाय Unstructured Transform MCP सर्वर का उपयोग करें।
Unstructured Transform आपके एजेंटों के लिए एक होस्टेड MCP सर्वर के रूप में उत्पादन-ग्रेड दस्तावेज़ प्रसंस्करण लाता है। यह उन्हें उनके वर्तमान सत्र के भीतर सीधे फ़ाइलों को पार्स करके, समृद्ध करके, खंडित करके और एम्बेड करके 60+ फ़ाइल प्रकारों को संरचित डेटा में बदलने की क्षमता देता है जो आपके अनुप्रयोगों, वेक्टर डेटाबेस और किसी भी डाउनस्ट्रीम प्रक्रियाओं के लिए तैयार है।
आप यहाँ साइन अप करके इसका उपयोग शुरू कर सकते हैं।
Unstructured API के साथ इंटरैक्ट करने के लिए एक MCP सर्वर कार्यान्वयन। यह सर्वर स्रोतों और वर्कफ़्लो को सूचीबद्ध करने के लिए उपकरण प्रदान करता है।
उपलब्ध उपकरण
| उपकरण | विवरण |
|---|---|
list_sources | Unstructured API से उपलब्ध स्रोतों को सूचीबद्ध करता है। |
get_source_info | किसी विशिष्ट स्रोत कनेक्टर के बारे में विस्तृत जानकारी प्राप्त करें। |
create_source_connector | एक स्रोत कनेक्टर बनाएँ।) |
update_source_connector | पैरामीटर द्वारा किसी मौजूदा स्रोत कनेक्टर को अपडेट करें। |
delete_source_connector | स्रोत आईडी द्वारा किसी स्रोत कनेक्टर को हटाएँ। |
list_destinations | Unstructured API से उपलब्ध गंतव्यों को सूचीबद्ध करता है। |
get_destination_info | किसी विशिष्ट गंतव्य कनेक्टर के बारे में विस्तृत जानकारी प्राप्त करें |
create_destination_connector | पैरामीटर द्वारा एक गंतव्य कनेक्टर बनाएँ। |
update_destination_connector | गंतव्य आईडी द्वारा किसी मौजूदा गंतव्य कनेक्टर को अपडेट करें। |
delete_destination_connector | गंतव्य आईडी द्वारा किसी गंतव्य कनेक्टर को हटाएँ। |
list_workflows | Unstructured API से वर्कफ़्लो को सूचीबद्ध करता है। |
get_workflow_info | किसी विशिष्ट वर्कफ़्लो के बारे में विस्तृत जानकारी प्राप्त करें। |
create_workflow | स्रोत, गंतव्य आईडी आदि के साथ एक नया वर्कफ़्लो बनाएँ। |
run_workflow | वर्कफ़्लो आईडी के साथ एक विशिष्ट वर्कफ़्लो चलाएँ |
update_workflow | पैरामीटर द्वारा किसी मौजूदा वर्कफ़्लो को अपडेट करें। |
delete_workflow | आईडी द्वारा किसी विशिष्ट वर्कफ़्लो को हटाएँ। |
list_jobs | Unstructured API से किसी विशिष्ट वर्कफ़्लो के लिए कार्यों को सूचीबद्ध करता है। |
get_job_info | कार्य आईडी द्वारा किसी विशिष्ट कार्य के बारे में विस्तृत जानकारी प्राप्त करें। |
cancel_job | आईडी द्वारा किसी विशिष्ट कार्य को हटाएँ। |
list_workflows_with_finished_jobs | उन सभी वर्कफ़्लो को सूचीबद्ध करता है जिनका कोई पूर्ण कार्य है, साथ ही स्रोत और गंतव्य विवरण के बारे में जानकारी। |
नीचे उन कनेक्टरों की सूची दी गई है जिन्हें UNS-MCP सर्वर वर्तमान में समर्थन करता है, कृपया Unstructured प्लेटफ़ॉर्म द्वारा समर्थित स्रोत कनेक्टरों की पूरी सूची यहाँ और गंतव्य सूची यहाँ देखें। हम और अधिक जोड़ने की योजना बना रहे हैं!
| स्रोत | गंतव्य |
|---|---|
| S3 | S3 |
| Azure | Weaviate |
| Google Drive | Pinecone |
| OneDrive | AstraDB |
| Salesforce | MongoDB |
| Sharepoint | Neo4j |
| Databricks Volumes | |
| Databricks Volumes Delta Table |
किसी कनेक्टर को बनाने/अपडेट करने/हटाने वाले उपकरण का उपयोग करने के लिए, उस विशिष्ट कनेक्टर के लिए क्रेडेंशियल आपकी .env फ़ाइल में परिभाषित होने चाहिए। नीचे हमारे द्वारा समर्थित कनेक्टरों के लिए credentials की सूची दी गई है:
| क्रेडेंशियल नाम | विवरण |
|---|---|
ANTHROPIC_API_KEY | हमारे सर्वर के साथ इंटरैक्ट करने के लिए minimal_client चलाने हेतु आवश्यक। |
AWS_KEY, AWS_SECRET | uns-mcp सर्वर के माध्यम से S3 कनेक्टर बनाने के लिए आवश्यक, दस्तावेज़ीकरण और यहाँ देखें |
WEAVIATE_CLOUD_API_KEY | Weaviate वेक्टर डीबी कनेक्टर बनाने के लिए आवश्यक, दस्तावेज़ीकरण देखें |
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 | true पर सेट करें ताकि uns_mcp/server.py बेहतर डिबगिंग के लिए अनुरोध पैरामीटर आउटपुट कर सके |
Firecrawl स्रोत
Firecrawl एक वेब क्रॉलिंग API है जो हमारे MCP में दो मुख्य क्षमताएँ प्रदान करता है:
- HTML सामग्री पुनर्प्राप्ति: क्रॉल कार्य शुरू करने के लिए
invoke_firecrawl_crawlhtmlऔर उनकी निगरानी के लिएcheck_crawlhtml_statusका उपयोग करना - LLM-अनुकूलित पाठ निर्माण: पाठ उत्पन्न करने के लिए
invoke_firecrawl_llmtxtऔर परिणाम प्राप्त करने के लिएcheck_llmtxt_statusका उपयोग करना
Firecrawl कैसे काम करता है: वेब क्रॉलिंग प्रक्रिया:
- एक निर्दिष्ट URL से शुरू होता है और लिंक की पहचान करने के लिए इसका विश्लेषण करता है
- यदि उपलब्ध हो तो साइटमैप का उपयोग करता है; अन्यथा वेबसाइट पर पाए गए लिंक का अनुसरण करता है
- सभी उपपृष्ठों की खोज के लिए प्रत्येक लिंक को पुनरावर्ती रूप से पार करता है
- प्रत्येक विज़िट किए गए पृष्ठ से सामग्री एकत्र करता है, जावास्क्रिप्ट रेंडरिंग और दर सीमाओं को संभालता है
- यदि आवश्यक हो तो कार्यों को
cancel_crawlhtml_jobसे रद्द किया जा सकता है - यदि आपको कच्चे HTML में निकाली गई सभी जानकारी की आवश्यकता है, तो इसका उपयोग करें, Unstructured का वर्कफ़्लो इसे वास्तव में अच्छी तरह से साफ करता है :smile:
LLM पाठ निर्माण:
- क्रॉलिंग के बाद, क्रॉल किए गए पृष्ठों से स्वच्छ, सार्थक पाठ सामग्री निकालता है
- बड़े भाषा मॉडल के लिए विशेष रूप से स्वरूपित अनुकूलित पाठ प्रारूप तैयार करता है
- परिणाम स्वचालित रूप से निर्दिष्ट S3 स्थान पर अपलोड किए जाते हैं
- नोट: LLM पाठ निर्माण कार्य एक बार शुरू होने के बाद रद्द नहीं किए जा सकते।
cancel_llmtxt_jobफ़ंक्शन स्थिरता के लिए प्रदान किया गया है लेकिन वर्तमान में Firecrawl API द्वारा समर्थित नहीं है।
नोट: इन फ़ंक्शनों का उपयोग करने के लिए एक FIRECRAWL_API_KEY पर्यावरण चर सेट किया जाना चाहिए।
स्थापना और कॉन्फ़िगरेशन
यह मार्गदर्शिका Python 3.12 और uv उपकरण का उपयोग करके UNS_MCP सर्वर को सेट अप और कॉन्फ़िगर करने के लिए चरण-दर-चरण निर्देश प्रदान करती है।
पूर्वापेक्षाएँ
- Python 3.12+
- पर्यावरण प्रबंधन के लिए
uv - Unstructured से एक API कुंजी। आप साइन अप कर सकते हैं और अपनी API कुंजी यहाँ प्राप्त कर सकते हैं।
uv का उपयोग करना (अनुशंसित)
uvx का उपयोग करते समय किसी अतिरिक्त स्थापना की आवश्यकता नहीं है क्योंकि यह निष्पादन को संभालता है। हालाँकि, यदि आप सीधे पैकेज स्थापित करना पसंद करते हैं:
uv pip install uns_mcp
Claude Desktop कॉन्फ़िगर करें
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>"
}
}
}
}
स्रोत कोड का उपयोग करना
-
रिपॉजिटरी को क्लोन करें।
-
निर्भरताएँ स्थापित करें:
uv sync -
अपनी Unstructured API कुंजी को एक पर्यावरण चर के रूप में सेट करें। निम्नलिखित सामग्री के साथ रूट निर्देशिका में एक .env फ़ाइल बनाएँ:
UNSTRUCTURED_API_KEY="YOUR_KEY"कॉन्फ़िगर करने योग्य पर्यावरण चर के लिए
.env.templateदेखें।
अब आप निम्न विधियों में से किसी एक का उपयोग करके सर्वर चला सकते हैं:
संपादन योग्य पैकेज स्थापना का उपयोग करना
एक संपादन योग्य पैकेज के रूप में स्थापित करें:uvx pip install -e .
अपना Claude Desktop कॉन्फ़िग अपडेट करें:
{
"mcpServers": {
"UNS_MCP": {
"command": "uvx",
"args": ["uns_mcp"]
}
}
}
नोट: उस वातावरण में uvx निष्पादन योग्य को इंगित करना याद रखें जहाँ आपने पैकेज स्थापित किया था
SSE सर्वर प्रोटोकॉल का उपयोग करना
नोट: Claude Desktop द्वारा समर्थित नहीं है।
SSE प्रोटोकॉल के लिए, आप क्लाइंट और सर्वर को अलग करके अधिक आसानी से डीबग कर सकते हैं:
-
एक टर्मिनल में सर्वर प्रारंभ करें:
uv run python uns_mcp/server.py --host 127.0.0.1 --port 8080 # or make sse-server -
दूसरे टर्मिनल में स्थानीय क्लाइंट का उपयोग करके सर्वर का परीक्षण करें:
uv run python minimal_client/client.py "http://127.0.0.1:8080/sse" # or make sse-client
नोट: सेवाओं को रोकने के लिए, पहले क्लाइंट पर Ctrl+C का उपयोग करें, फिर सर्वर पर।
Stdio सर्वर प्रोटोकॉल का उपयोग करना
stdio का उपयोग करने के लिए Claude Desktop कॉन्फ़िगर करें:
{
"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 को चालू करने के लिए निम्न कमांड चलाएँ। वहाँ से, आप बाएँ फलक पर पर्यावरण चर (अपने स्थानीय env की ओर इशारा करते हुए) जोड़ सकेंगे। वहाँ env var के रूप में अपनी व्यक्तिगत 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@^0.2.11"
# or
make sse-client-terminal
उपकरणों के उपसमुच्चय का उपयोग करना
यदि आपका क्लाइंट केवल उपकरणों के उपसमुच्चय का उपयोग करने का समर्थन करता है तो यहाँ उन चीजों की सूची दी गई है जिनके बारे में आपको पता होना चाहिए:
update_workflowउपकरण कोcreate_workflowउपकरण के साथ संदर्भ में लोड किया जाना चाहिए, क्योंकि इसमें कस्टम नोड बनाने और कॉन्फ़िगर करने के तरीके पर विस्तृत विवरण होता है।
ज्ञात समस्याएँ
update_workflow- इसे उस वर्कफ़्लो के कॉन्फ़िगरेशन के संदर्भ में होना चाहिए जिसे यह अपडेट कर रहा है, या तो उपयोगकर्ता द्वारा प्रदान करके याget_workflow_infoउपकरण को कॉल करके, क्योंकि यह उपकरणpatchलागूकर्ता के रूप में काम नहीं करता है, यह वर्कफ़्लो कॉन्फ़िग को पूरी तरह से बदल देता है।
CHANGELOG.md
किसी भी नई विकसित सुविधाएँ/सुधार/संवर्द्धन को CHANGELOG.md में जोड़ा जाएगा। एक स्थिर संस्करण पर जाने से पहले 0.x.x-dev पूर्व-रिलीज़ प्रारूप को प्राथमिकता दी जाती है।
समस्या निवारण
- यदि आपको
Error: spawn <command> ENOENTके साथ समस्याएँ आती हैं तो इसका अर्थ है कि<command>स्थापित नहीं है या आपके PATH में दिखाई नहीं दे रहा है:- इसे स्थापित करना और अपने PATH में जोड़ना सुनिश्चित करें।
- या अपने कॉन्फ़िग के
commandफ़ील्ड में कमांड के लिए निरपेक्ष पथ प्रदान करें। इसलिए उदाहरण के लिएpythonको/opt/miniconda3/bin/pythonसे बदलें