Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Free open-source web search and page reading for LLMs, AI agents, and RAG.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
SEARCHFORGE_SEARXNG_URL, GITHUB_TOKEN, CROSSREF_MAILTO, BRAVE_SEARCH_API_KEYค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"searchforge": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SEARCHFORGE_SEARXNG_URL",
"-e",
"GITHUB_TOKEN",
"-e",
"CROSSREF_MAILTO",
"-e",
"BRAVE_SEARCH_API_KEY",
"ghcr.io/divyanshu-iitian/searchforge-mcp:0.2.0"
],
"env": {
"SEARCHFORGE_SEARXNG_URL": "ใส่ค่าของคุณ",
"GITHUB_TOKEN": "ใส่ค่าของคุณ",
"CROSSREF_MAILTO": "ใส่ค่าของคุณ",
"BRAVE_SEARCH_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add searchforge --env SEARCHFORGE_SEARXNG_URL='ใส่ค่าของคุณ' --env GITHUB_TOKEN='ใส่ค่าของคุณ' --env CROSSREF_MAILTO='ใส่ค่าของคุณ' --env BRAVE_SEARCH_API_KEY='ใส่ค่าของคุณ' -- docker run -i --rm -e SEARCHFORGE_SEARXNG_URL -e GITHUB_TOKEN -e CROSSREF_MAILTO -e BRAVE_SEARCH_API_KEY ghcr.io/divyanshu-iitian/searchforge-mcp:0.2.0เติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"searchforge": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SEARCHFORGE_SEARXNG_URL",
"-e",
"GITHUB_TOKEN",
"-e",
"CROSSREF_MAILTO",
"-e",
"BRAVE_SEARCH_API_KEY",
"ghcr.io/divyanshu-iitian/searchforge-mcp:0.2.0"
],
"env": {
"SEARCHFORGE_SEARXNG_URL": "ใส่ค่าของคุณ",
"GITHUB_TOKEN": "ใส่ค่าของคุณ",
"CROSSREF_MAILTO": "ใส่ค่าของคุณ",
"BRAVE_SEARCH_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"searchforge": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SEARCHFORGE_SEARXNG_URL",
"-e",
"GITHUB_TOKEN",
"-e",
"CROSSREF_MAILTO",
"-e",
"BRAVE_SEARCH_API_KEY",
"ghcr.io/divyanshu-iitian/searchforge-mcp:0.2.0"
],
"env": {
"SEARCHFORGE_SEARXNG_URL": "ใส่ค่าของคุณ",
"GITHUB_TOKEN": "ใส่ค่าของคุณ",
"CROSSREF_MAILTO": "ใส่ค่าของคุณ",
"BRAVE_SEARCH_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
SEARCHFORGE_SEARXNG_URL envCROSSREF_MAILTO envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub divyanshu-iitian ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: GITHUB_TOKEN, BRAVE_SEARCH_API_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.2.0) เข้า 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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
One local gateway. Intent-aware search. Clean Markdown. REST, MCP, CLI, and TypeScript.
Website · Quick start · Free tools · MCP · API · Design
SearchForge is a free, open-source web search API and MCP server for LLMs, AI agents, and retrieval-augmented generation (RAG) pipelines. It provides a predictable retrieval layer without forcing every project to integrate a paid search vendor. SearchForge routes each query to the right source, isolates provider failures, deduplicates URLs, fuses rankings, and turns public pages into LLM-ready Markdown.
It does not generate answers, hide citations, scrape public SearXNG instances, or send telemetry.
| Capability | Default source | Cost / credentials |
|---|---|---|
auto | Intent-routed source mix | No key by default |
web | Wikipedia; optional private SearXNG | No key / self-hosted |
code | GitHub repository search | No key; token optional |
academic | Crossref works and DOI metadata | No key |
community | Hacker News via Algolia | No key, community service |
read_url | Jina Reader | No key, currently rate-limited |
SearchForge starts with all no-key adapters enabled. auto is the default and routes code, research, and current/community intent to relevant sources while retaining a web fallback. A GitHub token only raises the public API quota, and Brave remains an optional keyed backend. Broad, independent web metasearch is provided by the included SearXNG stack.
npx --yes --package github:divyanshu-iitian/SearchForge \
searchforge search "latest open-source agent frameworks"
The first run downloads and builds the package from GitHub. Searches use intent-aware auto routing unless you select a category.
git clone https://github.com/divyanshu-iitian/SearchForge.git
cd SearchForge npm install npm run build
node dist/cli.js search "latest open-source agent frameworks" node dist/cli.js search "retrieval augmented generation" --category academic node dist/cli.js search "local LLM tooling" --category community node dist/cli.js read "https://example.com" node dist/cli.js doctor
docker compose up --build
curl -s http://localhost:3000/v1/search \
-H "content-type: application/json" \ -d '{"query":"open source vector databases","category":"web","limit":5}'
This starts SearchForge on port 3000 and a private, JSON-enabled SearXNG on port 8080. Before exposing the stack, change the SearXNG secret, set SEARCHFORGE_API_KEY, and terminate TLS at a trusted proxy.
searchforge search "latest open-source agent frameworks"
searchforge search "browser agent" --category code searchforge search "semantic reranking" --category academic --json searchforge search "Show HN search engine" --category community
The default auto category detects code, academic, and current/community signals and queries the matching source families alongside the web fallback. Explicit categories prevent irrelevant providers from being queried. An explicit providers list overrides category routing, which is useful for evaluations.
searchforge read "https://example.com/article"
read_url accepts public HTTP(S) URLs only. Credentials, localhost, private IP literals, and non-web protocols are rejected. Responses are size-bounded, timed out, and cached.
searchforge doctor
Doctor performs real, bounded probes and reports each provider's access tier, capability, latency, and error. A failed source produces degraded, not a misleading all-or-nothing status.
SearchForge exposes three stdio tools:
web_search — routed, citation-ready structured searchread_url — clean Markdown from a public URLsearch_status — live capability and latency report{
"mcpServers": { "searchforge": { "command": "node", "args": ["/absolute/path/to/SearchForge/dist/mcp.js"], "env": { "SEARCHFORGE_SEARXNG_URL": "http://localhost:8080" } } } }
The search and status tools return MCP structured content as well as readable text.
Run the MCP server straight from GitHub without a clone:
{
"mcpServers": { "searchforge": { "command": "npx", "args": [ "--yes", "--package", "github:divyanshu-iitian/SearchForge", "searchforge-mcp" ] } } }
SearchForge is also published in the official MCP Registry as io.github.divyanshu-iitian/searchforge. To run the registry-backed OCI image directly from any MCP client that supports a Docker command:
{
"mcpServers": { "searchforge": { "command": "docker", "args": [ "run", "--rm", "-i", "ghcr.io/divyanshu-iitian/searchforge-mcp:0.2.0" ] } } }
POST /v1/search
Content-Type: application/json
{ "query": "open source reranking models", "category": "academic", "limit": 8, "language": "en", "freshness": "month", "safeSearch": "moderate" }
{
"schemaVersion": "1.0", "query": "open source reranking models", "category": "academic", "results": [ { "title": "Example work", "url": "https://doi.org/10.0000/example", "snippet": "Authors · Publisher · journal-article", "source": "crossref", "sources": ["crossref"], "score": 0.016393 } ], "providers": [ { "provider": "crossref", "ok": true, "latencyMs": 241, "resultCount": 8 } ], "tookMs": 243, "cached": false }
POST /v1/read
Content-Type: application/json
{"url":"https://example.com/article"}
Other endpoints:
GET /healthz Process liveness
GET /v1/providers Configured capabilities and access tiers GET /v1/doctor Live dependency health
See the full OpenAPI contract.
import {
CrossrefProvider, GithubProvider, JinaReader, SearchForge, } from "searchforge-rag";
const forge = new SearchForge({ providers: [new GithubProvider(), new CrossrefProvider()], reader: new JinaReader(), timeoutMs: 8_000, });
const evidence = await forge.search({ query: "agentic retrieval", category: "academic", limit: 10, });
const page = await forge.read("https://example.com/research");
Until an npm release is published:
npm install github:divyanshu-iitian/SearchForge
| Provider | Capability | Access | Enabled |
|---|---|---|---|
| SearXNG | Web | Self-hosted, no vendor fee | SEARCHFORGE_SEARXNG_URL |
| Wikipedia | Web knowledge fallback | No key | Always |
| GitHub | Code repositories | No key; 60 unauthenticated REST requests/hour, search has tighter limits | Always |
| Crossref | Academic metadata | No key; mailto recommended | Always |
| HN Algolia | Community | No key; community-operated availability | Always |
| Jina Reader | URL to Markdown | No key; documented no-key quota currently 20 RPM | Always |
| Brave Search | Web | API key | BRAVE_SEARCH_API_KEY |
SearchForge intentionally does not configure public SearXNG instances. They often disable JSON or limit automated traffic; the Docker stack is the stable free path.
Agent / RAG / MCP client
| validate + route | +--------+---------+-----------+ | | | | web code academic community read_url | | | | | SearXNG GitHub Crossref Hacker News Jina Reader Wikipedia +--------+---------+-----------+ | normalize -> canonicalize -> deduplicate -> reciprocal-rank fusion | versioned evidence + provenance + per-source health
Each idempotent provider call has its own abortable timeout. One outage cannot erase healthy results. Tracking parameters are removed before deduplication, and every contributing provider remains in sources.
This capability-first design is inspired by Agent Reach. Agent Reach helps an agent operate many upstream tools directly; SearchForge complements that approach with one stable, embeddable retrieval API for RAG applications.
| Variable | Default | Purpose |
|---|---|---|
SEARCHFORGE_SEARXNG_URL | unset | Private SearXNG base URL |
GITHUB_TOKEN | unset | Optional GitHub quota increase |
CROSSREF_MAILTO | unset | Crossref polite-pool identity |
BRAVE_SEARCH_API_KEY | unset | Optional Brave backend |
SEARCHFORGE_API_KEY | unset | REST bearer or x-api-key |
SEARCHFORGE_PORT | 3000 | REST port |
SEARCHFORGE_HOST | 127.0.0.1 | Bind address |
SEARCHFORGE_TIMEOUT_MS | 8000 | Per-dependency timeout |
SEARCHFORGE_CACHE_TTL_MS |
ตัดมาแค่ช่วงต้น อ่านต่อใน repo