A local MCP server for VIT students to sync and access VTOP data with Claude.
Project description
VIT Student MCP Server
A powerful local Model Context Protocol (MCP) server designed for VIT students. It seamlessly scrapes your VTOP profile using a headless Playwright browser and exposes all your academic data (Marks, Attendance, Exams, Assignments, Timetable) to Claude Desktop as an AI assistant tool.
Key Features:
- Auto-Captcha Solving: Uses a lightweight Neural Network (
ddddocr) to automatically solve VTOP captchas. - Full Automation: Injects JS exactly like the official Android App to safely extract data from VTOP.
- SQLite Caching: Saves everything locally so the MCP server responds instantly to Claude without needing to hit VTOP repeatedly.
- Claude Integration: Ask Claude questions like "What's my schedule tomorrow?", "Did I pass Cloud Computing?", or "Am I debarred in any subject?"
🛠️ Installation & Setup
1. Prerequisites
You need Python 3.9+ and pip installed on your machine.
If you use Conda, it is highly recommended to create a new environment:
conda create -n vit-mcp python=3.11
conda activate vit-mcp
2. Install Dependencies
Clone this repository and install the required packages:
git clone https://github.com/Inesh03/VIT-STUDENT-MCP-SERVER.git
cd VIT-STUDENT-MCP-SERVER
pip install -r requirements.txt
3. Install Playwright Browsers
The scraper requires headless Chromium to run:
playwright install chromium
🔄 How to Sync Your Data
Before Claude can answer questions, you need to pull your latest data from VTOP into the local database.
Run the sync script in your terminal:
python src/sync.py
You will be prompted to enter your Registration Number and Password. The script will open a hidden browser, solve the Captcha automatically, and download your entire academic profile!
🤖 Connecting to Claude Desktop
To let Claude access your data, you need to add this project as an MCP Server.
- Open your Claude Desktop Configuration File:
- Mac:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Mac:
- Add the following entry, making sure to replace the path with the actual absolute path to the project on your machine:
{
"mcpServers": {
"vit-student": {
"command": "python",
"args": [
"/path/to/your/VIT-STUDENT-MCP-SERVER/src/server.py"
]
}
}
}
(If you are using Conda, replace "python" with the absolute path to your Conda environment's python executable, e.g., /opt/miniconda3/envs/vit-mcp/bin/python)
- Restart Claude Desktop. You should now see the "plug" icon, meaning your VIT Assistant is ready!
⚠️ Disclaimer
This tool is entirely local. Your VTOP password is never saved anywhere, and your academic data is stored only in a local SQLite file (vit_student.db) on your own hard drive.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vit_student_mcp-1.0.0.tar.gz.
File metadata
- Download URL: vit_student_mcp-1.0.0.tar.gz
- Upload date:
- Size: 18.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce2c75cea7e1395bdfa973f17543966acc9d3da4a57d73b88c855066708e47fa
|
|
| MD5 |
54218dafa176798be8e70ab869e31367
|
|
| BLAKE2b-256 |
33819c51d635ead62cad02cb15424fcc929f045396ea7f9ab3856e0d7a8daebb
|
File details
Details for the file vit_student_mcp-1.0.0-py3-none-any.whl.
File metadata
- Download URL: vit_student_mcp-1.0.0-py3-none-any.whl
- Upload date:
- Size: 18.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c259be7e6a3e9b96f748fe7a40986bca4c9c19dfe8bf1ca0241b092d80166d2
|
|
| MD5 |
3cfee8b036138bbe1391fa932b16387b
|
|
| BLAKE2b-256 |
098e1b6137c72d77d049bcd3920946f83804b4b68d47338eb656d9b5e9ed7a20
|