OpenSEO
Keyword research, site audits, rank tracking and AI visibility for your AI agent.
Multi-engine search for AI agents. Trust scoring, local corpus, MCP-native. Self-hostable, BYOK.
使っているAIアプリを選んで、設定をコピーしてください。
チェック 3/4 合格 · あなたのパソコンで動きます
一部のコマンドを隠しています
URL でつなぐ:確認時にサーバーのアドレスが応答しませんでした
確認を通った方法がまだありません。作者の説明を見るか、同じカテゴリの別のサーバーを選んでください · 作者のインストール手順 · 同じカテゴリのほかのサーバー
まず:どの AI を使っていますか?
使っているアプリを選ぶと、下に手順が表示されます。
Claude はまだ qsearch につなげません
確認を通った方法がまだありません。作者の説明を見るか、同じカテゴリの別のサーバーを選んでください
ChatGPT はまだ qsearch につなげません
確認を通った方法がまだありません。作者の説明を見るか、同じカテゴリの別のサーバーを選んでください
Claude Code はまだ qsearch につなげません
確認を通った方法がまだありません。作者の説明を見るか、同じカテゴリの別のサーバーを選んでください
Cursor はまだ qsearch につなげません
確認を通った方法がまだありません。作者の説明を見るか、同じカテゴリの別のサーバーを選んでください
VS Code はまだ qsearch につなげません
確認を通った方法がまだありません。作者の説明を見るか、同じカテゴリの別のサーバーを選んでください
確認を通った方法がまだありません。作者の説明を見るか、同じカテゴリの別のサーバーを選んでください
このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。
インターネット経由でつなげるアプリ
GooseLM StudioMsty StudioCherry StudioVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
前回チェックしたときにサーバーが応答しなかったため、ツールを読み取れませんでした。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月15日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント theYahia で確認済みです
コードの最終更新:2 か月前
Apache-2.0を使用
チェックしたとき、6秒以内に応答がありませんでした
チェックしたとき、6秒以内に応答がありませんでした
まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります
質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。
まだレビューはありません
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック4項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
作者のクラウドで動きます。インストール不要でインターネット経由でつながりますが、送った内容は作者のサーバーを通ります。
GitHubリポジトリの最終更新は2 か月前、最新バージョン(0.4.0)がレジストリに届いたのは7 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URL で接続するので、リモート MCP を受け付けるアプリでも使えます。例:Web 版 ChatGPT(Business 以上はフル MCP、Pro は読み取りのみ)。
同じカテゴリには:OpenSEO, Exa, Mockserver, Microsoft Learn MCP, Docs
同じカテゴリでほかの作者のもの。コマンドは確認済み。公式を先に、次にスター順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Keyword research, site audits, rank tracking and AI visibility for your AI agent.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Mock, record/replay, verify and chaos-test any HTTP, REST, gRPC or LLM dependency over MCP.
Official Microsoft Learn MCP Server – real-time, trusted docs & code samples for AI and LLMs.
Search and read Empryo's documentation. Read-only, no auth, no local access.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
I built this for my own daily research. After running 100+ research sprints, my agent kept hallucinating because it read 200-char snippets. qsearch gives it full content with multi-engine provenance — running locally, owned by me.
AI agents lose 17–33% of facts to hallucination because they read 200-character snippets, not full pages (Stanford 2024). Existing search APIs hide *which engines agreed* on a result. Existing knowledge graphs are enterprise-priced or vendor-locked.
qsearch is the open-source search layer that gives agents full content with multi-engine provenance — running on your machine, owned by you, ready for MCP today.
✅ v0.4.0 live at [qsearch.pro](https://qsearch.pro). Multi-engine attribution, trust corpus with per-URL provenance (
engines[],sweep_count,trust_score), corpus viewer at/ui, MCP-over-HTTP for Claude Code and any spec-compliant client.
📖 Architecture: ARCHITECTURE.md · Vision: docs/VISION.md · Technical spec: docs/TRUST_MESH.md · Federation deep-dive: docs/FEDERATION_ARCHITECTURE.md
60-second tour:
/health(it's up, local) →/sweep(multi-engineengines[]attribution) →/verify(does the cited source actually support the claim?). Reproduce it locally withbash scripts/record-demo.shafternpm start— see docs/launch/README-demo-embed.md.
Run it in 5 minutes — free tier, no API key:
git clone https://github.com/theYahia/qsearch.git && cd qsearch
cp .env.example .env.local # works as-is on the $0 SearXNG tier docker compose up -d # Meilisearch + Qdrant + SearXNG npm install && npm start # → qsearch on http://localhost:8080
curl -X POST http://localhost:8080/sweep \ -H "Content-Type: text/plain" \ --data-binary $'t1|self-hosted search engine\n'
The broad sweep tier runs on self-hosted SearXNG and costs nothing. Add a Brave key only when you want the focused/critical tiers. Full setup (Brave key, Ollama, MCP server) below.
Full setup — Brave BYOK + local LLM + MCP server
# 1. Clone
git clone https://github.com/theYahia/qsearch.git cd qsearch
cp .env.example .env.local
docker compose up -d
ollama pull qwen2.5:7b-instruct # ~5GB, cleaner (used by /sweep_context) ollama pull nomic-embed-text # 274MB, embedding rerank (Phase B)
npm install npm start # → qsearch v0.4.0 on http://localhost:8080
npm run start:mcp # → http://0.0.0.0:8081
curl -X POST http://localhost:8080/sweep \ -H "Content-Type: text/plain" \ --data-binary $'t1|self-hosted search engine\n'
BYOK design: Brave key + SearXNG + Ollama all stay on your machine. No data exfiltration.
Every research sprint I run a dual sweep:
# Brave sweep (primary, authoritative)
python research/scripts/brave_sweep.py queries.txt _raw_data/topic_2026-04-28/brave/
curl -X POST http://localhost:8080/sweep?topic=my_topic \ -H "Content-Type: text/plain" --data-binary @queries.txt
After 10+ sprints on the same domain, /corpus/top?min_engines=3 shows which URLs survived multiple independent search engines across multiple sessions. Those are the ones I actually trust.
Every AI agent today hits the same broken loop:
Agent → Tavily/Exa/Serper API → 200-char snippets → hallucinated answer
Three failures:
qsearch addresses all three:
flowchart LR
A[Your agent] -->|query| Q[qsearch] Q -->|fan out| B[Brave Search API] Q -->|fan out| S["SearXNG\n(Google, DDG, Brave, Qwant, …)"] B -->|results| Q S -->|results + engines[]| Q Q -->|index by URL| C["Local corpus\n(Meilisearch + Qdrant)"] C -->|trust score| Q Q -->|re-ranked + full content + provenance| A
style C fill:#fde68a,stroke:#d97706,color:#000 style Q fill:#93c5fd,stroke:#2563eb,color:#000 style S fill:#86efac,stroke:#16a34a,color:#000
The yellow node is your private corpus. URLs found by 5 engines + 3 sweeps + 4 topics get a trust score that emerges naturally — no human ranking, no centralized authority, no cloud round-trip.
| Tavily | Exa | Serper | Brave API | SearXNG | qsearch | |
|---|---|---|---|---|---|---|
| Open source core | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| Full content (not snippets) | partial | partial | ❌ | ❌ | ❌ | ✅ |
| Multi-engine attribution | ❌ | ❌ | ❌ | ❌ | partial | ✅ (engines[]) |
| Persistent local corpus | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Trust score per URL | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Self-hostable | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| MCP-native | partial | ✅ | ❌ | ✅ | ❌ | ✅ |
| BYOK upstream | ❌ | ❌ | ❌ | N/A | ✅ | ✅ |
| Endpoint | Description | Backend |
|---|---|---|
POST /search | Web search + corpus first, trust-weighted re-rank | Brave or SearXNG |
POST /sweep | Batch search with priority/domain routing (see below) | SearXNG / Brave / Academic |
POST /cached_sweep | Same as /sweep, with SQLite memcache layer | SearXNG / Brave / Academic |
POST /academic_search | Peer-reviewed papers via arxiv + PubMed + Semantic Scholar | Academic (free, no auth) |
POST /sweep_context | Local LLM page extraction (analogue of Brave LLM Context) | Ollama qwen2.5 |
POST /news | News search | Brave (requires key) |
POST /context | Deep page extraction | Brave (requires key) |
POST /verify | Citation honesty check — does the cited URL actually support a claim? Returns Supported/Partial/Unsupported/Fabricated/Error + verbatim excerpt | LLM-as-judge (local Ollama qwen2.5 or DeepSeek) |
POST /index | Crawl URL or index local .md glob | Crawl4AI |
GET /trust/:url | Trust score + provenance for any URL in corpus | — |
GET /corpus/top | Top URLs ranked by trust (?limit=20&min_engines=3) | — |
GET /corpus/stats | Corpus size + counts | — |
GET /economy_report | Sprint cost breakdown by backend + savings vs all-Brave | — |
GET /ui | Corpus browser — search, trust scores, provenance modal | — |
GET /health | Service status | — |
/search accepts: query, n_results (1–20), freshness (pd/pw/pm/py), search_lang, country, corpus_first (default true), corpus_only (default false).
/sweep accepts text/plain body with one query per line in the format label|query|priority:
broad (default, SearXNG, $0) / focused (Brave, ~$0.005) / critical (Brave + LLM Context, ~$0.01)general (default) / scholarly (arxiv+PubMed+S2, $0) / ru (SearXNG with language=ru-RU bias, $0)# Examples
bench_a|qdrant production latency benchmarks|focused sch_a|crispr cas9 off target effects|broad|scholarly ru_a|tadviser сро рейтинг 2025|broad|ru crit_a|self-hosted vector DB choice 2026|critical gen|simple search|broad # 2-field still works — defaults broad/general
Auto-indexes results into Meilisearch with engines[] and engine_count filterable.
/academic_search accepts JSON: { query, n_results (1-20), sources?: ["arxiv","pubmed","semanticscholar"] }. Fans out to all three in parallel, dedupes by DOI/title, returns interleaved top-N.
curl -X POST http://localhost:8080/sweep \
-H "Content-Type: text/plain" \ --data-binary $'t1|self-hosted search engine 2026\n'
Output excerpt (parsed_snippets.md):
**1. GitHub - searxng/searxng**
A privacy-respecting, hackable metasearch engine...
2. random-blog.io/seo-spam-2026
Best self-hosted search engines you must try...
URL #1 has engine_count=4 — found by 4 independent engines. URL #2 has engine_count=1 — found by only one. The trust signal is built into the data, not bolted on.
curl -H "Authorization: Bearer masterKey" \
"http://localhost:7700/indexes/qsearch_corpus/documents?filter=engine_count%20%3E%3D%203"
Returns only URLs found by 3+ engines — your high-trust subset.
The MCP server lives in this repo — there is no npm package for it. Run it from source:
git clone https://github.com/theYahia/qsearch.git && cd qsearch
npm install npm start # REST API on :8080 — must be running first npm run start:mcp # MCP server (Streamable HTTP) on :8081
Add to ~/.claude/settings.json:
{
"mcpServers": { "qsearch": { "type": "http", "url": "http://localhost:8081" } } }
Available tools:
mcp__qsearch__web_search — web search via Brave or SearXNGmcp__qsearch__sweep — batch research sweep with multi-engine attributionmcp__qsearch__academic_search — peer-reviewed papers via arxiv + PubMed + Semantic Scholarmcp__qsearch__sweep_context — Phase 3 local LLM page extraction (free, Ollama)mcp__qsearch__verify_citation — does the cited URL actually support the claim? (Supported/Partial/Unsupported/Fabricated)mcp__qsearch__economy_report — cost breakdown vs all-Brave bas