Context7
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Description from the maker (original English)
Local research agent that verifies its own answers. Runs on Gemma 3 4B + Ollama, $0/query.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
OPENAI_BASE_URL, OPENAI_API_KEY, MODEL_SYNTHESIZER, MODEL_PLANNER, EMBED_MODEL, SEARXNG_URL, LOCAL_CORPUS_PATH, ENABLE_RERANK, ENABLE_FETCHValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"agentic-research": {
"command": "uvx",
"args": [
"agentic-research-engine"
],
"env": {
"OPENAI_BASE_URL": "your-value",
"OPENAI_API_KEY": "your-value",
"MODEL_SYNTHESIZER": "your-value",
"MODEL_PLANNER": "your-value",
"EMBED_MODEL": "your-value",
"SEARXNG_URL": "your-value",
"LOCAL_CORPUS_PATH": "your-value",
"ENABLE_RERANK": "your-value",
"ENABLE_FETCH": "your-value"
}
}
}
}Run this in your terminal
claude mcp add agentic-research --env OPENAI_BASE_URL=your-value --env OPENAI_API_KEY=your-value --env MODEL_SYNTHESIZER=your-value --env MODEL_PLANNER=your-value --env EMBED_MODEL=your-value --env SEARXNG_URL=your-value --env LOCAL_CORPUS_PATH=your-value --env ENABLE_RERANK=your-value --env ENABLE_FETCH=your-value -- uvx agentic-research-engineFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"agentic-research": {
"command": "uvx",
"args": [
"agentic-research-engine"
],
"env": {
"OPENAI_BASE_URL": "your-value",
"OPENAI_API_KEY": "your-value",
"MODEL_SYNTHESIZER": "your-value",
"MODEL_PLANNER": "your-value",
"EMBED_MODEL": "your-value",
"SEARXNG_URL": "your-value",
"LOCAL_CORPUS_PATH": "your-value",
"ENABLE_RERANK": "your-value",
"ENABLE_FETCH": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"agentic-research": {
"type": "stdio",
"command": "uvx",
"args": [
"agentic-research-engine"
],
"env": {
"OPENAI_BASE_URL": "your-value",
"OPENAI_API_KEY": "your-value",
"MODEL_SYNTHESIZER": "your-value",
"MODEL_PLANNER": "your-value",
"EMBED_MODEL": "your-value",
"SEARXNG_URL": "your-value",
"LOCAL_CORPUS_PATH": "your-value",
"ENABLE_RERANK": "your-value",
"ENABLE_FETCH": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
OPENAI_BASE_URL envMODEL_SYNTHESIZER envMODEL_PLANNER envEMBED_MODEL envSEARXNG_URL envLOCAL_CORPUS_PATH envENABLE_RERANK envENABLE_FETCH envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account TheAiSingularity, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: OPENAI_API_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.1.3) reached the registry 7 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Context7, Codebase Memory, Exa
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
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.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
agentic-research-engine-oss
The best $0 research agent that runs on a laptop. Open-source end-to-end, reproducible, privacy-preserving. No cloud dependency by default; no telemetry; every LLM call, every source, and every verification decision is visible.
Local-first research agent that verifies its own answers. Runs on Gemma 3 4B + Ollama (3.3 GB on disk) for $0/query; swaps to any OpenAI-compatible endpoint with one env var.
pip install agentic-research-engine
agentic-research ask "what is Anthropic's contextual retrieval?" --domain papers
| Interfaces | CLI · Textual TUI · FastAPI web GUI · MCP server (Claude Desktop / Cursor / Continue) |
| Pipeline | 8-node LangGraph (classify → plan → search → retrieve → fetch → compress → synthesize → verify); every node env-toggleable for ablation |
| Retrieval | SearXNG meta-search + trafilatura fetch + hybrid BM25 / dense / RRF; opt-in bge-reranker-v2-m3 cross-encoder |
| Reasoning | HyDE query expansion · FLARE active retrieval · Chain-of-Verification (Dhuliawala et al 2023) · ThinkPRM step critic |
| Domains | 6 presets (general · medical · papers · financial · stock_trading · personal_docs) — write your own in 10 lines of YAML |
| Plugins | load Claude plugins or agentskills.io skills from GitHub or local paths |
| Memory | opt-in local SQLite trajectory log with semantic retrieval; wipe anytime; no telemetry |
| Providers | OpenAI · Groq · vLLM · SGLang · Together · Ollama — any OpenAI-compatible endpoint via OPENAI_BASE_URL |
| Quality | 137 mocked tests, zero-network · honest live benchmarks published in RESULTS.md · MIT end-to-end |
| you currently use | we give you |
|---|---|
| Perplexity / ChatGPT Deep Research / Kagi Assistant | the same reasoning-with-citations flow, local and free, with your data never leaving the machine |
| Perplexica self-hosted | the UX Perplexica has plus a CoVe verifier, FLARE active retrieval, adaptive compute router, and Claude-plugin packaging |
| Khoj | stronger research-specific reasoning (we're not personal-knowledge-focused), six domain presets, and an MCP server for other agents to call |
| gpt-researcher | newer pipeline architecture, better small-model handling, observable trace, plugin ecosystem |
| MiroThinker-H1 / OpenResearcher-30B | they're stronger on BrowseComp; we run on a laptop with no GPU and cost $0 |
| Writing your own LangGraph research agent | save 2-3 months; reuse our 8-node pipeline + 30+ tested env gates + 137 tests |
Honest read: on complex multi-hop reasoning benchmarks, Gemma 3 4B sits 15–25% below 30 B+ open models. We don't claim to beat GPT-5.4 Pro. We claim to be the best $0, runs-on-your-laptop, fully-open research agent in April 2026.
# 1) Local inference (Ollama + Gemma 3 4B + embedding model — 3.6 GB combined)
brew install ollama ollama pull gemma3:4b nomic-embed-text
docker run -d --name searxng -p 8888:8080 searxng/searxng
pip install agentic-research-engine
export OPENAI_BASE_URL=http://localhost:11434/v1 OPENAI_API_KEY=ollama export MODEL_SYNTHESIZER=gemma3:4b EMBED_MODEL=nomic-embed-text export SEARXNG_URL=http://localhost:8888 agentic-research ask "what is Anthropic's contextual retrieval?" --domain papers
# 1) Same local-inference prereqs as Option A (ollama pull + docker run)
git clone https://github.com/TheAiSingularity/agentic-research-engine-oss cd agentic-research-engine-oss (cd scripts/searxng && docker compose up -d) cd engine && make install make smoke # end-to-end run on the canonical "what is contextual retrieval" question
Expected wall-clock on an M-series Mac: ~45 s for a factoid, ~90 s for multi-hop synthesis. Zero dollars per query.
Gemma 3 4B is surprisingly good at structure (plan, route, verify, compress) but confabulates specific factoids when SearXNG doesn't surface a source containing the right token. Live SimpleQA-mini run on 2026-04-21 (see engine/benchmarks/RESULTS.md) showed gemma3:4b emitting "2023" for *"year Anthropic published Contextual Retrieval"* (gold: 2024) and "LayoutLMv3" for *"which cross-encoder for reranking"* (gold: bge-reranker-v2-m3).
The fix you probably want isn't a smarter synthesizer — it's a more honest one. A 5-question head-to-head on the same retrieval output showed gpt-5-nano + gpt-5-mini refuse to confabulate when evidence was missing (*"The provided evidence does not answer this question"*), where gemma3:4b confidently guessed. Per-claim faithfulness went from 82.9 % → 100 %. Pass rate barely moved (1/5 vs 0/5) because retrieval is the real bottleneck — if SearXNG didn't return a source with the gold token, neither model can produce it.
Swap the whole stack to a cloud endpoint:
# drop the Ollama base URL (fall back to OpenAI cloud)
unset OPENAI_BASE_URL export OPENAI_API_KEY=sk-...
export MODEL_PLANNER=gpt-5-nano export MODEL_SYNTHESIZER=gpt-5-mini # or gpt-5, claude-sonnet-4-5, etc. agentic-research ask "…" --domain papers
Cost is dominated by synthesizer tokens (~5–15 k per query). Full cloud mode with gpt-5-nano + gpt-5-mini runs roughly $0.02–0.05 per research query and is ~2-3× slower than Gemma local (measured: 127 s vs 52 s mean wall on the 5-question subset). Works with any OpenAI-compatible endpoint — Groq, Together, Mistral, DeepSeek, local vLLM — so you can pick a cheap fast model (llama-3.3-70b on Groq ≈ $0.003/query) or a frontier one. Per-node base-URL routing (run gemma3:4b locally for plan/verify AND gpt-5-mini on cloud for synth in the same query) is tracked for 0.2; today the pipeline uses one global OPENAI_BASE_URL.
The bigger accuracy lever is retrieval. Point LOCAL_CORPUS_PATH at an indexed corpus containing your answer and either model will be correct.
Five runnable notebooks in tutorials/:
Each notebook is self-contained, runs end-to-end on Colab free tier, no credit card required.
engine ask "what is hybrid retrieval?" --domain papers --memory session
engine reset-memory engine domains list engine version
make tui
Three panes: sources · answer + hallucination flags · trace + memory hits. Press Enter to ask, Ctrl-M to cycle memory mode, Ctrl-L to clear, Ctrl-Q to quit.
localhost:8080)make gui
No auth. No cloud. No analytics. Dark theme. Streams tokens in place.
engine/ — the flagship8-node LangGraph pipeline with 2026-SOTA composition: classify → plan → search → retrieve → fetch_url → compress → synthesize → verify
Every stage is env-toggleable for leave-one-out ablation. Techniques folded in: HyDE, CoVe verification, iterative retrieval, FLARE active retrieval, question classifier router, step critic (ThinkPRM pattern), LongLLMLingua-lite compression, cross-encoder rerank (BAAI/bge-reranker-v2-m3), Anthropic contextual chunking, W6 small- model hardening (three-case synthesize prompt + per-chunk char cap).
core/rag/ — reusable retrieval primitives (v1 stable)HybridRetriever (BM25 + dense + RRF) · CrossEncoderReranker · contextualize_chunks (Anthropic pattern) · CorpusIndex (bring- your-own-PDFs). 5 exports, used by the engine and the archived recipes.
archive/recipes/ — pre-engine reference recipesresearch-assistant, trading-copilot, document-qa, rust-mcp-search-tool. All still work; all tests still pass. The research-assistant/production/main.py is a thin shim over engine.core.pipeline so the cookbook framing is preserved.
Six YAML files in engine/domains/:
| preset | when to use |
|---|---|
general | default; anything |
medical | disease / treatment / drug / trial (PubMed / Cochrane / NEJM bias; no prescriptive advice) |
papers | academic CS / ML / physics / biology (arXiv + Semantic Scholar + OpenReview) |
financial | SEC filings, earnings, company fundamentals (dates on every number) |
stock_trading | technical + news per ticker — hard rule: never recommends buy/sell/hold |
personal_docs | Q&A over your own corpus, air-gapped (only corpus:// URLs allowed) |
Write your own in ~10 lines of YAML — see docs/domains.md.
python scripts/index_corpus.py build ~/papers --out ~/papers.idx
export LOCAL_CORPUS_PATH=~/papers.idx engine ask "what do my papers say about contextual retrieval?" --domain personal_docs
Supported formats: PDF (via pypdf), Markdown, plain text, HTML (via trafilatura). The index persists as a directory with a human-readable manifest.json + a pickled index.pkl. Rebuild anytime the docs change.
Details: docs/self-learning.md covers the trajectory + memory model; docs/plugins-skills.md covers external plugins.
Only the beginning is shown; read the rest in the repo