Un server MCP este cea mai simplă cale de a oferi unui asistent IA o memorie care durează mai mult decât un singur chat. Claude Code, Cursor și clienții similari pierd contextul unui chat când acesta se încheie. Să le dați acces direct la baza de date pentru a repara asta este riscant. hotkv-mcp este serverul nostru MCP open source pentru HotKV. Oferă unui asistent un set fix de unelte pentru note, istoricul conversației, un jurnal de evenimente, șabloane de prompturi și căutare în documente. Nu oferă nimic altceva.
Pe scurt.
hotkv-mcpeste un server MCP Apache-2.0 care conectează Claude Code, Cursor, VS Code sau propriul agent la un server HotKV prin 28 de unelte fixe. Nu există nicio unealtă care să ruleze o comandă arbitrară, deci asistentul nu poate șterge date sau schimba configurația. Un mod numai-citire elimină fiecare unealtă de scriere, iar un spațiu de nume limitează agentul la un singur prefix de chei. Instalați-l cupip install hotkv-mcpsau rulați-l cuuvx.
Ce este Model Context Protocol
Model Context Protocol, sau MCP, este un standard deschis pentru conectarea aplicațiilor IA la sisteme externe, precum surse de date, unelte și fluxuri de lucru. Introducerea proiectului îl compară cu un port USB-C pentru aplicațiile IA. În termeni MCP, aplicația este clientul, iar fiecare sistem la care se conectează este expus de un server.
Pentru memorie, asta înseamnă că asistentul apelează o unealtă cu nume, de exemplu una care salvează o notă. Serverul decide ce are voie să facă acea unealtă. Modelul nu primește niciodată o conexiune proprie la baza de date.
Ce expune serverul MCP HotKV
Serverul învelește memoria agenților din HotKV, registrul de prompturi și căutarea în documente în 28 de unelte. Fiecare unealtă declară în adnotările ei MCP dacă doar citește, scrie sau șterge. Un client poate atunci să ceară aprobare înainte de cele distructive.
| Grup | Unelte |
|---|---|
| Server | server_info |
| Chei | get, set, delete, key_info, scan |
| Hash-uri și liste | hash_get, hash_set, list_range, list_push |
| Memorie conversațională | memory_append_message, memory_get_messages, memory_clear_messages |
| Note de lucru | memory_set_note, memory_get_note, memory_list_notes |
| Jurnal de evenimente și rezumat | memory_log_event, memory_query_events, memory_set_summary, memory_get_summary |
| Registru de prompturi | prompt_save, prompt_get, prompt_versions, prompt_list |
| Căutare în documente | rag_create, rag_ingest, rag_search, rag_list |
Uneltele de memorie corespund stocurilor descrise în memoria agenților IA, adică istoricul conversației, notele de lucru și jurnalul de evenimente. Regăsirea semantică prin embedding nu este expusă. rag_search clasifică după relevanța cuvintelor-cheie, deci nu are nevoie de ea.
Uneltele pentru chei, hash-uri și liste funcționează cu orice server HotKV. Uneltele de memorie, de prompturi și de căutare în documente folosesc motoarele IA ale HotKV, care cer o licență ce le include. Fără ea, acele unelte returnează un mesaj că serverul nu este licențiat pentru funcție. Uneltele pentru chei continuă să funcționeze. Instanțele HotKV Cloud Performance și Scale includ motoarele IA, așa cum descrie pagina IA.
Instalare și conectare
Serverul cere Python 3.10 sau mai nou. A fost scris pentru serverul HotKV 0.3.0 și pachetul oficial hotkv-client, iar versiunea 1.0.0 se află pe PyPI. Instalați-l cu pip sau rulați-l fără instalare cu uv.
pip install hotkv-mcp
uvx hotkv-mcp --url hotkv://localhost:6379
Claude Code
Adăugați-l cu o singură comandă. -- separă opțiunile proprii ale lui Claude Code de comanda care pornește serverul, așa cum descrie documentația MCP din Claude Code.
claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379
Cursor și Claude Desktop
Clienții care citesc un fișier mcpServers preiau același server ca intrare JSON. Țineți parola în variabila de mediu HOTKV_URL sau în depozitul de secrete al clientului. O linie de comandă este vizibilă altor utilizatori ai mașinii. Folosiți hotkvs:// pentru o conexiune TLS.
{
"mcpServers": {
"hotkv": {
"command": "uvx",
"args": ["hotkv-mcp", "--read-only"],
"env": { "HOTKV_URL": "hotkv://:your-password@localhost:6379" }
}
}
}
Verificați că funcționează
Rulați claude mcp list ca să confirmați că serverul este înregistrat. Apoi cereți asistentului să apeleze unealta server_info. Ea returnează versiunea HotKV și consumul de memorie, plus numărul de chei când nu este setat niciun spațiu de nume. Raportează și dacă serverul este numai-citire și la ce spațiu de nume este limitat. Asta confirmă că măsurile dvs. de protecție au intrat în vigoare.
Țineți agentul în limite sigure
Un model care poate apela unelte poate fi convins și să le folosească greșit, deci limitele contează mai mult decât funcțiile.
Fără comenzi arbitrare
Nu există nicio unealtă care să ruleze o comandă brută. Asistentul nu poate goli o bază de date și nu poate schimba configurația serverului, pentru că niciuna dintre cele 28 de unelte nu face asta. Poate citi orice cheie la care ajung uneltele, motiv pentru care spațiul de nume de mai jos contează.
Mod numai-citire
--read-only elimină fiecare unealtă care scrie, inclusiv set, delete, hash_set, list_push, uneltele de memorie care adaugă sau șterg, prompt_save, rag_create și rag_ingest. Agentul nici măcar nu le vede. Folosiți-l pentru asistenți care ar trebui să consulte memoria, dar niciodată să o schimbe.
Spații de nume și plafoane de dimensiune
--namespace PREFIX stochează totul sub acel prefix. Agentul nu vede niciodată prefixul și nu poate ajunge la alte nume. Dați fiecărui agent un prefix care nu este începutul altuia. Folosiți agent-a și agent-b, nu agent și agent:b, altfel cel mai scurt poate ajunge la numele celui mai lung.
Și rezultatele sunt plafonate. --max-value-bytes taie valorile lungi și le marchează ca trunchiate, cu o valoare implicită de 65.536 de octeți. --max-items limitează câte chei, elemente de listă sau rezultate returnează un apel, 200 implicit. O singură valoare uriașă nu poate deci să inunde contextul modelului. Citirea unui hash întreg nu este plafonată pe elemente, deci țineți hash-urile mari în afara spațiului de nume al unui agent.
Transportul HTTP nu are autentificare
Transportul stdio implicit este pornit de client ca subproces. Pentru utilizare partajată puteți rula hotkv-mcp --transport streamable-http, care ascultă pe 127.0.0.1:8000 la /mcp. Nu autentifică apelanții. Țineți-l pe localhost sau puneți-l în spatele unui reverse proxy care autentifică și dați-i propriul spațiu de nume.
Alegerea unei configurații pentru o echipă
Flagurile potrivite depind de scopul fiecărui agent. Fiecare opțiune de mai jos este un flag de linie de comandă. --read-only și --namespace au și variabile de mediu, HOTKV_MCP_READ_ONLY și HOTKV_MCP_NAMESPACE.
| Configurație | Flaguri | Folosiți-o când |
|---|---|---|
| Probă individuală | --namespace trial | Încercați uneltele pe un server local |
| Cititor de note partajate | --read-only --namespace team-docs | Un asistent ar trebui să consulte prompturi și note, dar niciodată să le schimbe |
| Un singur scriitor per agent | --namespace agent-a pentru fiecare agent | Mai mulți agenți își țin propria memorie și nu trebuie să o vadă pe a celorlalți |
| Serviciu partajat | --transport streamable-http în spatele unui proxy care autentifică | O echipă partajează un server, iar dvs. controlați cine îl poate accesa |
Porniți de la rândul cel mai restrictiv care face treaba. Este ușor să lărgiți accesul mai târziu și greu să luați înapoi ce a scris deja un agent.
O primă sesiune, pas cu pas
O probă scurtă arată ce fac măsurile de protecție, înainte să încredințați serverului note reale. Folosiți un spațiu de nume de unică folosință și un server HotKV local, licențiat pentru motoarele IA, pentru că uneltele de memorie nu funcționează fără acea licență.
- Conectați-vă cu un spațiu de nume. Rulați
claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379 --namespace trial. - Verificați limitele. Cereți asistentului să apeleze
server_infoși să raporteze spațiul de nume și dacă serverul este numai-citire. Ar trebui să spunătrialși nu numai-citire. - Salvați o notă. Cereți-i să rețină că site-ul de staging se află la o anumită adresă, sub o notă numită după site. Asistentul apelează
memory_set_note, iar sesiunea este creată la prima utilizare. - Citiți-o într-un chat nou. Începeți o conversație nouă și întrebați ce note există pentru acea sesiune. Apelează
memory_list_notesșimemory_get_note, iar nota este încă acolo. - Înregistrați o decizie. Cereți-i să noteze o decizie în jurnalul de evenimente. Apelează
memory_log_event, iarmemory_query_eventso aduce înapoi mai târziu. - Eliminați accesul de scriere. Eliminați intrarea veche, reconectați-vă cu
--read-onlyși repetați pasul 4. Citirea funcționează în continuare, iar uneltele care scriu nu mai sunt oferite.
Dacă pasul 6 se comportă așa cum este descris, ați văzut cele două controale care contează cel mai mult, spațiul de nume și modul numai-citire.
Tratați tot ce stochează asistentul ca text nesigur atunci când este citit înapoi, așa cum explică articolul despre memorie în tratarea textului stocat ca nesigur. Notele scrise din pagini web pot purta instrucțiuni.
Depanare
- „This HotKV server is not licensed for that feature.” Uneltele de memorie, de prompturi și de căutare în documente cer o licență HotKV care include motoarele IA. Uneltele pentru chei, hash-uri și liste continuă să funcționeze fără ea.
- Conexiunea eșuează. Verificați schema URL-ului.
hotkv://,hotkvs://(TLS),redis://șirediss://funcționează toate, iar parola se pune în URL cahotkv://:password@host:6379. - O valoare vine tăiată. Rezultatul este marcat ca trunchiat când depășește
--max-value-bytes. Măriți limita sau stocați valori mai mici. - Lipsește o unealtă de scriere. Căutați
--read-onlyîn argumentele serverului sauHOTKV_MCP_READ_ONLYîn mediul lui. - Asistentul nu găsește un nume salvat mai devreme. Verificați că a folosit aceeași sesiune sau același nume de agent și că serverul rulează cu același spațiu de nume ca înainte.
uvxnu este găsit. Instalați uv sau instalați pachetul cupipși porniți directhotkv-mcp.
Întrebări frecvente
Ce este un server MCP?
Un server MCP este un program care expune unelte, date sau fluxuri de lucru unei aplicații IA prin Model Context Protocol. Aplicația, numită client, listează uneltele și le apelează după nume. Serverul controlează exact ce poate face fiecare unealtă.
Cum adaug un server MCP în Claude Code?
Rulați claude mcp add <nume> -- <comandă>. Pentru HotKV, asta înseamnă claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379. Folosiți apoi claude mcp list ca să confirmați că este înregistrat.
Este sigur serverul MCP HotKV de dat unui asistent IA?
Limitează ce poate face un asistent. Oferă 28 de unelte fixe și nicio comandă arbitrară, poate fi făcut numai-citire, poate fi limitat la un singur spațiu de nume și plafonează dimensiunea rezultatelor. Nu poate face textul stocat demn de încredere, iar transportul HTTP nu are autentificare, deci țineți-l pe localhost.
Funcționează serverul MCP HotKV cu Cursor și VS Code?
README-ul listează Cursor și VS Code printre clienții pentru care este destinat, iar orice client care poate porni un server MCP prin stdio îl poate rula. Cursor și Claude Desktop citesc un fișier mcpServers, așa cum este arătat mai sus. Alți clienți numesc diferit acea setare, deci verificați documentația clientului dvs. Nu am testat fiecare client.
Am nevoie de o licență HotKV ca să folosesc hotkv-mcp?
Serverul în sine este Apache-2.0, iar uneltele pentru chei, hash-uri și liste funcționează fără licență. Uneltele de memorie, de registru de prompturi și de căutare în documente cer o licență HotKV care include motoarele IA.
Poate asistentul să caute după sens?
Nu prin acest server. Căutarea în documente clasifică după relevanța cuvintelor-cheie, ca să nu aibă nevoie de un model de embedding, iar memoria semantică nu este expusă ca unealtă. Pentru regăsire după sens, folosiți biblioteca client HotKV cu propriile embeddinguri.
Pot limita asistentul la memoria unui singur proiect?
Da. Porniți serverul cu --namespace și un prefix pentru acel proiect, de exemplu --namespace project-x. Asistentul nu vede niciodată prefixul și nu poate ajunge la nume din afara lui. Folosiți un prefix diferit pentru fiecare proiect și evitați unul care este începutul altuia.
Cum rulez hotkv-mcp prin HTTP?
Porniți-l cu hotkv-mcp --transport streamable-http --host 127.0.0.1 --port 8000. Servește /mcp și nu autentifică apelanții, deci țineți-l pe localhost sau puneți-l în spatele unui reverse proxy care autentifică. Dați-i propriul spațiu de nume și folosiți --read-only acolo unde clienții trebuie doar să citească.
Când ar trebui să folosesc biblioteca client în loc de serverul MCP?
Folosiți serverul MCP pentru asistenți care vorbesc deja MCP. Pentru propriul cod de aplicație, apelați HotKV cu biblioteca client, care expune și regăsirea semantică prin embedding, ceva ce cele 28 de unelte lasă deoparte.



Continuați conversația
Comentarii
Aveți întrebări despre metodă? Ați obținut un alt rezultat pe hardware-ul dvs.? Spuneți-ne ce ați aflat. Comentariile sunt verificate înainte de a apărea.