0
0
via GitHub · Posted Jul 15, 2026 · 1 min read

LangGraph Multi-Agent System with SQL and Web Search

seehiong/multi-agent-system-using-langgraph
Library

A complete LangGraph multi-agent system demo using SQL tools, Tavily search, MCP Toolbox, and OpenRouter models — with reproducible notebooks and a full supervisor-led agent workflow.

37Stars
2Forks
0Open issues
Jupyter Notebook MIT Updated 7 months ago

A complete demonstration of building multi-agent systems using LangGraph, featuring a supervisor-coordinated architecture with specialist agents for SQL queries, web research, and amenities data. The project includes reproducible Jupyter notebooks and standalone CLI tools using OpenRouter models, Tavily search, and MCP Toolbox integrations.

0 comments

README

Multi-Agent System Using LangGraph

This repository contains the full source code and Jupyter notebooks for my blog post “Building a LangGraph Multi-Agent System”.
It demonstrates how to build:

  • A simple deterministic chain (TOTO generator)
  • A ReAct-style agent with Postgres (via MCP Toolbox), Tavily Search, and custom Python tools
  • A modular multi-agent system (MAS) with a Supervisor, SQL Agent, Amenities Agent, and Web Research Agent

All examples use LangGraph, LangChain, OpenRouter models, Tavily, and MCP Toolbox.


📁 Project Structure

├── notebook/
│ ├── toto_generator.ipynb
│ ├── langgraph_react_agent.ipynb
│ └── langgraph_mas.ipynb
│
├── graph.py # Standalone MAS graph (used by LangGraph app/CLI)
├── tools.yaml # MCP Toolbox config (Postgres + custom SQL tools)
├── pyproject.toml # uv project configuration
├── uv.lock
├── .python-version
├── .gitignore
└── README.md

> **Note:**  
> - `app/` (generated by `langgraph new app`) is excluded from the repo.  
> - `toolbox.exe` is excluded — users should download their own binary.  
> - `.venv/` and cache files are excluded.

🚀 Getting Started

1. Clone the repo

git clone https://github.com/seehiong/multi-agent-system-using-langgraph.git
cd multi-agent-system-using-langgraph

2. Create and activate environment (using uv)

uv venv
source .venv/bin/activate      # macOS/Linux
.venv\Scripts\activate         # Windows

3. Install dependencies

uv sync

4. Set up MCP Toolbox

Download the Toolbox binary:

$VERSION="0.18.0"
Invoke-WebRequest -Uri "https://storage.googleapis.com/genai-toolbox/v$VERSION/windows/amd64/toolbox.exe" -OutFile "toolbox.exe"

Start Toolbox:

./toolbox

The tools defined in tools.yaml will automatically load, including:

  • Postgres SQL tools
  • HDB resale queries
  • Amenities and percentile price computations

🧪 Running the Examples

Open the notebooks inside notebook/:

  1. toto_generator.ipynb

    • Simple LangGraph chain generating TOTO numbers.
  2. langgraph_react_agent.ipynb

    • Full ReAct agent with Tavily + SQL tools.
  3. langgraph_mas.ipynb

    • Supervisor-led Multi-Agent System with three specialist agents.

You may run them using Jupyter or VS Code.

▶️ Running the MAS with LangGraph CLI (Optional)

langgraph dev

Then visit:

http://127.0.0.1:2024

This opens LangSmith Studio, where you can explore, debug, and interact with your MAS graph.

📝 Requirements

  • Python 3.10+
  • uv (recommended)
  • Postgres (if running HDB examples)
  • Tavily API key (optional)
  • OpenRouter API key

🔗 Related Blog Post

This repository accompanies my full walkthrough article:

👉 Building a LangGraph Multi-Agent System
https://seehiong.github.io/posts/2025/11/building-a-langgraph-multi-agent-system/

The blog post explains the design decisions, architecture, and step-by-step thought process behind the examples in this repo.

📄 License

MIT License. You are free to fork, modify, and build on this example.

⭐ Acknowledgements

  • LangChain / LangGraph
  • OpenRouter
  • Tavily
  • MCP Toolbox
  • Singapore HDB datasets (data.gov.sg)

If you found this useful, please ⭐ star the repo!

Comments (0)

Sign in to join the discussion.

No comments yet

Be the first to share your take.