SafeSight MCP
README.md
# š„ SafeSight MCP
> A Model Context Protocol (MCP) server that enables AI assistants to interact with the SafeSight Eye Care Management System.




---
## š Overview
SafeSight MCP is a production-ready **Model Context Protocol (MCP)** server built for the **SafeSight Eye Care Management System**.
It allows AI assistants to communicate with the SafeSight backend through standardized MCP tools, enabling real-time access to clinic information, doctor availability, appointment scheduling, appointment rescheduling, and appointment cancellation.
The project is designed with a clean layered architecture, making it easy to extend with additional healthcare tools in the future.
---
## šÆ Motivation
Large Language Models become significantly more useful when they can interact with real-world systems.
This project demonstrates how the Model Context Protocol (MCP) can securely connect an AI assistant with a healthcare management system, enabling tasks such as searching doctors, checking appointment availability, booking appointments, rescheduling visits, and cancelling appointments through standardized MCP tools.
The goal of this project is to explore AI-assisted healthcare workflows using MCP while following clean architecture and reusable design principles.
## ⨠Features
- š¬ Public AI Chat
- šØāāļø List Doctors
- š Search Doctors
- š
View Available Appointment Slots
- ā
Book Appointments
- š Reschedule Appointments
- ā Cancel Appointments
- š Production Backend Integration
- ā” Modular Architecture
- š§© Reusable Utilities
---
## šļø Architecture
```
AI Assistant
ā
ā¼
SafeSight MCP Server
ā
āāāāāāāāāāāāāāāāāā¼āāāāāāāāāāāāāāāāā
ā¼ ā¼ ā¼
Doctor Tools Appointment Tools Public Chat
ā ā ā
āāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāā
ā¼
Service Layer
ā¼
API Client
ā¼
SafeSight Backend API
ā¼
MongoDB Atlas
```
---
## š Project Structure
```text
src/
ā
āāā api/
ā āāā apiClient.js
ā āāā endpoints.js
ā
āāā config/
ā āāā constants.js
ā āāā env.js
ā
āāā services/
ā āāā appointmentService.js
ā āāā doctorService.js
ā āāā publicChatService.js
ā
āāā tools/
ā āāā appointmentTools.js
ā āāā doctorTools.js
ā āāā publicChatTool.js
ā
āāā utils/
ā āāā successResponse.js
ā āāā errorResponse.js
ā āāā formatAppointment.js
ā āāā formatDoctors.js
ā āāā formatSlots.js
ā
āāā server.js
```
---
## š Available MCP Tools
| Tool | Description |
|------|-------------|
| Public Chat | General clinic information |
| List Doctors | Returns all available doctors |
| Search Doctors | Search doctors by name or specialization |
| Get Available Slots | View appointment availability |
| Book Appointment | Create a new appointment |
| Reschedule Appointment | Update an existing appointment |
| Cancel Appointment | Cancel an appointment |
---
## āļø Installation
### Clone the repository
```bash
git clone https://github.com/YOUR_USERNAME/safesight-mcp.git
```
### Install dependencies
```bash
npm install
```
### Configure environment
Create a `.env` file.
```env
BACKEND_BASE_URL=https://your-backend.onrender.com
SERVER_NAME=SafeSight MCP
SERVER_VERSION=1.0.0
```
### Run the MCP server
```bash
npm run dev
```
---
## šø Screenshots
### MCP Inspector
> Add screenshots inside the `screenshots/` folder.
### Public Chat

### Search Doctors

### Available Slots

### Book Appointment

---
## š§° Tech Stack
- Node.js
- JavaScript (ES Modules)
- Model Context Protocol SDK
- Zod
- REST API
- Express.js Backend
- MongoDB Atlas
- Render
---
## š Future Improvements
- Patient Search
- Patient Profile
- Clinic Services
- Doctor Schedule Management
- Authentication
- Streaming Responses
- Docker Support
- npm Package Distribution
---
## š License
This project is licensed under the MIT License.
---
## šØāš» Author
**Avinash Mutum**
If you found this project helpful, consider giving it a ā on GitHub.
This server cannot be deployed
Maintenance
ActivityStale
ResponsivenessNo issues