Gigaxity Deep ResearchSAFE
Open-source deep research MCP. Qwen3-30B-A3B-Thinking via OpenRouter, cited web synthesis for Claude Code, Codex, Cursor, Hermes and any MCP-compatible agent.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
Gigaxity Deep Research — Open-source deep research MCP server for Claude Code, Codex, Cursor, Hermes, and any MCP-capable agent
Open-source deep research MCP server for Claude Code, Hermes, Cursor, and any MCP-compatible agent. Qwen3-30B-A3B-Thinking via OpenRouter plus multi-source web synthesis with citations.
Gigaxity Deep Research is a multi-source synthesis pipeline — seven MCP tools (three primitives search/vertical_search/research plus four deep-research tools ask/discover/synthesize/reason) with a matching FastAPI REST surface, fronting parallel multi-source search, RRF fusion, citation binding, and contradiction detection. The synthesis stage runs against any OpenAI-compatible chat-completions model; the recommended default is Alibaba's Qwen3-30B-A3B-Thinking, a reasoning-tuned 30B-A3B MoE model, but DeepSeek-R1, Qwen-QwQ, Llama 3.x, and hosted-aggregator endpoints (OpenRouter and the like) all work — pick any model your endpoint serves. The search layer pulls from a "Triple Stack" of complementary MCPs (Context7, Exa, Jina) alongside SearXNG, Tavily, LinkUp, Brave, and Parallel connectors. A bundled `gptr-mcp` companion — the MCP shim around GPT Researcher — adds Reddit, X, and YouTube as social-first sources.
If you want to run the synthesis model on your own hardware, the local-inference branch swaps OpenRouter for any OpenAI-compatible endpoint (vLLM, SGLang, or llama.cpp). The search-MCP layer is priced separately by each provider. See [docs/guides/free-tier-strategy.md](docs/guides/free-tie
2d2a884c2fc0OBSERVED · 2026-10-08Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add gigaxity-deep-research --env BRIGHTDATA_API_TOKEN=${BRIGHTDATA_API_TOKEN} --env EXA_API_KEY=${EXA_API_KEY} --env JINA_API_KEY=${JINA_API_KEY} --env JINA_GHOST_KEY=${JINA_GHOST_KEY} -- uvx gigaxity-deep-research{
"mcpServers": {
"gigaxity-deep-research": {
"command": "uvx",
"args": [
"gigaxity-deep-research"
],
"env": {
"BRIGHTDATA_API_TOKEN": "${BRIGHTDATA_API_TOKEN}",
"EXA_API_KEY": "${EXA_API_KEY}",
"JINA_API_KEY": "${JINA_API_KEY}",
"JINA_GHOST_KEY": "${JINA_GHOST_KEY}"
}
}
}
}Exposed tools (25)
24 read · 1 write · 0 destructive.
| Tool | Risk | Description |
|---|---|---|
capture_screenshot_url | read | Capture a screenshot of a webpage and return the hosted image URL. |
classify_text | read | Zero-shot classify texts into supplied labels. |
deduplicate_strings | read | Pick a semantically diverse subset, dropping near-duplicates. |
exa_answer | read | Fast factual answer with citations. 1-2s, 94% SimpleQA accuracy. |
exa_answer_detailed | read | Detailed factual answer with full source text. For when you need more context. |
extract_pdf | read | Extract layout elements (figures, tables, equations) from a PDF. |
guess_datetime_url | read | Estimate when a page was published, for freshness and credibility checks. |
parallel_read_url | read | Read several URLs concurrently. Preferred over repeated read_url calls. |
parallel_search_arxiv | read | Search arXiv for several queries concurrently. |
parallel_search_ssrn | read | Search SSRN for several queries concurrently. |
parallel_search_web | write | Run several web searches concurrently. Use for query variants in one pass. |
primer | read | Report current UTC time and this server |
read_url | read | Read a webpage or PDF and return clean markdown. |
scrape_as_markdown | read | Scrape a blocked URL as markdown using Brightdata Web Unlocker. |
search | read | Multi-source search with RRF (Reciprocal Rank Fusion). |
search_arxiv | read | Search arXiv for academic papers. |
search_bibtex | read | Find BibTeX citation entries for a paper. |
search_images | read | Search for images on the web. |
search_jina_blog | read | Search Jina AI |
search_ssrn | read | Search SSRN for economics, law, and finance working papers. |
search_web | read | Search the live web. Returns titles, URLs and descriptions. |
show_api_key | read | Show the masked API key this server is using, and its wallet balance. |
sort_by_relevance | read | Rerank documents by semantic relevance to a query. |
synthesize | read | It makes no LLM call. A reporter here would emit an opening tick and then |
vertical_search | read | Search ONE SearXNG category. No LLM call and no search-API quota. |
Trust audit
SAFEgrade B · trust 88/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- declared (7 observation(s))
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (15)
source_id = f"br_{hashlib.md5(url.encode()).hexdigest()[:8]}"source_id = f"lu_{hashlib.md5(url.encode()).hexdigest()[:8]}"source_id = f"px_{hashlib.md5(url.encode()).hexdigest()[:8]}"source_id = f"sx_{hashlib.md5(url.encode()).hexdigest()[:8]}"source_id = f"tv_{hashlib.md5(url.encode()).hexdigest()[:8]}"RESEARCH_LLM_API_BASE=http://192.0.2.50:8000/v1
RESEARCH_LLM_API_BASE=http://192.0.2.50:8000/v1
RESEARCH_LLM_API_BASE=http://192.0.2.50:8000/v1 # example LAN IP (RFC 5737 TEST-NET-1)
RESEARCH_SEARXNG_HOST=http://192.0.2.10:8888 # example SearXNG on yet another machine (RFC 5737)
Base URL: `http://<RESEARCH_HOST>:<RESEARCH_PORT>` (defaults to `http://127.0.0.1:8000`). Bind to `0.0.0.0` only behind an authenticated reverse proxy — the REST surface spends the env-configured Open
mcp, httpx
mcp
mcp
Adds a **connector liveness surface**: `GET /api/v1/health/connectors`. Until now the server's only notion of connector health was config presence — `/health` lists `get_active_connectors()`, which fi
The preset thresholds (benchmark recalibration against a fixture corpus is still deferred), the post-synthesis verifier (it still scores entity coverage against the full query, unaffected by `gate_foc
Gates applied: no_behavioural_pass.
2d2a884c2fc0full audit observations/trust-audit/mcp-server/yoloshii__gigaxity-deep-research.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | 2d2a884c2fc0 | SAFE | B | 88 | first audit |
Questions
What is the Gigaxity Deep Research MCP server?
Open-source deep research MCP. Qwen3-30B-A3B-Thinking via OpenRouter, cited web synthesis for Claude Code, Codex, Cursor, Hermes and any MCP-compatible agent.
What tools does Gigaxity Deep Research expose?
25 in total: 24 read-only, 1 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.
Is Gigaxity Deep Research safe to connect to an agent?
The audit found nothing in the source that contradicts what it says it does, and graded it B (88/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.
What credentials does Gigaxity Deep Research need?
It reads BRIGHTDATA_API_TOKEN, EXA_API_KEY, JINA_API_KEY, JINA_GHOST_KEY, OPENAI_API_KEY, RESEARCH_LINKUP_API_KEY, RESEARCH_LLM_API_KEY, RESEARCH_TAVILY_API_KEY and TWITTERAPI_IO_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How does Gigaxity Deep Research run?
It speaks stdio, so it runs as a local process your client starts. It is published on PyPI as gigaxity-deep-research.
How current is this page?
The grade is for one exact copy of the source (2d2a884c2fc0), read on 2026-10-08. The repository is watched and re-audited when it changes.