
mcp rag agency book appointments
A solution for agencies to book appointments and issue tokens, with a real-time queue grid via API. Supports off days and daily limits with overflow. Clean architecture with Swagger, LINQ, IoC, and WebAPI. AI-powered RAG for smart queries. Azure/AWS-ready and fully containerized for cloud deployment.
Repository Info
About This Server
A solution for agencies to book appointments and issue tokens, with a real-time queue grid via API. Supports off days and daily limits with overflow. Clean architecture with Swagger, LINQ, IoC, and WebAPI. AI-powered RAG for smart queries. Azure/AWS-ready and fully containerized for cloud deployment.
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
🗓️ AI-Powered Appointment Booking System
✨ Overview
This project is a cutting-edge AI-driven appointment booking system designed for agencies to schedule appointments, and manage queues in real-time efficiently. With AI Chat Bots, Retrieval-Augmented Generation (RAG), and MCP Client/Server integration, the system enables context-aware decision-making using external knowledge sources.
Built with Domain-Driven Development (DDD) principles, the system leverages Apache Kafka & ElasticSearch for appointment indexing, ensuring optimized search & performance across thousands of appointments! The architecture is microservices-ready, making it scalable and modular for enterprise adoption. Now powered by Qdrant Vector DB, it supports AI-driven semantic search and retrieval for enhanced user experiences.
🚀 Key Features
✅ Built-in IdentityServer with Asymmetric JWT Signing 🔐
✅ AI Chat Bots via PromptAPI 🤖
✅ Retrieval-augmented generation (RAG) – combines real-time knowledge retrieval with language generation for smarter, context-aware responses 🧠🔍
✅ Intelligent document parsing using LLM – extracts clean, structured, semantically meaningful text from messy HTML and scanned PDFs 📄🧹🤖
✅ Users can update the AI brain using RAG by scanning URLs & PDF documents on the fly – parsed content is embedded and stored in Qdrant for semantic search 📄🌐⚡
✅ RAG with Hangfire for document scan, parse & upload to Qdrant ⚙️
✅ MCP client/server ready ⚡
✅ Supports off days & max daily appointments 📅
✅ Real-time queue grid via API ⏳
✅ Domain-driven development (DDD) architecture 🏗️
✅ Event dispatcher for domain events 📨
✅ Apache Kafka & ElasticSearch for appointment indexing 📡
✅ Qdrant vector database for AI semantic search 🧠✨
✅ FluentValidation for validation logic ✅
✅ Swagger, LINQ, IoC, WebAPI 🛠️
✅ Automatic email template generation by AI LLM 📧✨
✅ API with Brain – users can type prompts in natural language 🧠📝
✅ Microservices-ready, modular & scalable 🏢🔄
✅ Cloud-ready (Azure/AWS) ☁️
✅ Refit-powered REST API clients 🔌
✅ Producer-consumer pattern with buffer cache for real-time insert, save & update 📤📥
✅ Next.js + React.js chatbot UI – real-time chat interface integrated with backend LLM API 💬⚛️ – supports theme changes
✅ Redis implementation for faster public key retrieval and chat store caching 🧰🔑
📜 Architecture Diagram
User → API Gateway → Appointment Service → Event Processing (Kafka) → Search Index (ElasticSearch)
↳ AI Decision Layer (RAG, MCP Client/Server, Qdrant Vector DB)
🔄 User Flow
1️⃣ User registers on the platform 📝
2️⃣ Admin assigns "Agent" role to the user 👤✅
3️⃣ Admin registers an agency to the system 🏢
4️⃣ Agent adds agency users/customers (who will book appointments) 👥
5️⃣ Agent schedules an appointment for an agency user/customer 📅
6️⃣ AI automatically generates an appointment confirmation email template ✉️🤖
7️⃣ Appointment is indexed in Apache Kafka & ElasticSearch for real-time search 📡
8️⃣ User/customer gets notified with details via AI-enhanced email template 🚀
9️⃣ User interacts with AI freely via API with Brain – type any prompt, get smart AI responses 🧠💬
🔟 Qdrant Vector DB enhances search accuracy with AI-powered similarity matching 🔍💡
1️⃣1️⃣ Microservices-ready architecture ensures efficient scaling across multiple agencies 🏢⚙️
This ensures a streamlined booking experience, allowing agencies to manage appointments efficiently with real-time indexing, AI-generated email templates, and AI-driven semantic search with Qdrant!
🧰 Tech Stack
🟦 .NET 9 – modern, performant runtime for cloud-native applications
🛡️ IdentityServer – secure authentication and token issuance
📅 Hangfire – background job scheduling for asynchronous workflows
📡 Apache Kafka – distributed event streaming platform
🔍 ElasticSearch – high-speed, full-text search for appointment indexing
🧠 Qdrant – vector DB for semantic AI search
🧾 PromptAPI – LLM-based AI chatbot integration
🔌 Refit – declarative REST API clients with interface-based contracts
✅ FluentValidation – fluent rules for robust input validation
🧪 Swagger / OpenAPI – API documentation and test interface
☁️ Azure / AWS Ready – cloud-native infrastructure compatible
📜 Marten DB (PostgreSQL) – event sourcing and document database
🐘 PostgreSQL – backing store for MartenDB event sourcing and ElasticSearch sync
🗄️ MS SQL Server – primary application database for transactional data
🧱 producer/consumer repository pattern – buffer-backed async layer for write-heavy workloads
⚛️ Next.js / React.js – fast, modern frontend framework for interactive chatbot UI
🧠 Redis – in-memory cache for fast public key access and general-purpose caching
🛡️ Security & Access Control
⚠️ Strict access policies & authentication layers
🔐 JWT-based authentication
🔄 Audit logs for booking activities
📬 Contributing
We welcome new features, bug fixes, and performance improvements. 🚀
Feel free to submit pull requests or open issues!
⚡ Future Enhancements
🔮 AI-driven appointment recommendations
📢 Automated notifications for schedule changes
📡 Machine Learning for capacity prediction
📜 License - Apache License 2.0 (TL;DR)
This project follows the Apache License 2.0, which means:
- ✅ You can use, modify, and distribute the code freely.
- ✅ You must include the original license when distributing.
- ✅ You must include the
NOTICEfile if one is provided. - ✅ You can use this in personal & commercial projects.
- ✅ No warranties – use at your own risk! 🚀
For full details, check the Apache License 2.0.
💡 This system isn't just another booking tool—it’s an intelligent, scalable AI-powered solution.
Let’s reshape the future of scheduling with AI, event-driven processing, scalable microservices, and AI-powered search with Qdrant Vector DB! 🚀🔥
This project is based on my other project: https://github.com/myonathanlinkedin/productinfo-mcp-rag
📸 Screenshots of the chatbots
!image
!image
!image
!image
!image
!image
!image
!image
!image
!image
!image
Quick Start
Clone the repository
git clone https://github.com/myonathanlinkedin/mcp-rag-agency-book-appointmentsInstall dependencies
cd mcp-rag-agency-book-appointments
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.