Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
SQLite-backed MCP server for persistent memory, full-text retrieval, and graph traversal.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@j0hanz/memory-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add memory -- npx -y @j0hanz/memory-mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@j0hanz/memory-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"memory": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@j0hanz/memory-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub j0hanz ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.7.0) เข้า registry 8 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี 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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
A SQLite-backed MCP server for persistent memory storage, full-text retrieval, and relationship graph traversal.
Memory MCP provides a local, persistent memory layer for MCP-enabled assistants. It stores SHA-256-addressed memory items in SQLite with FTS5-powered full-text search, a directed relationship graph, BFS recall traversal, and token-budget-aware context retrieval — all accessible over stdio transport with no external dependencies.
retrieve_context) selects memories that fit a caller-specified token budget — no manual pagination needed.internal://instructions (Markdown guide) and memory://memories/{hash} URI template with hash auto-completion.SIGINT, SIGTERM) and no HTTP endpoints. |>=24.Use the npm package directly with npx — no installation required:
{
"mcpServers": { "memory-mcp": { "command": "npx", "args": ["-y", "@j0hanz/memory-mcp@latest"] } } }
[!TIP]
The server uses stdio transport only; no HTTP endpoint is exposed. Stdout must not be polluted by custom logging.
Or run with Docker:
docker run --rm -i ghcr.io/j0hanz/memory-mcp:latest
Install in VS Code
Workspace file .vscode/mcp.json:
{
"servers": { "memory-mcp": { "command": "npx", "args": ["-y", "@j0hanz/memory-mcp@latest"] } } }
CLI:
code --add-mcp '{"name":"memory-mcp","command":"npx","args":["-y","@j0hanz/memory-mcp@latest"]}'
Install in VS Code Insiders
CLI:
code-insiders --add-mcp '{"name":"memory-mcp","command":"npx","args":["-y","@j0hanz/memory-mcp@latest"]}'
Install in Cursor
~/.cursor/mcp.json:
{
"mcpServers": { "memory-mcp": { "command": "npx", "args": ["-y", "@j0hanz/memory-mcp@latest"] } } }
Install in Claude Desktop / Claude Code
claude_desktop_config.json:
{
"mcpServers": { "memory-mcp": { "command": "npx", "args": ["-y", "@j0hanz/memory-mcp@latest"] } } }
CLI:
claude mcp add memory-mcp -- npx -y @j0hanz/memory-mcp@latest
Install in Windsurf
MCP config:
{
"mcpServers": { "memory-mcp": { "command": "npx", "args": ["-y", "@j0hanz/memory-mcp@latest"] } } }
Run with Docker
# Pull and run (stdio mode)
docker run --rm -i \ -e MEMORY_DB_PATH=/data/memory.db \ -v memory-data:/data \ ghcr.io/j0hanz/memory-mcp:latest
MCP client config:
{
"mcpServers": { "memory-mcp": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "MEMORY_DB_PATH=/data/memory.db", "-v", "memory-data:/data", "ghcr.io/j0hanz/memory-mcp:latest" ] } } }
src/ must update README.md and affected mcp/ mirror pages in the same PR.https://modelcontextprotocol.io/specification/2025-11-25/... links for protocol references; avoid latest and mixed legacy targets.src/server.ts.src/tools/index.ts, src/resources/index.ts, and src/prompts/index.ts.src/instructions.md match runtime behavior.npm run type-check, npm run test:fast, npm run build.| Tool | Category | Notes |
|---|---|---|
store_memory | Write | Idempotent by content+sorted tags hash |
store_memories | Write | Batch (1–50), transaction-wrapped |
get_memory | Read | Hash lookup |
update_memory | Write | Returns old_hash + new_hash |
delete_memory | Write | Cascades relationship deletion |
delete_memories | Write | Batch (1–50), transaction-wrapped |
search_memories | Read | FTS5 + importance/type filters + cursor |
create_relationship | Write | Idempotent directed edge creation |
delete_relationship | Write | Deletes exact directed edge |
get_relationships | Read | Direction filter + linked memory fields |
recall | Read | FTS5 seed + BFS traversal (depth 0–3) |
retrieve_context | Read | Token-budget-aware context retrieval |
memory_stats | Read | Store aggregates and type breakdown |
store_memoryStore a new memory with content, tags, and optional type/importance. Idempotent — storing the same content+tags returns the existing hash with created: false.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
content | string | Yes | — | Memory content (1–100000 chars) |
tags | string[] | Yes | — | 1–100 tags, each max 50 chars, no whitespace |
memory_type | enum | No | general | general, fact, plan, decision, reflection, lesson, error, gradient |
importance | integer | No | 0 | Priority 0–10 |
Returns: { hash, created }
store_memoriesStore multiple memories in one transaction (max 50 items).
| Name | Type | Required | Description |
|---|---|---|---|
items | Array | Yes | 1–50 items, each with content, tags, optional memory_type, optional importance |
Returns: { items, succeeded, failed }
get_memoryRetrieve one memory by its SHA-256 hash.
| Name | Type | Required | Description |
|---|---|---|---|
hash | string | Yes | 64-char lowercase SHA-256 hex |
Returns: Memory or { ok: false, error } on E_NOT_FOUND.
update_memoryUpdate content and optionally tags for an existing memory. Returns both hashes.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
hash | string | Yes | — | Existing memory hash |
content | string | Yes | — | Replacement content |
tags | string[] | No | Existing tags | Replacement tags |
Returns: { old_hash, new_hash }
delete_memoryDelete one memory by hash. Cascades to related relationship rows.
| Name | Type | Required | Description |
|---|---|---|---|
hash | string | Yes | Memory hash |
Returns: { hash, deleted }
delete_memoriesDelete multiple memories by hash in one transaction.
| Name | Type | Required | Description |
|---|---|---|---|
hashes | string[] | Yes | 1–50 memory hashes |
Returns: { items, succeeded, failed }
search_memoriesFull-text search over memory content and tags using FTS5. Supports importance and type filters with cursor pagination.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | — | Search text (1–1000 chars) |
limit | integer | No | 20 | Results per page (1–100) |
cursor | string | No | — | Pagination cursor from previous response |
| min_importance | integer | No | — | Only return memories
ตัดมาแค่ช่วงต้น อ่านต่อใน repo