Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Local-first graph memory for AI assistants with SQLite, semantic search, and MCP tools.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
MEMORY_DB_PATH, MARKDOWN_SOURCE, MEMORY_PORTต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"memory-engine": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MEMORY_DB_PATH",
"-e",
"MARKDOWN_SOURCE",
"-e",
"MEMORY_PORT",
"ghcr.io/simoneb79/memory-engine-mcp:1.5.3"
],
"env": {
"MEMORY_DB_PATH": "ใส่ค่าของคุณ",
"MARKDOWN_SOURCE": "ใส่ค่าของคุณ",
"MEMORY_PORT": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add memory-engine --env MEMORY_DB_PATH='ใส่ค่าของคุณ' --env MARKDOWN_SOURCE='ใส่ค่าของคุณ' --env MEMORY_PORT='ใส่ค่าของคุณ' -- docker run -i --rm -e MEMORY_DB_PATH -e MARKDOWN_SOURCE -e MEMORY_PORT ghcr.io/simoneb79/memory-engine-mcp:1.5.3เติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"memory-engine": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MEMORY_DB_PATH",
"-e",
"MARKDOWN_SOURCE",
"-e",
"MEMORY_PORT",
"ghcr.io/simoneb79/memory-engine-mcp:1.5.3"
],
"env": {
"MEMORY_DB_PATH": "ใส่ค่าของคุณ",
"MARKDOWN_SOURCE": "ใส่ค่าของคุณ",
"MEMORY_PORT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"memory-engine": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MEMORY_DB_PATH",
"-e",
"MARKDOWN_SOURCE",
"-e",
"MEMORY_PORT",
"ghcr.io/simoneb79/memory-engine-mcp:1.5.3"
],
"env": {
"MEMORY_DB_PATH": "ใส่ค่าของคุณ",
"MARKDOWN_SOURCE": "ใส่ค่าของคุณ",
"MEMORY_PORT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
MEMORY_DB_PATH envMARKDOWN_SOURCE envMEMORY_PORT envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub SimoneB79 ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.5.3) เข้า registry 4 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Docker ในเครื่องด้วย
ในหมวดเดียวกันมี Context7, Codebase Memory, Exa
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
🧠 Memory Engine MCP
Local-first, graph-aware long-term memory for AI assistants.
SQLite + semantic search + knowledge graph + MCP tools for agents that need continuity.
Works with Claude Desktop · Claude Code · Cursor · Cline · Windsurf · OpenClaw · any MCP client
Most MCP memory servers are either simple key-value stores or plain text search wrappers.
Memory Engine is different: it models memory as typed atoms connected by typed bonds, then retrieves context with a hybrid ranking pipeline that combines:
The goal is not just storage. The goal is a memory system that can recall, connect, decay, curate, and learn over time.
nomic-embed-text.AI assistant / MCP client
│ ▼ FastMCP server — 35 tools │ ▼ Memory engine — hybrid ranking, graph recall, decay, learning │ ├── SQLite — atoms, bonds, FTS5, JSON metadata, versions ├── Ollama — optional local embeddings ├── Curator — conservative maintenance └── Session watcher — OpenClaw SQLite + JSONL fallback
| Tool | Purpose |
|---|---|
remember | Create or update an atom |
recall | Smart hybrid recall with graph expansion |
working_set | Build a task-oriented context pack |
semantic_search | Pure semantic search |
get_atom | Read one atom with bonds |
list_atoms | Browse atoms by domain/type/status |
merge_atoms | Merge duplicate atoms |
export_atom | Export one atom as markdown |
| Tool | Purpose |
|---|---|
link / unlink | Create or remove typed bonds |
search_graph | Traverse the graph from one atom |
suggest_bonds | Suggest bonds for one atom |
suggest_bonds_all | Suggest or create bonds in bulk |
| Tool | Purpose |
|---|---|
curator_run | Conservative curation pass |
cognitive_status | Graph and memory health metrics |
learning_run | Detect contradictions, weak atoms, merge candidates, gaps |
ask_pending / answer_human | Human-in-the-loop clarification |
decay_run | Run decay cycle |
cleanup_sessions | Remove expired session atoms |
cleanup_duplicates | Remove duplicate session atoms |
reindex_embeddings | Rebuild embeddings |
| Tool | Purpose |
|---|---|
error_check | Check past failures before doing a task |
error_log | Record a mistake and the correction |
error_list | Browse unresolved/resolved errors |
preference_search | Search structured preferences |
| Tool | Purpose |
|---|---|
import_markdown | Import markdown notes into atoms |
memory_summary | 3-level summary: global → domain → detail |
stats | Database statistics |
version | Server version |
recall_session | Search one OpenClaw session |
session_summary | Summarize one OpenClaw session |
memory_contradict | Supersede an old atom with a newer contradictory one |
list_contradictions | List explicit contradiction/supersession records |
classify_memory_tier | Infer the 3-tier class (episodic/semantic/procedural) |
memory_impact | Impact analysis: what depends on this atom |
| Tool | Purpose |
|---|---|
backup_database | Create, list, verify, or clean up SQLite snapshots |
restore_database | Restore from a backup (with automatic safety backup) |
export_all | Export all memory data as portable JSON |
import_data | Import from JSON (merge or replace mode) |
Memory Engine includes an optional web UI for graph exploration, atom inspection, contradiction browsing, and impact analysis.
# In docker-compose.yml, add:
Or run standalone:
python3 web_ui.py
Web UI: interactive graph, atom details, contradiction browser, stats dashboard
# docker-compose.yml
services: memory-engine: image: ghcr.io/simoneb79/memory-engine-mcp:2.1.0 ports:
volumes: memory-data:
docker compose up -d
Pin the version. Use an explicit tag like
:1.7.0in production.
Avoid
:latest— it can change without notice.
git clone https://github.com/SimoneB79/memory-engine-mcp.git
cd memory-engine-mcp cp docker-compose.yml docker-compose.local.yml
docker compose -f docker-compose.local.yml up -d --build
Default endpoint:
http://localhost:8085/sse
Example MCP client config:
{
"mcpServers": { "memory-engine": { "url": "http://localhost:8085/sse", "transport": "sse" } } }
See docs/INSTALL.md for Docker, local Python, Claude Desktop, Cursor, and OpenClaw examples.
python -m venv .venv
source .venv/bin/activate pip install -r requirements.txt python server.py
Main configuration file: config.json
Important environment variables:
| Variable | Default | Purpose |
|---|---|---|
MEMORY_DB_PATH | /data/memory.db | SQLite database path |
MARKDOWN_SOURCE | /workspace/memory | Markdown directory for import |
MEMORY_HOST | 127.0.0.1 | Server bind address (secure default) |
MEMORY_PORT | 8085 | SSE port |
MEMORY_API_TOKEN | _(none)_ | Optional API token for auth (see Security) |
OPENCLAW_AGENT_DB | _(none)_ | Preferred per-agent OpenClaw SQLite DB (schema 17) |
OPENCLAW_SESSIONS_DIR | /sessions | Legacy JSONL fallback when no agent DB is configured |
SESSION_DIGEST_DIR | /data/session_digests | Optional session digest output |
For the SQLite mount, WAL/SHM handling, filtering, and security boundary, see OpenClaw transcript ingestion.
Semantic search requires Ollama reachable from the container or host. Default:
{
"ollama": { "enabled": true, "host": "http://ollama:11434", "model": "nomic-embed-text" } }
If you do not use Ollama, set ollama.enabled to false; FTS recall still works.
Atoms have:
titlebodytype: fact, decision, event, preference, log, procedure, note, etc.domain: project or topic namespaceconfidenceweighttagsBonds connect atoms with relation types:
is_a · part_of · depends_on · contradicts · refines · derived_from · detail_of · related_to
remember(
title="Use PostgreSQL for analytics", body="SQLite is kept for local memory, PostgreSQL is used for multi-user analytics.", type="decision", domain="project:analytics", confidence=0.9, tags=["database", "architecture"] )
recall(query="what database did we choose for analytics?", limit=5)
working_set(
query="continue the analytics backend work", domain="project:analytics", limit=8, graph_depth=1 )
By default, Memory Engine runs in open mode (no auth) — safe for stdio or trusted local environments.
To enable API token auth:
// config.json
{ "security": { "api_token": "your-secret-token", "allow_remote": false } }
Or via environment variable:
MEMORY_API_TOKEN=your-secret-token
When auth is enabled:
Authorization: Bearer ?token= or Bearer header127.0.0.1 unless allow_remote: trueSee CHANGELOG.md for the full list of security features.
This repository is prepared for MCP discovery:
io.github.simoneb79/memory-engine-mcpserver.jsonDockerfilemcp.jsonSee docs/PUBLISHING.md for the publication checklist.
MIT — see LICENSE.
Made with 🧠 by SimoneB79