On GitHub, assafelovic/gpt-researcher has picked up 29.0k stars, AI Tools, Python. An autonomous agent that conducts deep research on any data using any LLM providers
Snapshot summary built from the project's own GitHub metadata — there's no written TopGit review yet. The page will update automatically when a full review is published.
WHY NO REVIEW YET
TopGit writes full reviews for the most-starred, most-requested repositories. This page is a snapshot until then — see the READ ME tab for the original README in full.
GPT Researcher the first open deep research agent designed for both web and local research on any given task.
The agent produces detailed, factual, and unbiased research reports with citations. GPT Researcher provides a full suite of customization options to create tailor made and domain specific research agents. Inspired by the recent Plan-and-Solve and RAG papers, GPT Researcher addresses misinformation, speed, determinism, and reliability by offering stable performance and increased speed through parallelized agent work.
Our mission is to empower individuals and organizations with accurate, unbiased, and factual information through AI.
Why GPT Researcher?
Objective conclusions for manual research can take weeks, requiring vast resources and time.
LLMs trained on outdated information can hallucinate, becoming irrelevant for current research tasks.
Current LLMs have token limitations, insufficient for generating long research reports.
Limited web sources in existing services lead to misinformation and shallow results.
Selective web sources can introduce bias into research tasks.
Demo
Install as Claude Skill
Extend Claude's deep research capabilities by installing GPT Researcher as a Claude Skill:
npx skills add assafelovic/gpt-researcher
Once installed, Claude can leverage GPT Researcher's deep research capabilities directly within your conversations.
Architecture
The core idea is to utilize 'planner' and 'execution' agents. The planner generates research questions, while the execution agents gather relevant information. The publisher then aggregates all findings into a comprehensive report.
Steps:
Create a task-specific agent based on a research query.
Generate questions that collectively form an objective opinion on the task.
Use a crawler agent for gathering information for each question.
Summarize and source-track each resource.
Filter and aggregate summaries into a final research report.
Tutorials
How it Works
How to Install
Live Demo
Features
📝 Generate detailed research reports using web and local documents.
🖼️ Smart image scraping and filtering for reports.
🍌 AI-generated inline images using Google Gemini (Nano Banana) for visual illustrations.
For other setups (e.g., Poetry or virtual environments), check the Getting Started page.
Run as PIP package
pip install gpt-researcher
Example Usage:
...
from gpt_researcher import GPTResearcher
query = "why is Nvidia stock going up?"
researcher = GPTResearcher(query=query)
# Conduct research on the given query
research_result = await researcher.conduct_research()
# Write the report
report = await researcher.write_report()
...
For more examples and configurations, please refer to the PIP documentation page.
🔧 MCP Client
GPT Researcher supports MCP integration to connect with specialized data sources like GitHub repositories, databases, and custom APIs. This enables research from data sources alongside web search.
export RETRIEVER=tavily,mcp # Enable hybrid web + MCP research
from gpt_researcher import GPTResearcher
import asyncio
import os
async def mcp_research_example():
# Enable MCP with web search
os.environ["RETRIEVER"] = "tavily,mcp"
researcher = GPTResearcher(
query="What are the top open source web research agents?",
mcp_configs=[
{
"name": "github",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {"GITHUB_TOKEN": os.getenv("GITHUB_TOKEN")}
}
]
)
research_result = await researcher.conduct_research()
report = await researcher.write_report()
return report
For comprehensive MCP documentation and advanced examples, visit the MCP Integration Guide.
🍌 Inline Image Generation
GPT Researcher can automatically generate and embed AI-created illustrations in your research reports using Google's Gemini models (Nano Banana).
# Enable in your .env file
IMAGE_GENERATION_ENABLED=true
GOOGLE_API_KEY=your_google_api_key
IMAGE_GENERATION_MODEL=models/gemini-2.5-flash-image
When enabled, the system will:
Analyze your research context to identify visualization opportunities
Pre-generate 2-3 relevant images during the research phase
Embed them inline as the report is written
Images are generated with dark-mode styling that matches the GPT Researcher UI, featuring professional infographic aesthetics with teal accents.
Learn more about Image Generation in our documentation.
✨ Deep Research
GPT Researcher now includes Deep Research - an advanced recursive research workflow that explores topics with agentic depth and breadth. This feature employs a tree-like exploration pattern, diving deeper into subtopics while maintaining a comprehensive view of the research subject.
🌳 Tree-like exploration with configurable depth and breadth
⚡️ Concurrent processing for faster results
🤝 Smart context management across research branches
⏱️ Takes ~5 minutes per deep research
💰 Costs ~$0.4 per research (using o3-mini on "high" reasoning effort)
Learn more about Deep Research in our documentation.
Run with Docker
Step 1 - Install Docker
Step 2 - Clone the '.env.example' file, add your API Keys to the cloned file and save the file as '.env'
Step 3 - Within the docker-compose file comment out services that you don't want to run with Docker.
docker-compose up --build
If that doesn't work, try running it without the dash:
docker compose up --build
Step 4 - By default, if you haven't uncommented anything in your docker-compose file, this flow will start 2 processes:
the Python server running on localhost:8000
the React app running on localhost:3000
Visit localhost:3000 on any browser and enjoy researching!
📄 Research on Local Documents
You can instruct the GPT Researcher to run research tasks based on your local documents. Currently supported file formats are: PDF, plain text, CSV, Excel, Markdown, PowerPoint, and Word documents.
Step 1: Add the env variable DOC_PATH pointing to the folder where your documents are located.
export DOC_PATH="./my-docs"
Step 2:
If you're running the frontend app on localhost:8000, simply select "My Documents" from the "Report Source" Dropdown Options.
If you're running GPT Researcher with the PIP package, pass the report_source argument as "local" when you instantiate the GPTResearcher class code sample here.
🤖 MCP Server
We've moved our MCP server to a dedicated repository: gptr-mcp.
The GPT Researcher MCP Server enables AI applications like Claude to conduct deep research. While LLM apps can access web search tools with MCP, GPT Researcher MCP delivers deeper, more reliable research results.
Features:
Deep research capabilities for AI assistants
Higher quality information with optimized context usage
Comprehensive results with better reasoning for LLMs
Claude Desktop integration
For detailed installation and usage instructions, please visit the official repository.
👪 Multi-Agent Assistant
As AI evolves from prompt engineering and RAG to multi-agent systems, we're excited to introduce multi-agent assistants built with LangGraph and AG2.
By using multi-agent frameworks, the research process can be significantly improved in depth and quality by leveraging multiple agents with specialized skills. Inspired by the recent STORM paper, this project showcases how a team of AI agents can work together to conduct research on a given topic, from planning to publication.
An average run generates a 5-6 page research report in multiple formats such as PDF, Docx and Markdown.
Check it out here or head over to our documentation for LangGraph and AG2 for more information.
🔍 Observability
GPT Researcher supports LangSmith for enhanced tracing and observability, making it easier to debug and optimize complex multi-agent workflows.
This project, GPT Researcher, is an experimental application and is provided "as-is" without any warranty, express or implied. We are sharing codes for academic purposes under the Apache 2 license. Nothing herein is academic advice, and NOT a recommendation to use in academic or research papers.
Our view on unbiased research claims:
The main goal of GPT Researcher is to reduce incorrect and biased facts. How? We assume that the more sites we scrape the less chances of incorrect data. By scraping multiple sites per research, and choosing the most frequent information, the chances that they are all wrong is extremely low.
We do not aim to eliminate biases; we aim to reduce it as much as possible. We are here as a community to figure out the most effective human/llm interactions.
In research, people also tend towards biases as most have already opinions on the topics they research about. This tool scrapes many opinions and will evenly explain diverse views that a biased person would never have read.
How active is development on assafelovic/gpt-researcher?
The most recent commit recorded on assafelovic/gpt-researcher was 1 month ago, based on the GitHub push timestamp. The repository has 3.9k forks — one of the better signals of community interest.
How many stars does assafelovic/gpt-researcher have?
assafelovic/gpt-researcher has 29.0k GitHub stars — refresh the page for the live number, or check github.com/assafelovic/gpt-researcher. TopGit mirrors GitHub's count but does not claim minute-by-minute accuracy.
What else is in the AI Tools space?
assafelovic/gpt-researcher is tracked by TopGit under the AI Tools category, alongside 11 GitHub-tagged topics. Trending and Topics pages list peer repositories of comparable stars and language.
What language is assafelovic/gpt-researcher written in?
assafelovic/gpt-researcher is written primarily in Python. GitHub's language field is based on the largest share of bytes in the default branch.
What topics is assafelovic/gpt-researcher associated with?
GitHub's repository topics for assafelovic/gpt-researcher: "agent", "ai", "automation", "deepresearch", "llms", "mcp", "mcp-server", "python", "research", "search", "webscraping". TopGit's editorial category is AI Tools.
Where do I read more about assafelovic/gpt-researcher?
This TopGit page is a snapshot — the READ ME tab shows the project's own README content (links stripped, images preserved). The GitHub repository at github.com/assafelovic/gpt-researcher is the definitive source.
Why is assafelovic/gpt-researcher categorized under AI Tools?
TopGit places assafelovic/gpt-researcher in the AI Tools category based on its GitHub topics and description (tagged: "agent", "ai", "automation"). Categories are assigned from real repository metadata, not editorial guesswork.
Read full README in the tab above.
Still deciding about gpt-researcher?
One click hands the question to an AI along with this page — see what it says about gpt-researcher.