Multi-User MCP Server with Chatbot and Agent
About
Multi user Full Stack App with Chatbot and Agent in Javascript, FastAPI and PyMongo
Details
- Author
- r16academy
- Downloads
- 151
- Categories
- AI
Jump to
- User authentication with registration, login, and password recovery.
- Dual AI interfaces: Chatbot for Q&A, Agent for tool usage.
- Real-time WebSocket-based chat messaging.
- Persistent, user-specific conversation history.
- File upload for document analysis during chat.
- Responsive, mobile-friendly HTML/CSS/JS frontend.
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Multi-User MCP Server with Chatbot and AgentCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Clone the repository, install Python dependencies with pip install -r requirements.txt, set environment variables (OpenAI key, MongoDB URI, email credentials) in a .env file, optionally install MCP server dependencies with npm install, then run python main.py. The app becomes available at http://localhost:5000/. Use the /register, /login, /chatbot, and /agent endpoints for respective features.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"multi-user mcp server with chatbot and agent": {
"mcp-server-beginner-app": {
"command": "python",
"args": [
"main.py"
]
}
}
}
}
McpServers
{
"mcp-server-beginner-app": {
"command": "python",
"args": [
"main.py"
]
}
}
Multi-User MCP Server with Chatbot and Agent
---
π Overview
A full-stack web application implementing the Model Context Protocol (MCP) to provide two AI assistant experiences: - Chatbot: Conversational Q&A - Agent: Tool-using AI agentFeatures include user authentication, persistent chat history, real-time WebSocket messaging, and file upload for document analysis. The app is production-ready and deployable on Heroku.
---
β¨ Features
- User Authentication: Registration, login, password recovery, email verification - Dual AI Interfaces: Chatbot and Agent, each with unique capabilities - Real-Time Chat: WebSocket-based instant messaging - Conversation History: Persistent, user-specific chat logs - File Upload: Analyze documents in chat - MCP Server Integration: Connects to multiple MCP servers for tool execution - Responsive UI: Clean, mobile-friendly HTML/CSS/JS frontend - Heroku Deployment: Ready for cloud deployment---
π οΈ Tech Stack
- Backend: Python 3.10+, FastAPI, MongoDB, Uvicorn - Frontend: HTML, CSS, Vanilla JavaScript (seestatic/)
- AI Integration: OpenAI API or compatible LLM providers
- Real-Time: WebSocket
- Deployment: Heroku (Procfile included)
---
π Project Structure
.
βββ main.py # FastAPI app entry point
βββ routes/ # API route handlers (auth, chatbot, agent, feedback)
βββ static/ # Frontend HTML, CSS, JS for all pages
β βββ chatbot/ # Chatbot interface
β βββ agent/ # Agent interface
β βββ login/ # Login page
β βββ register/ # Registration page
β βββ ... # Other static assets
βββ tools/ # MCP server integration logic
βββ email_config.py # Email settings for verification
βββ config.py # General configuration
βββ servers_config.json # MCP server connection details
βββ requirements.txt # Python dependencies
βββ Procfile # Heroku process file
βββ README.md # This file
---
β‘ Getting Started
Prerequisites
- Python 3.10+ - MongoDB (local or Atlas) - Node.js (for MCP server dependencies) - Heroku CLI (for deployment)Installation
1. Clone the repository: git clone <your-repo-url>
cd <repo-folder>
2. Install Python dependencies:
pip install -r requirements.txt
3. Set up environment variables:
- Copy .env.example to .env and fill in your secrets (OpenAI key, MongoDB URI, email credentials).
4. Install MCP server dependencies (if needed):
npm install
5. Run the server locally:
python main.py
The app will be available at http://localhost:5000/.
---
π‘ Usage
- Register:/register to create a new account
- Login: /login to sign in
- Chatbot: /chatbot for general Q&A
- Agent: /agent for advanced tool-using AI
- File Upload: Use the file input in chat to upload documents
- Conversation History: View and revisit past conversations in the sidebar
---
βοΈ Deployment
- Heroku: Ready for Heroku deployment. Use the includedProcfile and set environment variables in the Heroku dashboard.
- Static Files: All frontend assets are served from the static/ directory.
---
π Security & Best Practices
- Authentication tokens stored securely (cookies/localStorage) - Passwords hashed before storage - Email verification required for new accounts - CORS enabled for cross-origin requests---
π€ Contributing
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.---
π License
This project is licensed under the MIT License.---
π Acknowledgements
- FastAPI - MongoDB - OpenAI - HerokuSign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.
