GZOO Cortex MCP Server
आधिकारिकडेवलपर्स के लिए स्थानीय-प्रथम ज्ञान ग्राफ। प्रोजेक्ट फ़ाइलों की निगरानी करता है, LLMs के माध्यम से संस्थाओं और संबंधों को निकालता है, और आपको प्राकृतिक भाषा और स्रोत उद्धरणों के साथ प्रोजेक्टों में क्वेरी करने देता है।
दस्तावेज़
GZOO Cortex
डेवलपर्स के लिए स्थानीय-प्रथम ज्ञान ग्राफ। आपकी प्रोजेक्ट फ़ाइलों पर नज़र रखता है, LLM का उपयोग करके इकाइयाँ और संबंध निकालता है, और आपको प्राकृतिक भाषा में अपने सभी प्रोजेक्ट्स में क्वेरी करने देता है।
"मैंने प्रोजेक्ट्स में कौन से आर्किटेक्चर निर्णय लिए हैं?"
Cortex आपकी READMEs, TypeScript फ़ाइलों, कॉन्फ़िग फ़ाइलों, और वार्तालाप निर्यातों से निर्णय ढूँढता है — फिर स्रोत उद्धरणों के साथ उत्तर संश्लेषित करता है।
क्यों
आप कई प्रोजेक्ट्स पर काम करते हैं। निर्णय, पैटर्न और संदर्भ सैकड़ों फ़ाइलों में बिखरे होते हैं। आप भूल जाते हैं कि तीन महीने पहले क्या तय किया था। आप उन समस्याओं को फिर से हल करते हैं जो पहले ही किसी अन्य रेपो में हल हो चुकी हैं।
Cortex आपकी प्रोजेक्ट निर्देशिकाओं पर नज़र रखता है, स्वचालित रूप से ज्ञान निकालता है, और जब आपको ज़रूरत होती है तो वापस देता है।
यह क्या करता है
- निगरानी करता है बदलावों के लिए आपकी प्रोजेक्ट फ़ाइलों (md, ts, js, py, json, yaml) पर
- निकालता है इकाइयाँ: निर्णय, पैटर्न, घटक, निर्भरताएँ, बाधाएँ, कार्रवाई आइटम
- अनुमान लगाता है प्रोजेक्ट्स में इकाइयों के बीच संबंधों का
- पता लगाता है जब निर्णय टकराते हैं तो विरोधाभासों का
- क्वेरी करता है स्रोत उद्धरणों के साथ प्राकृतिक भाषा में
- अर्थपूर्ण रूप से खोजता है — कीवर्ड और वेक्टर (एम्बेडिंग) समानता को मिलाता है ताकि क्वेरीज़ अर्थ से मेल खाएँ, न कि केवल कीवर्ड से (वैकल्पिक; अर्थपूर्ण खोज देखें)
- रूट करता है बुद्धिमानी से क्लाउड और स्थानीय LLM के बीच
- सम्मान करता है गोपनीयता का — प्रतिबंधित प्रोजेक्ट कभी आपकी मशीन नहीं छोड़ते
- वेब डैशबोर्ड ज्ञान ग्राफ विज़ुअलाइज़ेशन, लाइव फ़ीड और क्वेरी एक्सप्लोरर के साथ
- MCP सर्वर Claude Code के साथ सीधे एकीकरण के लिए
त्वरित शुरुआत
1. इंस्टॉल करें
npm install -g @gzoo/cortex
यदि वैश्विक इंस्टॉल EACCES के साथ विफल होता है, तो इसके बजाय उपयोगकर्ता उपसर्ग का उपयोग करें:
mkdir -p ~/.local
npm config set prefix ~/.local
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
npm install -g @gzoo/cortex
या स्रोत से इंस्टॉल करें:
git clone https://github.com/gzoonet/cortex.git
cd cortex
npm install && npm run build && npm link
सत्यापित करें: cortex --version (वर्तमान रिलीज़: 0.8.1)
2. सेटअप
इंटरैक्टिव विज़ार्ड चलाएँ:
cortex init
cortex doctor # verify config, providers, and DB
यह आपको इनके माध्यम से ले जाता है:
- LLM प्रदाता — Anthropic, Google Gemini, DeepSeek, Groq, OpenRouter, या Ollama (स्थानीय)
- API कुंजी —
~/.cortex/.envमें सुरक्षित रूप से सहेजी गई - रूटिंग मोड — क्लाउड-प्रथम, हाइब्रिड, स्थानीय-प्रथम, या केवल-स्थानीय
- निगरानी निर्देशिकाएँ — Cortex को किन निर्देशिकाओं की निगरानी करनी चाहिए
- बजट सीमा — मासिक LLM खर्च सीमा
cortex init वैश्विक कॉन्फ़िग को ~/.cortex/cortex.config.json में लिखता है। API कुंजियाँ ~/.cortex/.env में जाती हैं।
3. प्रोजेक्ट पंजीकृत करें
cortex projects add my-app ~/projects/app
cortex projects add api ~/projects/api
cortex projects list # verify
4. इन्जेस्ट करें, निगरानी करें और क्वेरी करें
पहले मौजूदा फ़ाइलों को बैकफ़िल करें — निगरानीकर्ता केवल नए बदलाव उठाता है:
cortex ingest "~/projects/app/src/**/*.ts" # one-shot backfill
cortex serve # dashboard + API + file watcher (recommended)
| कमांड | यह क्या करता है |
|---|---|
cortex serve | वेब डैशबोर्ड + API + फ़ाइल निगरानीकर्ता (ignoreInitial — शुरू होने पर पुनः इन्जेस्ट नहीं) |
cortex watch | केवल-CLI फ़ाइल निगरानीकर्ता (कोई डैशबोर्ड नहीं) |
cortex ingest | एक बार का इन्जेशन; ईवेंट लाइव फ़ीड में नहीं दिखते |
watchऔरserveको एक साथ न चलाएँ — वे फ़ाइल परिवर्तनों के लिए प्रतिस्पर्धा करते हैं। लाइव फ़ीड केवलcortex serveसे वास्तविक समय की घटनाएँ दिखाता है (सर्वर चलने के दौरान फ़ाइल सहेजना)।
cortex query "what caching strategies am I using?"
cortex query "what decisions have I made about authentication?"
cortex find "PostgreSQL" --expand 2
cortex contradictions
5. वेब डैशबोर्ड
cortex serve # open http://localhost:3710
दूरस्थ पहुँच:
cortex serve --host 0.0.0.0
गैर-लोकलहोस्ट होस्ट पर प्रमाणीकरण स्वचालित रूप से लागू होता है। एक बियरर टोकन स्वतः उत्पन्न होता है और ~/.cortex/.env में सहेजा जाता है (इसे grep CORTEX_SERVER_AUTH_TOKEN ~/.cortex/.env से पढ़ें)। एक बार http://<host>:3710/?token=<token> के साथ डैशबोर्ड खोलें — टोकन केवल उन अनुरोधों के लिए एम्बेडेड होता है जो पहले से ही इसके कब्जे को साबित करते हैं और फिर ब्राउज़र टैब के लिए रखा जाता है (इसलिए अनाम आगंतुक इसे कभी प्राप्त नहीं करते)। रिवर्स प्रॉक्सी के पीछे API/WebSocket कॉल Authorization: Bearer <token> का उपयोग करते हैं।
फ़ाइलों और निर्देशिकाओं को बाहर करना
Cortex डिफ़ॉल्ट रूप से node_modules, dist, .git, और अन्य सामान्य निर्देशिकाओं को अनदेखा करता है। और जोड़ने के लिए:
cortex config exclude add docs # exclude a directory
cortex config exclude add "*.log" # exclude by pattern
cortex config exclude list # see all excludes
cortex config exclude remove docs # remove an exclude
यह कैसे काम करता है
Cortex प्रत्येक फ़ाइल परिवर्तन पर एक पाइपलाइन चलाता है:
- पार्स — फ़ाइल सामग्री को भाषा-जागरूक पार्सर द्वारा खंडित किया जाता है (कोड के लिए tree-sitter, मार्कडाउन के लिए remark)
- निकालें — LLM इकाइयों की पहचान करता है (निर्णय, घटक, पैटर्न, आदि)
- संबंधित करें — LLM नई और मौजूदा इकाइयों के बीच संबंधों का अनुमान लगाता है
- पता लगाएँ — विरोधाभास और डुप्लिकेट स्वचालित रूप से चिह्नित किए जाते हैं
- संग्रहीत करें — इकाइयाँ, संबंध और वेक्टर SQLite + LanceDB में जाते हैं
- क्वेरी — प्राकृतिक भाषा क्वेरीज़ ग्राफ़ खोजती हैं और उत्तर संश्लेषित करती हैं
सभी डेटा ~/.cortex/ में स्थानीय रहता है। केवल LLM API कॉल आपकी मशीन छोड़ते हैं
(और प्रतिबंधित प्रोजेक्ट्स के लिए कभी नहीं)।
LLM प्रदाता
Cortex प्रदाता-अज्ञेयवादी है। यह समर्थन करता है:
- Anthropic Claude (Sonnet, Haiku) — मूल Anthropic API के माध्यम से
- Google Gemini — OpenAI-संगत API के माध्यम से
- DeepSeek (Reasoner, Chat) — मजबूत तर्क, बहुत किफायती
- Groq — मुफ्त स्तर के साथ तेज़ अनुमान
- कोई भी OpenAI-संगत API — OpenRouter, स्थानीय प्रॉक्सी, आदि।
- Ollama (Mistral, Llama, आदि) — पूरी तरह से स्थानीय, कोई क्लाउड आवश्यक नहीं
लागत ट्रैकिंग DeepSeek, Gemini, Groq, और OpenRouter मॉडल के लिए प्रदाता-जागरूक दरों का उपयोग करती है — कोई कंबल Anthropic फ़ॉलबैक नहीं।
एम्बेडिंग (अर्थपूर्ण खोज के लिए) एक अलग प्रदाता के रूप में कॉन्फ़िगर की जाती हैं — आपके चैट मॉडल से स्वतंत्र — ताकि आप DeepSeek पर चैट और OpenAI पर एम्बेडिंग चला सकें। अर्थपूर्ण खोज देखें।
रूटिंग मोड
| मोड | क्लाउड लागत | गुणवत्ता | Ollama आवश्यक |
|---|---|---|---|
cloud-first | प्रदाता के अनुसार बदलता है | उच्चतम | नहीं |
hybrid | कम | उच्च | हाँ |
local-first | न्यूनतम | अच्छा | हाँ |
local-only | $0 | अच्छा | हाँ |
क्लाउड-प्रथम मोड में, सभी कार्य आपके क्लाउड प्रदाता को रूट होते हैं। Ollama की आवश्यकता नहीं है और केवल तभी उपयोग किया जाता है जब बजट फ़ॉलबैक सक्षम हो। हाइब्रिड मोड उच्च-मात्रा वाले कार्यों (इकाई निष्कर्षण, रैंकिंग) को Ollama और तर्क-भारी कार्यों (संबंध अनुमान, क्वेरीज़) को आपके क्लाउड प्रदाता को रूट करता है।
आवश्यकताएँ
- Node.js 20+
- क्लाउड मोड के लिए LLM API कुंजी — Anthropic, Google Gemini, DeepSeek, Groq, या कोई OpenAI-संगत प्रदाता
- Ollama — केवल
hybrid,local-first, याlocal-onlyमोड के लिए (इंस्टॉल करें)
कॉन्फ़िगरेशन
कॉन्फ़िग स्तरित है — बाद के स्रोत पहले वालों को ओवरराइड करते हैं:
| प्राथमिकता | स्थान | दायरा |
|---|---|---|
| 1 | अंतर्निहित डिफ़ॉल्ट | वैश्विक |
| 2 | ~/.cortex/cortex.config.json | वैश्विक (cortex init द्वारा निर्मित) |
| 3 | ./cortex.config.json | प्रोजेक्ट ओवरराइड (वैकल्पिक) |
| 4 | CORTEX_* env vars | सत्र |
API कुंजियाँ ~/.cortex/.env में अलग से संग्रहीत की जाती हैं (कॉन्फ़िग JSON में कभी नहीं)।
cortex config list # see all non-default settings
cortex config set llm.mode hybrid # switch routing mode
cortex config set llm.budget.monthlyLimitUsd 10 # set budget
cortex config exclude add vendor # exclude a directory from watching
cortex privacy set ~/clients restricted # mark directory as restricted
cortex doctor # validate setup
पूर्ण कॉन्फ़िगरेशन संदर्भ: docs/configuration.md
अर्थपूर्ण खोज (एम्बेडिंग)
Cortex कीवर्ड (पूर्ण-पाठ) खोज को वेक्टर समानता के साथ मिलाता है, ताकि क्वेरीज़ सटीक शब्दों के बजाय अर्थ से मेल खाएँ। एम्बेडिंग वैकल्पिक और डिफ़ॉल्ट रूप से बंद हैं — उन्हें क्लाउड एम्बेडिंग प्रदाता के साथ सक्षम करें (कोई स्थानीय GPU या Ollama आवश्यक नहीं):
cortex config set llm.embeddings.enabled true
cortex config set llm.embeddings.baseUrl https://api.openai.com/v1
cortex config set llm.embeddings.model text-embedding-3-small
cortex config set llm.embeddings.apiKeySource env:OPENAI_API_KEY
cortex config set llm.embeddings.dimensions 1536
# then add the key to ~/.cortex/.env:
echo 'OPENAI_API_KEY=sk-...' >> ~/.cortex/.env
एम्बेडिंग प्रदाता आपके चैट प्रदाता से स्वतंत्र है — DeepSeek (या Anthropic, Groq, …) पर चैट और OpenAI पर एम्बेडिंग चलाएँ। कोई भी OpenAI-संगत एम्बेडिंग एंडपॉइंट काम करता है।
नई फ़ाइलें इन्जेस्ट होते ही स्वचालित रूप से एम्बेड हो जाती हैं। उस ग्राफ़ के लिए इंडेक्स बनाने के लिए जिसे आपने पहले ही इन्जेस्ट कर लिया है, एक बार का पुनः अनुक्रमण चलाएँ:
cortex reindex # all projects
cortex reindex my-app # a single project
कमांड
| कमांड | विवरण |
|---|---|
cortex init | इंटरैक्टिव सेटअप विज़ार्ड |
cortex doctor | कॉन्फ़िग, प्रदाताओं, प्रोजेक्ट्स, रहस्यों और डेटाबेस को मान्य करें |
cortex projects add/list/remove/show | पंजीकृत प्रोजेक्ट प्रबंधित करें |
cortex serve | वेब डैशबोर्ड + API + फ़ाइल निगरानीकर्ता (पोर्ट 3710) |
cortex watch [project] | केवल-CLI फ़ाइल निगरानीकर्ता |
cortex ingest <file-or-glob> | एक बार का फ़ाइल इन्जेशन (लाइव फ़ीड से अलग) |
cortex reindex [project] | मौजूदा इकाइयों के लिए अर्थपूर्ण (एम्बेडिंग) खोज सूचकांक का पुनर्निर्माण करें |
cortex query <question> | उद्धरणों के साथ प्राकृतिक भाषा क्वेरी |
cortex find <term> | नाम से इकाइयाँ खोजें |
cortex status | ग्राफ़ आँकड़े, लागत, प्रदाता स्थिति |
cortex costs | विस्तृत लागत विश्लेषण |
cortex contradictions | सक्रिय विरोधाभासों की सूची बनाएँ |
cortex resolve <id> | एक विरोधाभास हल करें |
cortex models list/pull/test/info | Ollama मॉडल प्रबंधित करें |
cortex mcp | Claude Code के लिए MCP सर्वर शुरू करें |
cortex report | इन्जेशन के बाद का सारांश |
cortex privacy set/list | निर्देशिका गोपनीयता सेट करें |
cortex config list/get/set/validate | कॉन्फ़िगरेशन पढ़ें/लिखें |
cortex config exclude add/remove/list | फ़ाइल/निर्देशिका बहिष्करण प्रबंधित करें |
cortex stop / cortex restart | चल रही निगरानी/सेवा प्रक्रियाओं का प्रबंधन करें |
cortex db | डेटाबेस संचालन |
पूर्ण CLI संदर्भ: docs/cli-reference.md
वेब डैशबोर्ड
cortex serve को http://localhost:3710 पर एक पूर्ण वेब डैशबोर्ड खोलने के लिए चलाएँ:
- डैशबोर्ड होम — ग्राफ़ आँकड़े, हाल की गतिविधि, इकाई प्रकार विश्लेषण
- ज्ञान ग्राफ़ — क्लस्टरिंग के साथ इंटरैक्टिव D3-बल ग्राफ़, अन्वेषण के लिए क्लिक करें
- लाइव फ़ीड — WebSocket के माध्यम से वास्तविक समय फ़ाइल परिवर्तन और इकाई निष्कर्षण घटनाएँ (केवल
cortex serveसे) - क्वेरी एक्सप्लोरर — स्ट्रीमिंग प्रतिक्रियाओं के साथ प्राकृतिक भाषा क्वेरीज़
- विरोधाभास समाधानकर्ता — परस्पर विरोधी निर्णयों की समीक्षा करें और हल करें
दूरस्थ परिनियोजन
लोकलहोस्ट से परे पहुँच के लिए, सभी इंटरफेस से बाइंड करें और Cortex को रिवर्स प्रॉक्सी के पीछे रखें:
cortex serve --host 0.0.0.0
उदाहरण nginx कॉन्फ़िग — /api/ और /ws को मूल प्रमाणीकरण से सुरक्षित करें; बिना प्रमाणीकरण के स्थिर संपत्तियाँ परोसें (डैशबोर्ड HTML में बियरर टोकन इंजेक्ट करता है):
location /api/ {
auth_basic "Cortex";
auth_basic_user_file /etc/nginx/.htpasswd;
proxy_pass http://127.0.0.1:3710;
proxy_set_header Authorization "Bearer $CORTEX_TOKEN";
}
location /ws {
auth_basic "Cortex";
auth_basic_user_file /etc/nginx/.htpasswd;
proxy_pass http://127.0.0.1:3710;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location / {
auth_basic off;
proxy_pass http://127.0.0.1:3710;
}
कॉन्फ़िग में CORTEX_SERVER_AUTH_TOKEN या server.auth.token सेट करें। जब प्रमाणीकरण सक्षम होता है, तो Cortex डैशबोर्ड HTML में टोकन इंजेक्ट करता है ताकि API और WebSocket कॉल स्वचालित रूप से प्रमाणित हों।
MCP सर्वर (Claude Code एकीकरण)
Cortex में एक MCP सर्वर शामिल है ताकि Claude Code सीधे आपके ज्ञान ग्राफ़ से क्वेरी कर सके:
claude mcp add cortex --scope user -- npx @gzoo/cortex mcp
यह Claude Code को 12 उपकरण देता है:
| उपकरण | विवरण |
|---|---|
cortex_ask | आपके प्रोजेक्ट्स के बारे में प्राकृतिक भाषा प्रश्न |
get_status | सिस्टम स्थिति और ग्राफ़ आँकड़े |
list_projects | पंजीकृत प्रोजेक्ट्स की सूची बनाएँ |
find_entity | नाम से इकाइयाँ खोजें |
query_cortex | संरचित ज्ञान ग्राफ़ क्वेरीज़ |
get_contradictions | पता लगाए गए विरोधाभासों की सूची बनाएँ |
resolve_contradiction | एक विरोधाभास हल करें |
search_entities | फ़िल्टर के साथ इकाइयाँ खोजें |
ingest_file | फ़ाइल इन्जेशन ट्रिगर करें |
add_project | एक नया प्रोजेक्ट पंजीकृत करें |
remove_project | एक प्रोजेक्ट अपंजीकृत करें |
session_brief | वर्तमान सत्र के लिए संदर्भ सारांश |
आर्किटेक्चर
आठ पैकेजों के साथ मोनोरेपो:
- @cortex/core — प्रकार, EventBus, कॉन्फ़िग लोडर, त्रुटि वर्ग
- @cortex/ingest — फ़ाइल पार्सर (tree-sitter + remark), खंडक, निगरानीकर्ता, पाइपलाइन
- @cortex/graph — SQLite स्टोर, LanceDB वेक्टर, क्वेरी इंजन
- @cortex/llm — Anthropic/Gemini/OpenAI-संगत/Ollama प्रदाता, राउटर, प्रॉम्प्ट, कैश
- @cortex/cli — Commander.js CLI
- @cortex/mcp — मॉडल संदर्भ प्रोटोकॉल सर्वर (stdio ट्रांसपोर्ट, 12 उपकरण)
- @cortex/server — Express REST API + WebSocket रिले
- @cortex/web — React + Vite + D3 वेब डैशबोर्ड
आर्किटेक्चर दस्तावेज़: docs/
गोपनीयता और सुरक्षा
restrictedके रूप में वर्गीकृत फ़ाइलें कभी क्लाउड LLM को नहीं भेजी जातीं- संवेदनशील फ़ाइलें (.env, .pem, .key) स्वतः पहचानी और अवरुद्ध की जाती हैं
- API कुंजी रहस्यों को किसी भी क्लाउड ट्रांसमिशन से पहले स्कैन और संशोधित किया जाता है
- सभी डेटा
~/.cortex/में स्थानीय रूप से संग्रहीत — कुछ भी घर फोन नहीं करता
पूर्ण सुरक्षा आर्किटेक्चर: docs/security.md
के साथ निर्मित
- SQLite better-sqlite3 के माध्यम से — इकाई और संबंध भंडारण
- LanceDB — सिमैंटिक खोज के लिए वेक्टर एम्बेडिंग
- Anthropic Claude — क्लाउड LLM प्रदाता
- Google Gemini — क्लाउड LLM प्रदाता (OpenAI-संगत API के माध्यम से)
- DeepSeek — क्लाउड LLM प्रदाता (रीज़निंग + चैट)
- Groq — तेज़ क्लाउड अनुमान
- Ollama — स्थानीय LLM अनुमान
- tree-sitter — भाषा-सचेत फ़ाइल पार्सिंग
- Chokidar — क्रॉस-प्लेटफ़ॉर्म फ़ाइल निगरानी
- Commander.js — CLI ढाँचा
- React + Vite — वेब डैशबोर्ड
- D3 — ज्ञान ग्राफ़ विज़ुअलाइज़ेशन
योगदान
दिशानिर्देशों के लिए CONTRIBUTING.md देखें।
लाइसेंस
MIT — LICENSE देखें
परिचय
GZOO द्वारा निर्मित — एक AI-संचालित व्यवसाय स्वचालन प्लेटफ़ॉर्म।
Cortex की शुरुआत कई क्लाइंट प्रोजेक्ट्स में संदर्भ बनाए रखने के लिए एक आंतरिक उपकरण के रूप में हुई थी। हमने इसे ओपन-सोर्स किया क्योंकि हर डेवलपर जो एक से अधिक चीज़ों पर काम करता है, संदर्भ खो देता है, और हमें लगता है कि यह दृष्टिकोण — स्वचालित फ़ाइल निगरानी + ज्ञान ग्राफ़ + प्राकृतिक भाषा प्रश्न — इसे हल करने का सही तरीका है।