Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Search your Mac's files by name and by text inside documents. Local index, Korean-aware.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"lupa": {
"command": "npx",
"args": [
"-y",
"lupa-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add lupa -- npx -y lupa-mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"lupa": {
"command": "npx",
"args": [
"-y",
"lupa-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"lupa": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"lupa-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub under71 ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.3.1) เข้า registry 13 วันที่ผ่านมา
โปรแกรมที่รองรับ 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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Let your AI agent search the documents on your Mac — by what's written inside them.
An MCP server for Lupa, a macOS file search app with its own index. Your agent asks Lupa; Lupa answers from a local index in ~30 ms. Nothing touches the network.
"find the contract that mentions the penalty clause"
↓ lupa_search → ranked paths + matching snippets lupa_read → the document's text, without opening the file
Searches file names and document contents: PDF, Word, Excel, PowerPoint, plain text, Hangul HWP/HWPX, and scanned PDFs read with OCR.
find / grep / mdfind | lupa-mcp | |
|---|---|---|
| Searches inside PDF, DOCX, HWP | no | yes |
| Scanned documents (OCR) | no | yes |
| Korean partial words and particles | poorly | yes — 보호정책 finds 정보보호정책서.hwp |
| Speed on a large disk | seconds | ~30 ms (indexed) |
| Agent needs file system access | yes | no — Lupa reads the files, not your agent |
That last row is the point. Your agent gets document contents without you granting it access to your disk.
The Lupa app must be installed — this server reads the index that Lupa builds; it does not index anything itself.
macOS only.
Claude Code
claude mcp add lupa -- npx -y lupa-mcp
Claude Desktop / Cursor / any MCP client — add to the client's MCP config:
{
"mcpServers": { "lupa": { "command": "/bin/zsh", "args": ["-lc", "npx -y lupa-mcp"] } } }
That's it. No API key, no account, no configuration.
Why `/bin/zsh -lc`? GUI apps don't inherit your shell's PATH, so a bare
"command": "npx"fails to start withenv: npx: No such file or directory
(measured on Claude Desktop and Aside). A login shell finds
npxwherever it lives —
Homebrew, nvm, or a system install. In a terminal-based client (Claude Code, Codex)
plain
npx -y lupa-mcpis fine.
Agents: don't run `lupa-search` through your shell. Sandboxed agent shells
(Aside, Codex) kill the App Store-signed CLI at launch — exit code 133 or 134.
Register this MCP server instead; it starts outside that sandbox.
Full guide: https://lupa.kr/agents.html
lupa_search| argument | default | meaning |
|---|---|---|
query | — | see syntax below |
limit | 10 | results to return (max 50) |
names_only | false | file names only, ignore contents (faster) |
snippet_chars | 160 | truncate each snippet (0 = none) |
lupa_readReturns the text Lupa already extracted from a file — cheaper than reading the original, and it works for formats your agent cannot parse. Requires Lupa 2.0 or later.
| argument | default | meaning |
|---|---|---|
path | — | absolute path, as returned by lupa_search |
max_chars | 8000 | cap the returned text (0 = no limit) |
word1 word2 files matching ALL words rank first
n:word file name only (name:, 이름:, 文件名:) c:word document content only (content:, 내용:, 内容:) f:word folder path contains (폴더:, 文件夹:) -word exclude "exact phrase" literal match .pdf *.mp3 report* extension / wildcard kind:document document · pdf · hwp · image · video · audio · code · archive · app size:>10mb size:<1mb date:today date:week · date:month · date:7d · date:2026-06
Korean and Chinese prefixes work too (종류: 크기: 날짜: / 种类: 大小: 日期:).
Korean is handled properly — partial words inside compounds and attached particles both match, which is what Spotlight gets wrong.
Every tool call is recorded on your Mac so you can see what an agent searched for and which files it was shown:
~/Library/Logs/Lupa/mcp-audit.jsonl
Each line has the time, the calling client (e.g. Claude Code, Cursor), the tool, the query or path, the paths returned, and whether it succeeded. Snippets and document text are not logged. The file is readable only by you (0600) and never leaves the Mac.
Lines are hash-chained: each entry includes the hash of the previous one, so editing or removing a line is detected. This makes the log *tamper-evident*, not tamper-proof — deleting the whole file and starting over is still possible.
npx lupa-mcp audit # last 20 calls
npx lupa-mcp audit -n 100 npx lupa-mcp audit --verify # exit 0 if the chain is intact, 1 if a line was changed or removed
Turn it off with LUPA_MCP_AUDIT=off, or move it with LUPA_MCP_AUDIT_PATH=/path/to/file.jsonl.
Everything runs on your Mac. Lupa has no network code at all, and this server only launches Lupa's bundled command-line tool and passes the results to your agent. Nothing is uploaded, and there is no telemetry.
lupa_read truncates long files.LUPA_SEARCH_PATH to the lupa-search binary inside the app bundle.| message | fix |
|---|---|
| "Lupa를 찾을 수 없습니다" / not found | Install Lupa from the Mac App Store |
| "검색 인덱스가 없습니다" | Open Lupa, add folders, wait for indexing |
| "본문 읽기를 지원하지 않습니다" | Update Lupa to 2.0 or later |
| No results for a file you know exists | Its folder may not be registered in Lupa |
MIT