mcpField
C
Customer Support RAG Chatbot

Customer Support RAG Chatbot

Local
github.com/Shantanu1711AI & Agents0Updated 77w ago

About Customer Support RAG Chatbot

Customer Support RAG Chatbot is a documentation-grounded support chatbot for organizations with customer support materials. It uses semantic search and answers “I don't know” when the documentation does not cover a question.

Key features

  1. 01Documentation-based answers
  2. 02Semantic search
  3. 03Context-aware replies
  4. 04Out-of-scope fallback
  5. 05AngelOne web scraping
  6. 06Insurance PDF processing

Use cases

  1. 01Answering customer questions from support documents
  2. 02Finding information in AngelOne documentation
  3. 03Looking up details in insurance PDFs

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Customer Support RAG Chatbot

A Retrieval-Augmented Generation (RAG) chatbot trained on customer support documentation to assist users by answering queries and providing relevant support information.

Features

  • Answers questions based on provided customer support documentation
  • Responds with "I don't know" for questions outside the documentation scope
  • User-friendly web interface
  • Semantic search for relevant information
  • Context-aware responses
  • Web scraping support for AngelOne documentation
  • PDF processing for insurance documents

Setup Instructions

  1. Clone the repository:
git clone <repository-url>
cd <repository-name>
  1. Create and activate a virtual environment:
python -m venv venv
# On Windows
.\venv\Scripts\activate
# On Unix/MacOS
source venv/bin/activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Set up environment variables: Create a .env file in the root directory with:
HF_API_KEY=your_huggingface_api_key_here
  1. Gather documentation:

    • For AngelOne documentation:
      python scrape_angelone.py
      
    • For insurance PDFs:
      • Place all insurance PDFs in the docs/insurance directory
  2. Process the documentation:

python process_documents.py
  1. Start the backend server:
python mcp_server.py
  1. In a new terminal, start the frontend:
streamlit run app.py

Deployment

To deploy the application:

  1. Backend (FastAPI):

    • Deploy to a cloud platform (e.g., Heroku, AWS, DigitalOcean)
    • Set environment variables in the cloud platform
    • Use a process manager (e.g., Gunicorn) to run the FastAPI server
  2. Frontend (Streamlit):

    • Deploy to Streamlit Cloud or similar platform
    • Configure the frontend to point to your deployed backend URL
    • Set environment variables in the deployment platform

Usage

  1. Open your web browser and navigate to the deployed URL
  2. Type your question in the chat interface
  3. The chatbot will:
    • Search the documentation for relevant information
    • Generate a response based on the found information
    • Respond with "I don't know" if the information is not in the documentation

Project Structure

.
├── app.py                 # Streamlit frontend
├── mcp_server.py         # FastAPI backend
├── process_documents.py  # Document processing script
├── scrape_angelone.py    # Web scraper for AngelOne docs
├── requirements.txt      # Python dependencies
├── .env                 # Environment variables
├── docs/               # Documentation directory
│   ├── angelone/      # Scraped AngelOne documentation
│   └── insurance/     # Insurance PDFs
└── chroma_db/         # Vector database storage

Dependencies

  • FastAPI: Backend API
  • Streamlit: Frontend interface
  • Hugging Face: LLM for response generation
  • ChromaDB: Vector database for document storage
  • Sentence Transformers: Text embeddings
  • PyPDF: PDF processing
  • BeautifulSoup4: Web scraping
  • Requests: HTTP client

Notes

  • The chatbot only answers questions based on the provided documentation
  • It will respond with "I don't know" for questions outside the documentation scope
  • The system uses semantic search to find relevant information
  • Responses are generated using the Hugging Face API
  • Web scraping is rate-limited to be respectful to the source website

License

[Your License Here]

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.