Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Scans RAG content/scraped pages for indirect prompt injection
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"prompt-injection-scanner": {
"command": "npx",
"args": [
"-y",
"@guardbee/mcp-prompt-injection-scanner"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add prompt-injection-scanner -- npx -y @guardbee/mcp-prompt-injection-scannerวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"prompt-injection-scanner": {
"command": "npx",
"args": [
"-y",
"@guardbee/mcp-prompt-injection-scanner"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"prompt-injection-scanner": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@guardbee/mcp-prompt-injection-scanner"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub GuardBee ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.2.0) เข้า registry 5 วันที่ผ่านมา
โปรแกรมที่รองรับ 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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
🇬🇧 English | 🇹🇷 Türkçe | 🇨🇳 中文 | 🇯🇵 日本語 | 🇰🇷 한국어 | 🇧🇷 Português | 🇪🇸 Español | 🇩🇪 Deutsch
An MCP (Model Context Protocol) server that scans content — a RAG chunk, a scraped web page, a document — for indirect prompt injection payloads.
ai-code-scanner and mcp-server-auditor scan code; this package scans data. In classic prompt injection, the attacker writes a malicious prompt themselves; in indirect prompt injection, the attacker never talks to the model at all — instead they embed instructions in a document, web page, or tool result the model will later read. The moment the model pulls this content into its context via a RAG retrieval or a web fetch, the embedded instruction appears to carry the same authority as the user's own instructions.
Telemetry is off by default. With
GUARDBEE_TELEMETRY=1it sends the server, tool, success, duration and short parameter values such as a file path; longer strings and fields likecontent,tokenorpasswordare replaced with a placeholder. See@guardbee/mcp-telemetry.
Web page/RAG document ──► prompt-injection-scanner ──► LLM context
│ ├─ Instruction override ("ignore all previous instructions", "önceki talimatları yok say") ├─ Role spoofing ("System:", <|im_start|>, [INST], ) ├─ Hidden text (zero-width, Unicode tag and bidi characters, display:none + instruction, HTML comment) ├─ Direct address ("Dear AI, ...") └─ Exfiltration (system prompt extraction request, data → URL instruction, templated img beacon)
@guardbee/guard-core, shared with @guardbee/mcp-security-proxy, so a phrase this scanner reports is the same phrase the proxy blocks at runtimerecommendation) — not just "found it"guardbee.ymldisplay:none modals are specifically tested{
"mcpServers": { "guardbee-prompt-injection-scanner": { "command": "npx", "args": ["-y", "@guardbee/mcp-prompt-injection-scanner"] } } }
npx @guardbee/mcp-prompt-injection-scanner scan ./knowledge-base --fail-on=high --format=sarif > results.sarif
| Tool | Description |
|---|---|
scan_text | Scans a given text/document snippet |
scan_file | Scans a single file |
scan_directory | Recursively scans a directory (e.g. a RAG knowledge base) (node_modules, .git, dist skipped automatically) |
list_patterns | Lists all supported patterns by category |
| Category | Pattern | Severity | What it means | ||
|---|---|---|---|---|---|
| instruction-override | instruction_override_phrase | high | A classic override phrase like "ignore/disregard/forget previous instructions" | ||
| instruction-override | instruction_override_tr | high | The Turkish form: "önceki talimatları yok say / unut / görmezden gel" | ||
| instruction-override | dan_mode | high | Asks for the "DAN mode" jailbreak persona | ||
| instruction-override | bypass_safety | high | Tells the model to bypass or disable its safety measures / guardrails | ||
| role-spoofing | system_role_spoof | medium | A fake "System:" role label at the start of a line in the content | ||
| role-spoofing | chat_template_marker_injection | high | Raw chat-template control tokens (`<\ | im_start\ | >, [INST]`) in the content |
| role-spoofing | system_tag | high | A tag that tries to pass data off as a system message | ||
| hidden-text | hidden_zero_width_chars | medium | Zero-width space/word-joiner (U+200B/U+2060) — text hidden from a human reviewer | ||
| hidden-text | unicode_tag_smuggling | critical | Invisible Unicode tag characters (U+E0000–E007F) carrying hidden text; flag emoji such as 🏴 are excluded | ||
| hidden-text | bidi_control_chars | medium | Bidi override/isolate characters that make text display in a different order than it is read | ||
| hidden-text | css_hidden_text_with_instruction | high | A display:none/white-on-white element containing instruction-like language | ||
| hidden-text | html_comment_instruction | high | An HTML comment containing instruction-like language | ||
| direct-address | direct_address_to_ai | medium | The content directly addresses "the AI"/"the assistant" | ||
| exfiltration | exfiltration_url_template_in_image | high | A markdown image URL with a {{...}}/${...} template — a data-exfil beacon | ||
| exfiltration | reveal_system_prompt_request | high | A sentence asking the model to reveal its system prompt | ||
| exfiltration | reveal_system_prompt_tr | high | The Turkish form: "sistem istemini göster" | ||
| exfiltration | send_data_to_url_instruction | critical | An explicit instruction ordering the model to send data to an external URL |
These are heuristic findings — a static text-pattern scan, not a semantic/intent analysis. Designed for a low false-positive rate (e.g. emoji ZWJ sequences and ordinary display:none modals are specifically excluded), but every finding should still be reviewed manually.
The patterns know attack phrases; a paraphrased, indirect or translated instruction slips past them. --judge also has a model read each file, in chunks, and reports instructions aimed at an agent as judge_semantic_injection (high). The finding carries judge: { model, version, confidence }, also in SARIF properties. The judge only adds findings.
GUARDBEE_JUDGE_URL=http://127.0.0.1:11434/v1 GUARDBEE_JUDGE_MODEL=qwen2.5:7b \
npx @guardbee/mcp-prompt-injection-scanner scan ./docs --judge
It is off unless configured. Since the content goes to the endpoint, a non-local one needs --judge-allow-remote and https. On GuardBee's judge benchmark (50 English and Turkish samples), the patterns catch 16% of the attacks and qwen2.5:7b all of them, with no false positives.
guardbee.yml)prompt-injection-scanner:
fail-on: high # any | critical | high | medium | low | none max-files: 5000 exclude:
npm run build
npm test # 45 unit tests
MIT — GuardBee
Questions, ideas, or a false positive? Start a thread in GitHub Discussions or open an issue. If GuardBee is useful to you, a ⭐ on the repository helps others find it.