Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Finds and ranks recent scientific papers that matter most for a research question or project.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"research-scan": {
"command": "uvx",
"args": [
"research-scan"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add research-scan -- uvx research-scanวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"research-scan": {
"command": "uvx",
"args": [
"research-scan"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"research-scan": {
"type": "stdio",
"command": "uvx",
"args": [
"research-scan"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน synectic.org แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.6.4) เข้า registry 4 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี 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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Research Scan finds and ranks recent scientific papers that matter most for a specific research question, project, or decision. Starting from a brief or a single question, it retrieves the literature, expands through citation graphs, measures coverage, verifies every DOI against the live record, and emits evidence objects — while the agent driving it plans the queries, screens the candidates and ranks the shortlist. It is an evidence pipeline for a reasoning agent, not an assistant that answers questions.
Documentation: https://researchscan.synectic.org
The work is split in two, deliberately.
The CLI is deterministic and model-free. It retrieves across OpenAlex, Semantic Scholar and arXiv, walks the citation graph, dedups, counts coverage per criterion, shortlists, verifies every DOI against the live record, applies the selection rules and renders the result. It contains no LLM SDK and makes no judgement about a paper.
The agent supplies the cognition. Planning the queries, scoring each candidate 0–3, writing gap queries when coverage is thin, and reranking the shortlist are all model decisions. The skill packages the rubrics they are made against, as plain Markdown in skills/research-scan/references/; whatever agent hosts it executes them.
Files are the interface between the two halves: the filesystem is the protocol boundary between reasoning and execution, not a storage detail. That is what lets Claude Code, Codex, Cursor or a plain Python loop drive the same chain over the same artifacts.
brief ─▶ [plan queries] ─▶ retrieve ─▶ [screen 0–3] ─▶ expand ─▶ [screen] ─▶ coverage
─▶ [gap round, if coverage is thin] ─▶ shortlist ─▶ [rerank] ─▶ verify ─▶ emit
Bracketed steps are the agent's; the rest are CLI stages.
Two things bound the result. A purpose — build, research or orient — decides what a paper has to do to earn a slot. A profile — quick, standard or deep — decides how much the scan costs. Both are described under How it works.
Output is a run directory of validated JSON plus a Markdown brief you can hand to a human, in which every paper's DOI, title, year and first author were checked against the live record.
Python ≥ 3.11 and uv.
uvx research-scan doctor # run any command without installing
uv tool install research-scan # or put it on PATH permanently
configure asks for each credential, shows what is already set, writes ~/.config/research-scan/.env with mode 0600 inside a 0700 directory, and finishes by running doctor.
research-scan configure # `setup` is an alias for the same command
Keys are read without echo. Re-running is safe: every variable shows its current value masked to the last four characters, Enter keeps it, typing replaces it. Anything already in the file that configure does not ask about — comments included — is left exactly as it was. If stdin is not a terminal it prints the file to write and exits 2 rather than hanging, which is the behaviour you want in a Dockerfile or a provisioning script.
| Variable | Needed for |
|---|---|
OPENALEX_API_KEY | OpenAlex, the primary source. Required; doctor exits 3 without it. |
OPENALEX_MAILTO | Strongly recommended. Raises OpenAlex to 5 req/s and joins the Crossref polite pool. |
S2_API_KEY | Recommended. Semantic Scholar search and citation-graph expansion work without it, throttled to roughly a third of the rate; doctor warns. |
NCBI_API_KEY | Optional. Raises this client's NCBI E-utilities limit from 3 to 10 req/s; PubMed retrieval is not built, so today only doctor's probe uses it. |
To write the file by hand instead, .env.example in the repo is the template. Process environment beats ~/.config/research-scan/.env, which beats a repo-local ./.env.
doctor invokes every source live with the cache bypassed, rather than listing what it thinks is configured.
research-scan doctor # a four-line summary and a verdict
research-scan doctor --verbose # every check, with timings and paths research-scan doctor --json # machine-readable; this is the CI/agent interface
Research Scan ✓ configuration ✓ OpenAlex ✓ Semantic Scholar ✓ Crossref ✓ arXiv ○ PubMed PubMed: endpoint reachable; source routed for biomed but not built ✓ writable run store Ready.
Exit 0 means go. Exit 3 means a mandatory check failed; see Troubleshooting. The checks and the exit code are identical in all three output modes — only the presentation differs.
○ marks a source that is routed but has no retrieval adapter — see the sources table. The probe still runs and still reports honestly: PubMed's row says the E-utilities endpoint answered, which is a different claim from being able to retrieve from it. doctor --json carries the same fact as sources_not_built, alongside a providers map whose keys and values are unchanged.
With the skill installed, ask for a scan in your agent:
/research-scan "I am designing a financial education product for young adults.
Research question: What interventions have the strongest recent evidence for increasing long-term savings behavior?
Context:
financial literacy scores.
Find the 10 papers that should shape our product decisions. Explain why each paper matters, what it found, and what evidence gaps remain." --profile standard
A one-line question works. A brief with context works better, because the planning step maps each section of it onto a specific part of the search plan. The template is skills/research-scan/examples/brief.example.md — a worked build brief — and brief.research-example.md is the same template at Purpose: research.
/research-scan research/my-brief.md --profile standard --top 10
| Brief section | What it feeds |
|---|---|
| `Purpose:` line | Which sub-criteria the plan derives and what why_it_matters must argue. build, research or orient; omit it and the agent infers one. |
| What this is about | The brief_summary and the domain routing. Say the setting, not just the topic. |
| What we need to decide or answer | The sub-criteria every paper is scored against. Name the actual open choices, or the actual questions. |
| What we already believe (the premise) | The contradictory query. A scan that only confirms the premise is not evidence. |
| Exclusions | queries.json.must_not, enforced in code at word boundaries — never as NOT-terms in query text. |
| Known papers or authors | anchors: pinned into the pool, exempt from the filters and the cap, always used as expansion seeds. |
Results land in research/scans/ - /. See Outputs.
Full argument list:
/research-scan <brief.md | "question"> [--profile quick|standard|deep] [--top N] [--foundational N]
[--from YYYY-MM] [--to YYYY-MM] [--slug name] [--domain behavioral|cs|biomed|general] [--max-candidates N] [--per-query N] [--gap-round]
Two front doors to the same pipeline. The skill is where the rubrics live, so it is the one that carries the screening and reranking cognition; the MCP server exposes the same four decision points as tools for any client that speaks MCP.
Any one of these; all three point at the same skills/research-scan/.
# 1. symlink a clone — edits to the rubrics take effect immediately
ln -s "$PWD/skills/research-scan" ~/.claude/skills/research-scan
claude --plugin-dir /path/to/research-scan
npx skills add Synectic-Research/research-scan
The skill follows the open Agent Skills format, so the same folder serves Codex, Cursor, Copilot and any other host that reads SKILL.md. Codex looks in ~/.agents/skills:
mkdir -p ~/.agents/skills && ln -s "$PWD/skills/research-scan" ~/.agents/skills/research-scan
The CLI needs the network, which Codex's default sandbox blocks. Run research-scan doctor once outside Codex (it creates the cache and config directories), then start a scanning session with network access and the cache writable. Both apply to the whole session, not only to research-scan. A full scan is a long, unattended task, so run it with codex exec and say that it should finish:
codex exec --sandbox workspace-write -c sandbox_workspace_write.network_access=true \
--add-dir ~/.cache/research-scan \ 'Use the research-scan skill on brief.md with --profile quick, and run every step through the report.'
Outside a git repository, codex exec also needs --skip-git-repo-check.
The plugin installs the skill and configures the uvx MCP server in one step; the .mcp.json route below stays the path for non-plugin clients such as Claude Desktop and Cursor.
/plugin marketplace add Synectic-Research/research-scan
/plugin install research-scan@synectic
research-scan mcp speaks MCP on stdin/stdout and nothing else. It reads no token and needs none: the process is trusted because your client launched it. Nothing extra to install — the server ships with the package.
{
"mcpServers": { "research-scan": { "command": "uvx", "args": ["research-scan", "mcp"] } } }
| Client | Where that goes |
|---|---|
| Claude Code | .mcp.json in the project root |
| Claude Desktop | claude_desktop_config.json |
| Cursor | .cursor/mcp.json |
Four tools, one per model decision the pipeline needs: scan_start (you supply the query plan), scan_continue (screening scores, gap queries, or a page of rerank entries), scan_verify and scan_result. They are not a chat endpoint over the pipeline: each is a decision point where a judgement is needed, and the client's model supplies exactly the cognition the skill would — same stage order, same artifacts. The adapter drives the CLI as a subprocess and reads its exit codes. Run research-scan mcp --help for the other transport.
Each stage is idempotent and re-runnable: change queries.json or pass a flag and re-run from the stage it affects. The CLI owns candidates.json, shortlist.json, manifest.json and evidence.*; the agent owns queries.json, screen.json and ranked.json. Neither edits the other's files.
Declared on the brief's Purpose: line, or inferred. It decides which sub-criteria the plan derives, what screening counts as relevant, and what why_it_matters has to argue.
| Purpose | A paper earns its place by | Example |
|---|---|---|
build | moving a design or plan decision | "What should we know before we design the enrolment flow?" |
research | changing what we believe, what we would test, or how we would measure it | "What is the strongest recent evidence that default enrolment affects how much people save?" |
orient | being something a newcomer must know, recent first | "I am new to mechanistic interpretability — what must I read, recent first?" |
One flag sets how much the scan costs. --profile belongs to init and is recorded in the manifest; an explicit flag still overrides it — `-
ตัดมาแค่ช่วงต้น อ่านต่อใน repo