About LangGraph Nexus
LangGraph Nexus is an MCP server published by DataDoodle14 in the RAG category: a production-style AI assistant built with LangGraph, MCP, RAG, and 8+ tools — all running on Streamlit interface.
The repository has 1 stars and 0 forks, with the last commit 7 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/DataDoodle14/LangGraph_NexusThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (12)
add_expenseAdd a new expense entry
Parameters not published.
calculatorBasic arithmetic
Parameters not published.
clear_all_expensesWipe all expenses (with confirmation)
Parameters not published.
delete_expenseDelete an expense by ID
Parameters not published.
delete_expenses_by_categoryBulk delete by category
Parameters not published.
get_stock_historyStock trend analysis over time
Parameters not published.
get_stock_priceLive stock price, market cap, P/E ratio
Parameters not published.
get_weatherReal-time weather for any city
Parameters not published.
list_expensesList expenses in a date range
Parameters not published.
search_arxivSearch research papers on ArXiv
Parameters not published.
summarizeSummarize expenses by category
Parameters not published.
update_expenseUpdate any field of an expense
Parameters not published.
Ask AI
Ask AI about LangGraph Nexus
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 5 days ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- !License declaredNo license file. Legally you have no right to use it in a product.
- !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
- !Dependencies pinnedNo lockfile. Installs can pull different code over time.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
1 check has not been run yet.
README
LangGraph Nexus
A production-style AI assistant built with LangGraph, MCP, RAG, and 8+ tools — all running in a sleek Streamlit interface.
Live Demo
Coming soon — deployment in progress
What Is This?
This is not your average chatbot.
It's a fully agentic AI assistant that can:
- Chat with your uploaded PDF documents
- Track, update, and analyze your expenses via a local MCP server
- Search the live web for current information
- Fetch real-time stock prices and trends
- Get live weather for any city
- Search ArXiv research papers
- Look up anything on Wikipedia
- Perform calculations
- Remember conversations across sessions using SQLite checkpointing
Architecture
User
│
▼
Streamlit Frontend (streamlit_frontend.py)
│
▼
┌─────────────── LangGraph Agent ───────────────────────┐
│ │
│ chat_node ◄──────────────► tool_node │
│ (LLM decides) (executes tools) │
│ │ │ │
│ ▼ ▼ │
│ GPT-4o-mini All 15 tools │
│ (via OpenRouter) │
│ │ │
│ ▼ │
│ SQLite Checkpointer (chatbot.db — conversation │
│ AsyncSqliteSaver memory across sessions) │
└────────────────────────────────────────────────────────┘
│ │
▼ ▼
General Tools MCP Tools (stdio)
- RAG (FAISS + PDF) FastMCP Server → expenses.db
- DuckDuckGo search add / list / update /
- Wikipedia delete / summarize
- Calculator
│
External API Tools ▼
- Stock price/history Dashboard.py
- Live weather (Matplotlib analytics)
- ArXiv papers
Tech Stack
| Layer | Technology |
|---|---|
| Agent Framework | LangGraph |
| LLM | GPT-4o-mini via OpenRouter |
| LLM Tooling | LangChain |
| MCP Server | FastMCP |
| RAG | FAISS + PyPDFLoader |
| Memory / Checkpointing | AsyncSqliteSaver (aiosqlite) |
| Dashboard | Matplotlib + Streamlit |
| Frontend | Streamlit |
| Language | Python 3.11 |
Project Structure
LangGraph_nexus/
┣-- langgraph_backend.py # Agent, tools, graph, checkpointer
┣-- streamlit_frontend.py # Streamlit chat UI
┣-- dashboard.py # Expense analytics dashboard
┣-- Dockerfile
┣-- docker-compose.yml
┣-- .dockerignore
┣-- .env.example # Template for environment variables
┣-- requirements.txt
┗-- .env # Your API keys (not committed)
MCP_files/
┗-- main.py # Local MCP ExpenseTracker server
┗-- categories.json
Tools Available
| Tool | Description |
|---|---|
rag_tool |
Ask questions about your uploaded PDF |
search_tool |
Live web search via DuckDuckGo |
wikipedia_tool |
Wikipedia lookup |
calculator |
Basic arithmetic |
get_stock_price |
Live stock price, market cap, P/E ratio |
get_stock_history |
Stock trend analysis over time |
get_weather |
Real-time weather for any city |
search_arxiv |
Search research papers on ArXiv |
add_expense |
Add a new expense entry |
list_expenses |
List expenses in a date range |
update_expense |
Update any field of an expense |
delete_expense |
Delete an expense by ID |
delete_expenses_by_category |
Bulk delete by category |
summarize |
Summarize expenses by category |
clear_all_expenses |
Wipe all expenses (with confirmation) |
Setup & Installation
1. Clone the repository
git clone https://github.com/DataDoodle14/LangGraph_Nexus.git
cd LangGraph_Nexus
2. Create and activate a virtual environment
conda create -n nexus_env python=3.11
conda activate nexus_env
3. Install dependencies
pip install -r requirements.txt
4. Set up your .env file
# Mac/Linux
cp .env.example .env
# Windows
copy .env.example .env
Then open .env and fill in your API key:
OPENAI_API_KEY=your_openrouter_api_key_here
OPENAI_BASE_URL=https://openrouter.ai/api/v1
Get a free API key at openrouter.ai
5. Start the chatbot
streamlit run streamlit_frontend.py
6. Start the analytics dashboard (optional, separate tab)
streamlit run dashboard.py
Docker Setup
Run the entire app (chatbot + dashboard) with a single command — no Python or pip install needed, just Docker.
Prerequisites
- Docker Desktop installed and running
1. Clone the repository
git clone https://github.com/DataDoodle14/LangGraph_Nexus.git
cd LangGraph_Nexus
2. Set up your .env file
# Mac/Linux
cp .env.example .env
# Windows
copy .env.example .env
Then open .env and fill in your API key:
OPENAI_API_KEY=your_openrouter_api_key_here
OPENAI_BASE_URL=https://openrouter.ai/api/v1
Get a free API key at openrouter.ai
3. Build and start all services
docker-compose up --build
4. Access the apps
| Service | URL |
|---|---|
| Chatbot | http://localhost:8501 |
| Expense Dashboard | http://localhost:8502 |
5. Stop all services
docker-compose down
6. Stop and remove all data (full reset)
docker-compose down -v
The
-vflag deletes the shared Docker volume, wiping bothchatbot.dbandexpenses.db.
Notes
- Both services share a Docker volume (
shared_data) mounted at/tmp, so expense data written by the chatbot is instantly visible in the dashboard. - Your
.envfile is never copied into the image — it is injected at runtime viaenv_file. - The
nexus_env/virtual environment and all*.dbfiles are excluded from the image via.dockerignore.
Expense Dashboard
A separate Streamlit dashboard that visualizes your expense data:
- KPI cards — Total Spent, No. of Expenses, Top Category, Average
- Monthly spending trend (line chart)
- Category breakdown (pie + bar chart)
- Per-category trend over months
- Filterable raw data table
Reset / Clear Data
Clear chat history:
# Local
del chatbot.db
# Docker (resets shared volume entirely)
docker-compose down -v
Clear expense data (local):
python -c "import tempfile; print(tempfile.gettempdir())"
# Then delete expenses.db from that path
del "C:\Users\admin\AppData\Local\Temp\expenses.db"
Screenshots
Homepage Tools:
- Weather & stock price
- Basic Calculator & DuckDuckGo Search
- ArXiv research papers
- RAG tool
- MCP Local server : Expense
Expense Dashboard
Requirements
See requirements.txt for the full pinned dependency list.
Author
Made with by DataDoodle14
License
MIT License — feel free to use, modify, and build on top of this!
README fetched from the repository 5 days ago. The original is authoritative.