# Research Brief Generator This project implements a **LangGraph** based agent that, given a research topic, produces a short research brief. The workflow is: 1. **Outline** – The LLM generates a 4–5 point outline. 2. **Research** – For each outline point a single Tavily web search is performed and a concise note is produced. 3. **Synthesize** – All notes are combined into a ½–1 page brief. The agent uses: - **OpenAI** (ChatOpenAI) for LLM calls. - **TavilySearch** for real‑time web queries. - **LangGraph** for stateful flow control. ## Prerequisites - Python 3.10+ - An OpenAI API key (set `OPENAI_API_KEY`). - A Tavily API key (set `TAVILY_API_KEY`). Both keys can be stored in a `.env` file in the project root. ## Installation ```bash pip install -r requirements.txt ``` ## Usage ```bash python -m src.cli "Explain to a student the difference between tool and resource in MCP." ``` The script will print the outline, each research step with notes, and the final brief.