Skip to main content

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.

  1. Open your Claude Desktop Configuration File:
    • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 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)

  1. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vit_student_mcp-1.0.0.tar.gz (18.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vit_student_mcp-1.0.0-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

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

Hashes for vit_student_mcp-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ce2c75cea7e1395bdfa973f17543966acc9d3da4a57d73b88c855066708e47fa
MD5 54218dafa176798be8e70ab869e31367
BLAKE2b-256 33819c51d635ead62cad02cb15424fcc929f045396ea7f9ab3856e0d7a8daebb

See more details on using hashes here.

File details

Details for the file vit_student_mcp-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for vit_student_mcp-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4c259be7e6a3e9b96f748fe7a40986bca4c9c19dfe8bf1ca0241b092d80166d2
MD5 3cfee8b036138bbe1391fa932b16387b
BLAKE2b-256 098e1b6137c72d77d049bcd3920946f83804b4b68d47338eb656d9b5e9ed7a20

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page