MCP server किसी AI असिस्टेंट को ऐसी मेमोरी देने का सबसे आसान तरीका है जो एक चैट से ज़्यादा चले। Claude Code, Cursor और ऐसे दूसरे क्लाइंट चैट खत्म होते ही उसका संदर्भ खो देते हैं। इसे ठीक करने के लिए उन्हें सीधे डेटाबेस का एक्सेस देना जोखिम भरा है। hotkv-mcp HotKV के लिए हमारा ओपन-सोर्स MCP server है। यह असिस्टेंट को नोट्स, बातचीत का इतिहास, इवेंट लॉग, प्रॉम्प्ट टेम्पलेट और दस्तावेज़ खोज के लिए टूल का एक तय सेट देता है। इसके अलावा यह कुछ और नहीं देता।
संक्षेप में।
hotkv-mcpApache-2.0 लाइसेंस वाला MCP server है, जो Claude Code, Cursor, VS Code या आपके अपने एजेंट को 28 तय टूल के ज़रिए HotKV server से जोड़ता है। कोई भी मनमाना कमांड चलाने वाला टूल नहीं है, इसलिए असिस्टेंट न डेटा फ़्लश कर सकता है और न कॉन्फ़िगरेशन बदल सकता है। Read-only मोड हर लिखने वाला टूल हटा देता है, और namespace एजेंट को एक key prefix तक सीमित कर देता है। इसेpip install hotkv-mcpसे इंस्टॉल करें याuvxसे चलाएँ।
Model Context Protocol क्या है
Model Context Protocol, यानी MCP, AI एप्लिकेशन को डेटा स्रोत, टूल और वर्कफ़्लो जैसे बाहरी सिस्टम से जोड़ने के लिए एक ओपन स्टैंडर्ड है। प्रोजेक्ट का परिचय इसकी तुलना AI एप्लिकेशन के लिए USB-C पोर्ट से करता है। MCP की भाषा में एप्लिकेशन क्लाइंट है, और वह जिस भी सिस्टम से जुड़ता है उसे एक server उपलब्ध कराता है।
मेमोरी के मामले में इसका मतलब है कि असिस्टेंट एक नाम वाला टूल कॉल करता है, जैसे नोट सेव करने वाला टूल। वह टूल क्या कर सकता है, यह server तय करता है। मॉडल को अपना कोई डेटाबेस कनेक्शन कभी नहीं मिलता।
HotKV MCP server क्या उपलब्ध कराता है
यह server HotKV की एजेंट मेमोरी, प्रॉम्प्ट रजिस्ट्री और दस्तावेज़ खोज को 28 टूल में समेटता है। हर टूल अपने MCP annotations में बताता है कि वह सिर्फ़ पढ़ता है, लिखता है या मिटाता है। इससे क्लाइंट विनाशकारी टूल से पहले मंज़ूरी माँग सकता है।
| समूह | टूल |
|---|---|
| Server | server_info |
| Keys | get, set, delete, key_info, scan |
| Hash और list | hash_get, hash_set, list_range, list_push |
| बातचीत की मेमोरी | memory_append_message, memory_get_messages, memory_clear_messages |
| कामकाजी नोट्स | memory_set_note, memory_get_note, memory_list_notes |
| इवेंट लॉग और सारांश | memory_log_event, memory_query_events, memory_set_summary, memory_get_summary |
| प्रॉम्प्ट रजिस्ट्री | prompt_save, prompt_get, prompt_versions, prompt_list |
| दस्तावेज़ खोज | rag_create, rag_ingest, rag_search, rag_list |
मेमोरी वाले टूल उन स्टोर से जुड़ते हैं जिनका वर्णन AI agent memory में है, यानी बातचीत का इतिहास, कामकाजी नोट्स और इवेंट लॉग। Embedding के ज़रिए semantic recall उपलब्ध नहीं कराया गया है। rag_search कीवर्ड की प्रासंगिकता से रैंक करता है, इसलिए उसे embedding की ज़रूरत नहीं पड़ती।
Key, hash और list टूल किसी भी HotKV server के साथ काम करते हैं। मेमोरी, प्रॉम्प्ट और दस्तावेज़ खोज वाले टूल HotKV के AI इंजन इस्तेमाल करते हैं, जिनके लिए ऐसा लाइसेंस चाहिए जिसमें वे शामिल हों। लाइसेंस न हो तो ये टूल संदेश लौटाते हैं कि server इस फ़ीचर के लिए लाइसेंस प्राप्त नहीं है। Key वाले टूल तब भी चलते रहते हैं। HotKV Cloud के Performance और Scale इंस्टेंस में AI इंजन शामिल हैं, जैसा AI पेज बताता है।
इंस्टॉल करें और जोड़ें
Server के लिए Python 3.10 या उससे नया संस्करण चाहिए। इसे HotKV server 0.3.0 और आधिकारिक hotkv-client पैकेज के विरुद्ध लिखा गया था, और संस्करण 1.0.0 PyPI पर है। इसे pip से इंस्टॉल करें, या uv से बिना इंस्टॉल किए चलाएँ।
pip install hotkv-mcp
uvx hotkv-mcp --url hotkv://localhost:6379
Claude Code
इसे एक कमांड से जोड़ें। -- Claude Code के अपने विकल्पों को उस कमांड से अलग करता है जो server शुरू करती है, जैसा Claude Code MCP दस्तावेज़ीकरण बताता है।
claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379
Cursor और Claude Desktop
जो क्लाइंट mcpServers फ़ाइल पढ़ते हैं, वे यही server JSON एंट्री के रूप में लेते हैं। पासवर्ड को HOTKV_URL एनवायरनमेंट वेरिएबल या क्लाइंट के सीक्रेट स्टोर में रखें। कमांड लाइन मशीन के दूसरे यूज़र को दिखती है। TLS कनेक्शन के लिए hotkvs:// इस्तेमाल करें।
{
"mcpServers": {
"hotkv": {
"command": "uvx",
"args": ["hotkv-mcp", "--read-only"],
"env": { "HOTKV_URL": "hotkv://:your-password@localhost:6379" }
}
}
}
जाँचें कि यह काम कर रहा है
claude mcp list चलाकर पक्का करें कि server रजिस्टर हो गया है। फिर असिस्टेंट से server_info टूल कॉल करने को कहें। यह HotKV का संस्करण और मेमोरी उपयोग लौटाता है, और namespace सेट न हो तो key की गिनती भी। यह भी बताता है कि server read-only है या नहीं और किस namespace तक सीमित है। इससे पुष्टि होती है कि आपकी सुरक्षा सेटिंग्स लागू हुई हैं।
एजेंट को सुरक्षित सीमाओं में रखें
जो मॉडल टूल कॉल कर सकता है, उसे उनका दुरुपयोग करने के लिए बहकाया भी जा सकता है। इसलिए फ़ीचर से ज़्यादा सीमाएँ मायने रखती हैं।
कोई मनमाना कमांड नहीं
कच्चा कमांड चलाने वाला कोई टूल नहीं है। असिस्टेंट डेटाबेस फ़्लश नहीं कर सकता और server का कॉन्फ़िगरेशन नहीं बदल सकता, क्योंकि 28 में से कोई टूल यह नहीं करता। वह उन सभी keys को पढ़ सकता है जहाँ तक टूल पहुँचते हैं, इसीलिए नीचे दिया namespace मायने रखता है।
Read-only मोड
--read-only हर लिखने वाले टूल को हटा देता है, जिनमें set, delete, hash_set, list_push, जोड़ने या साफ़ करने वाले मेमोरी टूल, prompt_save, rag_create और rag_ingest शामिल हैं। एजेंट उन्हें देख तक नहीं सकता। इसे उन असिस्टेंट के लिए इस्तेमाल करें जो मेमोरी देखें पर उसे कभी न बदलें।
Namespace और आकार की सीमाएँ
--namespace PREFIX सब कुछ उसी prefix के नीचे सेव करता है। एजेंट को prefix कभी दिखता नहीं और वह दूसरे नामों तक नहीं पहुँच सकता। हर एजेंट को ऐसा prefix दें जो किसी दूसरे prefix की शुरुआत न हो। agent और agent:b की जगह agent-a और agent-b इस्तेमाल करें, वरना छोटा वाला लंबे वाले के नामों तक पहुँच सकता है।
नतीजों पर भी सीमा है। --max-value-bytes लंबी वैल्यू को काट देता है और उन्हें truncated के रूप में चिह्नित करता है, डिफ़ॉल्ट 65,536 बाइट है। --max-items सीमित करता है कि एक कॉल कितनी keys, list आइटम या हिट लौटाए, डिफ़ॉल्ट 200 है। इसलिए एक अकेली विशाल वैल्यू मॉडल के संदर्भ को भर नहीं सकती। पूरा hash पढ़ने पर आइटम की सीमा लागू नहीं होती, इसलिए बड़े hash को एजेंट के namespace से बाहर रखें।
HTTP ट्रांसपोर्ट में लॉगिन नहीं है
डिफ़ॉल्ट stdio ट्रांसपोर्ट को क्लाइंट सबप्रोसेस के रूप में शुरू करता है। साझा उपयोग के लिए आप hotkv-mcp --transport streamable-http चला सकते हैं, जो 127.0.0.1:8000 पर /mcp में सुनता है। यह कॉल करने वालों को प्रमाणित नहीं करता। इसे localhost पर रखें या ऐसे reverse proxy के पीछे रखें जो प्रमाणित करे, और इसे अपना अलग namespace दें।
टीम के लिए सेटअप चुनना
सही फ़्लैग इस पर निर्भर करते हैं कि हर एजेंट किस काम के लिए है। नीचे का हर विकल्प कमांड-लाइन फ़्लैग है। --read-only और --namespace के एनवायरनमेंट वेरिएबल भी हैं, HOTKV_MCP_READ_ONLY और HOTKV_MCP_NAMESPACE।
| सेटअप | फ़्लैग | कब इस्तेमाल करें |
|---|---|---|
| अकेले आज़माना | --namespace trial | आप लोकल server पर टूल आज़मा रहे हैं |
| साझा नोट्स का पाठक | --read-only --namespace team-docs | असिस्टेंट प्रॉम्प्ट और नोट्स देखे पर उन्हें कभी न बदले |
| हर एजेंट के लिए एक लेखक | हर एजेंट के लिए --namespace agent-a | कई एजेंट अपनी-अपनी मेमोरी रखते हैं और एक-दूसरे की नहीं देखनी चाहिए |
| साझा सेवा | प्रमाणित करने वाले proxy के पीछे --transport streamable-http | एक टीम एक server साझा करती है और आप तय करते हैं कि वहाँ कौन पहुँच सकता है |
उस सबसे सीमित पंक्ति से शुरू करें जो काम कर दे। एक्सेस बाद में बढ़ाना आसान है, पर जो एजेंट पहले ही लिख चुका है उसे वापस लेना मुश्किल।
पहला सत्र, चरण दर चरण
एक छोटा ट्रायल दिखाता है कि सुरक्षा उपाय क्या करते हैं, इससे पहले कि आप server पर असली नोट्स का भरोसा करें। एक अस्थायी namespace और ऐसा लोकल HotKV server इस्तेमाल करें जिसे AI इंजन का लाइसेंस मिला हो, क्योंकि उस लाइसेंस के बिना मेमोरी टूल काम नहीं करते।
- Namespace के साथ जुड़ें।
claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379 --namespace trialचलाएँ। - सीमाएँ जाँचें। असिस्टेंट से
server_infoकॉल करने और namespace व read-only स्थिति बताने को कहें। उसेtrialबताना चाहिए और read-only नहीं। - एक नोट सेव करें। उससे कहें कि याद रखे कि staging साइट किसी दिए गए पते पर है, साइट के नाम वाले नोट के तहत। असिस्टेंट
memory_set_noteकॉल करता है, और सत्र पहले उपयोग पर बन जाता है। - नई चैट में उसे वापस पढ़ें। नई बातचीत शुरू करें और पूछें कि उस सत्र के लिए कौन से नोट्स हैं। वह
memory_list_notesऔरmemory_get_noteकॉल करता है, और नोट अब भी वहाँ है। - एक फ़ैसला लॉग करें। उससे इवेंट लॉग में एक फ़ैसला दर्ज करने को कहें। वह
memory_log_eventकॉल करता है, औरmemory_query_eventsउसे बाद में वापस ले आता है। - उसका लिखने का एक्सेस हटाएँ। पुरानी एंट्री हटाएँ,
--read-onlyके साथ फिर से जुड़ें और चरण 4 दोहराएँ। पढ़ना अब भी काम करता है, और लिखने वाले टूल अब नहीं दिए जाते।
अगर चरण 6 वैसा ही व्यवहार करे जैसा बताया गया है, तो आपने वे दो नियंत्रण देख लिए जो सबसे ज़्यादा मायने रखते हैं, namespace और read-only मोड।
असिस्टेंट जो कुछ भी स्टोर करता है, उसे वापस पढ़ते समय अविश्वसनीय टेक्स्ट मानें, जैसा मेमोरी वाला लेख संग्रहीत टेक्स्ट को अविश्वसनीय मानने के बारे में समझाता है। वेब पेज से लिखे गए नोट्स में निर्देश हो सकते हैं।
समस्या निवारण
- "This HotKV server is not licensed for that feature." मेमोरी, प्रॉम्प्ट और दस्तावेज़ खोज वाले टूल को ऐसा HotKV लाइसेंस चाहिए जिसमें AI इंजन शामिल हों। Key, hash और list टूल इसके बिना भी चलते रहते हैं।
- कनेक्शन नहीं बन रहा। URL की स्कीम जाँचें।
hotkv://,hotkvs://(TLS),redis://औरrediss://सब काम करते हैं, और पासवर्ड URL मेंhotkv://:password@host:6379के रूप में जाता है। - वैल्यू कटी हुई आती है। जब नतीजा
--max-value-bytesसे आगे जाता है तो उसे truncated चिह्नित किया जाता है। सीमा बढ़ाएँ या छोटी वैल्यू स्टोर करें। - लिखने वाला टूल गायब है। Server के आर्ग्युमेंट में
--read-onlyया उसके एनवायरनमेंट मेंHOTKV_MCP_READ_ONLYदेखें। - असिस्टेंट को पहले सेव किया गया नाम नहीं मिल रहा। जाँचें कि उसने वही सत्र या एजेंट का नाम इस्तेमाल किया और server उसी namespace के साथ चल रहा है जिसके साथ पहले चल रहा था।
uvxनहीं मिल रहा। uv इंस्टॉल करें, या पैकेज कोpipसे इंस्टॉल करकेhotkv-mcpसीधे शुरू करें।
अक्सर पूछे जाने वाले प्रश्न
MCP server क्या है?
MCP server ऐसा प्रोग्राम है जो Model Context Protocol के ज़रिए किसी AI एप्लिकेशन को टूल, डेटा या वर्कफ़्लो उपलब्ध कराता है। क्लाइंट कहलाने वाला एप्लिकेशन टूल की सूची लेता है और उन्हें नाम से कॉल करता है। हर टूल ठीक क्या कर सकता है, यह server नियंत्रित करता है।
Claude Code में MCP server कैसे जोड़ें?
claude mcp add <name> -- <command> चलाएँ। HotKV के लिए यह claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379 है। बाद में claude mcp list से पुष्टि करें कि वह रजिस्टर हो गया है।
क्या HotKV MCP server को AI असिस्टेंट को देना सुरक्षित है?
यह असिस्टेंट के कर सकने वाले काम को सीमित करता है। यह 28 तय टूल देता है और कोई मनमाना कमांड नहीं, इसे read-only बनाया जा सकता है, एक namespace तक सीमित किया जा सकता है और यह नतीजों के आकार पर सीमा लगाता है। यह स्टोर किए गए टेक्स्ट को भरोसेमंद नहीं बना सकता, और HTTP ट्रांसपोर्ट में प्रमाणीकरण नहीं है, इसलिए उसे localhost पर रखें।
क्या HotKV MCP server Cursor और VS Code के साथ काम करता है?
README उन क्लाइंट में Cursor और VS Code को गिनाता है जिनके लिए यह बना है, और कोई भी क्लाइंट जो stdio पर MCP server शुरू कर सकता है उसे चला सकता है। Cursor और Claude Desktop ऊपर दिखाए अनुसार mcpServers फ़ाइल पढ़ते हैं। दूसरे क्लाइंट उस सेटिंग को अलग नाम देते हैं, इसलिए अपने क्लाइंट का दस्तावेज़ीकरण देखें। हमने हर क्लाइंट पर परीक्षण नहीं किया है।
क्या hotkv-mcp इस्तेमाल करने के लिए HotKV लाइसेंस चाहिए?
Server खुद Apache-2.0 है और key, hash और list टूल बिना लाइसेंस के काम करते हैं। मेमोरी, प्रॉम्प्ट रजिस्ट्री और दस्तावेज़ खोज वाले टूल को ऐसा HotKV लाइसेंस चाहिए जिसमें AI इंजन शामिल हों।
क्या असिस्टेंट अर्थ के आधार पर खोज सकता है?
इस server के ज़रिए नहीं। दस्तावेज़ खोज कीवर्ड की प्रासंगिकता से रैंक करती है ताकि उसे embedding मॉडल की ज़रूरत न पड़े, और semantic मेमोरी को टूल के रूप में उपलब्ध नहीं कराया गया है। अर्थ के आधार पर recall के लिए अपनी embeddings के साथ HotKV क्लाइंट लाइब्रेरी इस्तेमाल करें।
क्या मैं असिस्टेंट को एक प्रोजेक्ट की मेमोरी तक सीमित कर सकता हूँ?
हाँ। Server को --namespace और उस प्रोजेक्ट के prefix के साथ शुरू करें, जैसे --namespace project-x। असिस्टेंट को prefix कभी दिखता नहीं और वह उससे बाहर के नामों तक नहीं पहुँच सकता। हर प्रोजेक्ट के लिए अलग prefix इस्तेमाल करें, और ऐसा prefix न चुनें जो किसी दूसरे की शुरुआत हो।
hotkv-mcp को HTTP पर कैसे चलाऊँ?
इसे hotkv-mcp --transport streamable-http --host 127.0.0.1 --port 8000 से शुरू करें। यह /mcp पर सेवा देता है और कॉल करने वालों को प्रमाणित नहीं करता, इसलिए इसे localhost पर रखें या ऐसे reverse proxy के पीछे रखें जो प्रमाणित करे। इसे अपना namespace दें, और जहाँ क्लाइंट को सिर्फ़ पढ़ना है वहाँ --read-only इस्तेमाल करें।
MCP server की जगह क्लाइंट लाइब्रेरी कब इस्तेमाल करूँ?
जो असिस्टेंट पहले से MCP बोलते हैं, उनके लिए MCP server इस्तेमाल करें। अपने एप्लिकेशन कोड के लिए क्लाइंट लाइब्रेरी से HotKV को कॉल करें, जो embedding के ज़रिए semantic recall भी देती है, जो 28 टूल में नहीं है।



बातचीत आगे बढ़ाएँ
टिप्पणियाँ
तरीके के बारे में कोई सवाल है? आपके हार्डवेयर पर नतीजा अलग आया? जो मिला, वह साझा करें। टिप्पणियाँ दिखने से पहले जाँची जाती हैं।