Repolode
langchain-ai

langchain-ai/deep_research_from_scratch

A tutorial repo of five Jupyter notebooks that walk through building a LangGraph-based deep research agent from scratch.

Stars
809
Forks
271
Open issues
10
Last commit
2 months ago

What is it?

Deep research agents take a user request, clarify its scope, search multiple sources, and write a comprehensive report. This project teaches how such a system is built, using LangGraph as the orchestration layer rather than presenting a finished product.

The material is organized as five notebooks that build up the system step by step: user clarification and research brief generation, a tool-using research agent with Tavily search, integration of MCP servers as tools via LangChain MCP adapters, a supervisor that delegates research to parallel sub-agents, and a full scope-research-write pipeline combining all parts.

The project requires Python 3.11 or later, uv for dependency management, and API keys for OpenAI or Anthropic and Tavily. Node.js is needed for the MCP example. LangSmith tracing is optional.

Key features

  • 01Five progressive notebooks covering scoping, tool-using agents, MCP integration, supervisor patterns, and a full pipeline
  • 02Structured output with Pydantic schemas for clarification and research question generation
  • 03Parallel research sub-agents coordinated by a supervisor node using asyncio
  • 04Web search through Tavily with content summarization of results
  • 05Configurable model providers through OpenAI and Anthropic API keys

Use cases

  • Learning how to build multi-step research agents with LangGraph
  • Understanding how supervisor and parallel sub-agent patterns work in practice
  • Adding MCP servers as tools to an LLM-based research workflow
  • Using the notebooks as a starting point for a custom deep research application

Quick start

  1. 1

    Install Node.js (includes npx) and Python 3.11+

  2. 2

    Install uv package manager

  3. 3

    Clone the repository

    git clone https://github.com/langchain-ai/deep_research_from_scratch
  4. 4

    Install dependencies with uv

    uv sync

Things to know

  • Requires API keys for search and model providers such as Tavily and OpenAI or Anthropic.
  • This is a tutorial repo of notebooks, not a packaged research tool to run directly.

In collections

Topics

FAQ

What is deep_research_from_scratch?
A tutorial repo of five Jupyter notebooks that walk through building a LangGraph-based deep research agent from scratch. Deep research agents take a user request, clarify its scope, search multiple sources, and write a comprehensive report. This project teaches how such a system is built, using LangGraph as the orchestration layer rather than presenting a finished product.
Is deep_research_from_scratch free to use? What license does it have?
deep_research_from_scratch is open source under the MIT license. Check the license terms before using it in commercial products.
Is deep_research_from_scratch still maintained?
Updated within 6 months. The last commit to deep_research_from_scratch was on Aug 11, 2026.
What can I use deep_research_from_scratch for?
Learning how to build multi-step research agents with LangGraph Understanding how supervisor and parallel sub-agent patterns work in practice Adding MCP servers as tools to an LLM-based research workflow Using the notebooks as a starting point for a custom deep research application
How do I install deep_research_from_scratch?
Install Node.js (includes npx) and Python 3.11+ Install uv package manager Clone the repository: git clone https://github.com/langchain-ai/deep_research_from_scratch Install dependencies with uv: uv sync
Where can I get deep_research_from_scratch?
The source code and installation instructions are on GitHub: https://github.com/langchain-ai/deep_research_from_scratch

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects