Manages environment variables for API keys and database configuration
Powers the AI reasoning capabilities using Gemini 1.5 Flash and Pro models for the conversational interface
Provides the foundation for connecting to language models and structuring agent interactions
Implements the REACT-style reasoning agent framework for processing user queries and determining appropriate actions
Enables storage and retrieval of tax alert data with tools for querying, inserting, updating, and deleting records
Powers the interactive frontend chat interface that connects to the MCP server
📊 Tax Alert Chatbot (MCP-Powered)
An interactive Streamlit-based chatbot that connects to a custom MCP (Model Context Protocol) server. It allows users to query, insert, update, and delete tax alerts stored in a local SQLite database. The app uses LangGraph’s REACT agent framework with Google Gemini models and supports both SSE and STDIO transport modes.
📁 Project Structure
🚀 Features
- 🤖 Conversational interface with Google Gemini 1.5 models
- 🧠 REACT-style reasoning agent via LangGraph
- 🛠️ Tool execution via MCP server
- 📄 Query, insert, update, and delete operations on tax alert data
- 🔄 Real-time responses using SSE or STDIO
🛠️ Tech Stack
Layer | Tools / Frameworks |
---|---|
Frontend | Streamlit, LangGraph, LangChain |
Backend | FastMCP, SQLite |
LLM Provider | Google Gemini 1.5 Flash / Pro (via LangChain) |
Transport | SSE (Server-Sent Events) or STDIO |
Runtime | Python 3.10+, venv, python-dotenv |
⚙️ Setup Instructions
1. Clone the Repository
2. Create and Activate Virtual Environment
3. Install Dependencies
4. Configure Environment Variables
Create a .env file in the root folder:
🗃️ SQLite Schema
🔧 MCP Server Tools
Tool Name | Description |
---|---|
query(sql) | Run SELECT queries on the tax_alerts table |
insert(...) | Insert a new tax alert into the database |
update(...) | Update existing tax alerts based on a condition |
delete(...) | Delete tax alerts using WHERE conditions |
schema_info() | Return schema and column info of the table |
▶️ Running the Server
or
Make sure your .env contains a valid path to dummy_tax_alerts.db.
💬 Running the Client (Chat UI)
It will automatically open streamlit localhost:8501 in your browser.
⚙️ Configuration (via Sidebar) Gemini Model: Choose between gemini-1.5-flash or gemini-1.5-pro
Server Mode: Only single server supported
Server Type: SSE or STDIO
Server URL: Required only for SSE mode
Clear Chat / Show Tool Executions: Debug & reset tools
🧪 Sample Interaction
User Input:
Agent Response (Tool Call):
🧼 Debugging & Notes MCP server must be running before starting the client.
Full traceback is shown in the client if errors occur.
Ensure correct database path in .env.
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
A server that powers an interactive chatbot for querying and managing tax alerts in a SQLite database using Google Gemini models and LangGraph's REACT agent framework.
Related MCP Servers
- -securityFlicense-qualityA powerful server that enables AI agents to interact with MySQL databases, execute SQL queries, and manage database content through a simple interface.Last updated -254JavaScript
- -securityAlicense-qualityA streaming chat agent that integrates Google ADK with Model Context Protocol and Google Maps tools, enabling users to interact with location-based services through a conversational interface.Last updated -PythonMIT License
- -securityAlicense-qualityA lightweight server that uses ChatGPT to qualify leads using the BANT framework (Budget, Authority, Need, Timeline) through a conversational question-by-question approach.Last updated -2JavaScriptMIT License
- -securityFlicense-qualityA tool service that enables AI agents to interact with MySQL databases through natural language, supporting SQL queries, table structure retrieval, and connection testing.Last updated -355JavaScript