Apache Doris
आधिकारिकApache Doris के लिए MCP सर्वर, जो MPP-आधारित रीयल-टाइम डेटा वेयरहाउस है।
Apache Doris MCP के साथ आप क्या कर सकते हैं?
- Doris से प्रश्न पूछें और निदान करें —
doris_queryडोमेन के माध्यम से क्वेरी निष्पादन, योजनाओं, प्रोफ़ाइल विश्लेषण, या धीमी क्वेरी के निदान के लिए पूछें। - कैटलॉग और स्कीमा का अन्वेषण करें —
doris_catalogचाइल्ड टूल्स के माध्यम से आकार विवरण सहित डेटाबेस, तालिकाओं और तालिका संदर्भ की खोज करें। - क्लस्टर स्वास्थ्य की निगरानी करें —
doris_clusterडोमेन का उपयोग करके नोड्स, कार्यों, मेट्रिक्स, मेमोरी, कैश और कॉम्पैक्शन स्थिति का निरीक्षण करें। - डेटा पाइपलाइन प्रबंधित करें —
doris_pipelineटूल्स के माध्यम से इन्जेशन स्थिति, मटेरियलाइज़्ड व्यू, ताज़गी और निर्भरताएँ जाँचें। - डेटा खोजें और विश्लेषण करें —
doris_searchडोमेन के माध्यम से टेक्स्ट, वेक्टर या हाइब्रिड खोज चलाएँ और इंडेक्स का निरीक्षण करें। - शासन और ऑडिट —
doris_governanceक्षमताओं के साथ डेटा गुणवत्ता, भंडारण, लिनेज, ऑडिट लॉग और UDF की समीक्षा करें।
दस्तावेज़
Apache Doris MCP सर्वर
Apache Doris MCP सर्वर MCP होस्ट्स और AI एजेंट्स को MCP 2026-07-28 पर केवल-पठनीय (read-only) Apache Doris क्षमताएँ प्रदान करता है। संस्करण 1.0 एक बड़ी सपाट टूल सतह को आठ स्थिर डोमेन और पचपन क्रमिक रूप से प्रकट होने वाली चाइल्ड क्षमताओं से प्रतिस्थापित करता है, साथ ही रनटाइम उपलब्धता, प्राधिकरण, इनपुट स्कीमा, आउटपुट स्कीमा, और विफलता व्यवहार को स्पष्ट रखता है।
रिलीज़ स्थिति
पैकेज संस्करण 1.0.0 है। master पर MCP 2026-07-28 प्रोटोकॉल संगतता सामान्य रूप से उपलब्ध (GA) है — Streamable HTTP और stdio पर। यह GA कथन प्रोटोकॉल संगतता तक सीमित है; Python पैकेज क्लासिफ़ायर Beta ही रहता है, और प्रलेखित परिनियोजन सीमाएँ अभी भी लागू होती हैं।
अपग्रेड करने से पहले, 1.0 रिलीज़ नोट्स, 1.0 माइग्रेशन गाइड, और जनरेट की गई 8-डोमेन/55-चाइल्ड रजिस्ट्री पढ़ें। विस्तृत रिलीज़ रिकॉर्ड Issue #189 में है।
एक नज़र में आर्किटेक्चर
MCP Host
-> stdio or Streamable HTTP
-> transport security and authentication
-> MCP protocol validation and authorization
-> stable domain discovery
-> route-aware Doris capability detection
-> exact child dispatch and read-only runtime
-> request-specific Doris route and RBAC
-> bounded, schema-validated result
डिफ़ॉल्ट hierarchical मोड इन डोमेन को प्रकट करता है:
| डोमेन | चाइल्ड | ज़िम्मेदारी |
|---|---|---|
doris_catalog | 5 | कैटलॉग, डेटाबेस, टेबल, टेबल संदर्भ, आकार |
doris_query | 7 | क्वेरी, explain, प्रोफ़ाइल, निदान, धीमी क्वेरी, स्पष्ट ADBC |
doris_cluster | 11 | नोड, कार्य, मेट्रिक्स, मेमोरी, कैश, compaction, वर्कलोड |
doris_pipeline | 5 | अंतर्ग्रहण (ingestion), मटेरियलाइज़्ड व्यू, ताज़गी, निर्भरताएँ |
doris_search | 4 | टेक्स्ट/वेक्टर/हाइब्रिड खोज, विश्लेषक, इंडेक्स, निदान |
doris_governance | 8 | गुणवत्ता, भंडारण, lineage, ऑडिट, UDF, प्रमाणीकरण मैपिंग |
doris_lakehouse | 3 | बाहरी कैटलॉग, lakehouse टेबल, Variant |
doris_semantic | 12 | वैकल्पिक Apache Ossie grounding और MetricFlow उपभोग |
किसी डोमेन को {} के साथ कॉल करें ताकि उसके अधिकृत चाइल्ड और सटीक स्कीमा खोजे जा सकें। उसी डोमेन को child_tool, arguments, और लौटाए गए manifest_version के साथ दोबारा कॉल करें। जो होस्ट प्रगतिशील प्रकटीकरण (progressive disclosure) का उपयोग नहीं कर सकते, वे स्टार्टअप से पहले MCP_TOOL_EXPOSURE_MODE=flat सेट कर सकते हैं; यह समान 55 चाइल्ड को टकराव-रहित औपचारिक नामों के अंतर्गत प्रकट करता है और पूर्व-1.0 उपनामों को पुनर्स्थापित नहीं करता।
देखें Architecture, Request lifecycle, और Tool domains.
त्वरित आरंभ
आवश्यकताएँ:
- Python 3.12 या उसके बाद का संस्करण;
- Apache Doris 2.0.0 या उसके बाद का संस्करण;
- Doris FE MySQL एंडपॉइंट तक नेटवर्क पहुँच, सामान्यतः पोर्ट
9030।
पिन किया गया रिलीज़ स्थापित करें:
pip install doris-mcp-server==1.0.0
doris-mcp-server सर्वर प्रारंभ करता है। doris-mcp-client एक अलग क्लाइंट है; दोनों कमांड विनिमेय नहीं हैं।
Doris रूट कॉन्फ़िगर करें:
export DORIS_HOST=127.0.0.1
export DORIS_PORT=9030
export DORIS_USER=mcp_reader
export DORIS_PASSWORD='replace-me'
export DORIS_DATABASE=information_schema
लूपबैक पर Streamable HTTP प्रारंभ करें:
doris-mcp-server \
--transport http \
--host 127.0.0.1 \
--port 3000
एंडपॉइंट:
- MCP:
POST http://127.0.0.1:3000/mcp - लीगेसी MCP (ऑप्ट-इन):
POST http://127.0.0.1:3000/mcp/legacy - liveness:
GET http://127.0.0.1:3000/live - Doris-समर्थित readiness:
GET http://127.0.0.1:3000/ready
जो होस्ट केवल हैंडशेक-युग के Streamable HTTP तक सीमित हैं, जिनमें MCP 2025-06-18 वाला Dify 1.16.1 शामिल है, उन्हें ENABLE_LEGACY_HTTP_ADAPTER=true सेट करना होगा और /mcp/legacy से कनेक्ट करना होगा। एडेप्टर केवल प्रोटोकॉल सीमा बदलता है; यह समान 1.0 टूल, प्राधिकरण, क्षमता गेट, और केवल-पठनीय निष्पादन को संरक्षित करता है।
या स्थानीय होस्ट के लिए stdio चलाएँ:
doris-mcp-server --transport stdio
पूरा Quick start और Host integration guide देखें।
सुरक्षा सीमा
- अंतर्निहित 1.0 कैटलॉग केवल-पठनीय है;
doris_adminआरक्षित है और पंजीकृत नहीं है। - स्टैटिक टोकन, JWT, बाहरी OAuth/OIDC, और Doris-समर्थित OAuth पारस्परिक रूप से मान्य कॉन्फ़िगरेशन सीमाओं के अंतर्गत समर्थित हैं।
- डोमेन खोज और चाइल्ड निष्पादन सटीक प्राधिकरण पहचानकर्ताओं का उपयोग करते हैं।
- दृश्यमान वस्तुओं और डेटा के लिए Doris RBAC ही अंतिम प्राधिकार है।
- SQL आकार, पहचानकर्ता, पैरामीटर, टाइमआउट, पंक्तियाँ, बाइट्स, और परिणाम स्कीमा डेटा को सर्वर से बाहर भेजने से पहले सीमित किए जाते हैं।
- गोपनीय जानकारी और बैकएंड त्रुटियाँ सार्वजनिक परिणामों और लॉग से हटा दी जाती हैं।
- गैर-लूपबैक HTTP के लिए प्रमाणीकरण आवश्यक है, जब तक कि कोई स्पष्ट खतरनाक विकास ओवरराइड सक्षम न हो।
Security and permission model और Doris fine-grained access guide पढ़ें।
विश्वसनीयता सीमा
सर्वर नियतात्मक मैनिफेस्ट और त्रुटियों, हस्ताक्षरित समाप्त होने वाले कर्सर, रूट-जागरूक क्षमता स्नैपशॉट, सीमित स्टेल फ़ॉलबैक, अनुरोध-विशिष्ट कनेक्शन रूटिंग, मल्टी-FE फेलओवर, liveness/readiness पृथक्करण, आउटपुट स्कीमा सत्यापन, और स्वच्छ trace प्रसार का उपयोग करता है। असमर्थित या गलत कॉन्फ़िगर की गई क्षमताएँ callable=false के साथ खोजने योग्य रहती हैं और कॉल करने पर बंद (fail) हो जाती हैं।
वर्तमान सीमाओं में प्रक्रिया-स्थानीय Doris-समर्थित OAuth, स्पष्ट-केवल ADBC जो डिफ़ॉल्ट रूप से अक्षम है और टोकन-बद्ध रूटों पर fail-closed है, वैकल्पिक केवल-पठनीय Ossie grounding, एक वैकल्पिक MetricFlow कंपाइलर साइडकार जिसका SQL सीमित MCP क्वेरी रनटाइम के माध्यम से निष्पादित होना चाहिए, और सर्वोत्तम-प्रयास नेटिव lineage वितरण शामिल हैं। देखें Reliability and limits।
दस्तावेज़ीकरण
मूल README जानबूझकर एक प्रवेश बिंदु है। द्विभाषी दस्तावेज़ीकरण प्रणाली इन पर अनुक्रमित है:
प्राथमिक मार्गदर्शिकाएँ:
- Architecture
- Request and data flow
- Tool domains
- Capability availability
- Doris version capability matrix
- MetricFlow integration
- MCP 2026-07-28 contract
- Security model
- Deployment
- Reliability and limits
- Troubleshooting
- Configuration reference
- Host integrations
- Custom tool providers
- Contributing
विकास
git clone https://github.com/apache/doris-mcp-server.git
cd doris-mcp-server
uv sync --group dev
uv run pytest
जनरेट की गई कलाकृतियाँ (artifacts) सिंक्रनाइज़ रहनी चाहिए:
uv run python generate_tool_catalog.py --check
uv lock --check
देखें Contributing and verification।
लाइसेंस
Apache License 2.0. देखें LICENSE.txt और NOTICE।