Skip to main content
Glama
README.md
# ๐ŸŽ“ MyCourseVille โ†’ AI

<img width="919" height="528" alt="image" src="https://github.com/user-attachments/assets/87e41bbe-12d1-4501-9c69-2da89acf8c86" />

## โšก What This Is

A local MCP server that lets your AI read your MyCourseVille data.

- Assignments + deadlines
- Submission status
- Grades
- Announcements
- Course files/materials

No more clicking around MCV.

---

## ๐Ÿš€ Quick Install

### Option A (Tell Your AI)

Tell your AI:

> **"Install https://github.com/Helpmepeet/MCV_MCP and connect it as an MCP server"**

Works best if your AI can run terminal commands.

> ๐Ÿค– **For AI agents:** See [AI_AGENT_GUIDE.md](AI_AGENT_GUIDE.md) for installation steps


### Option B (Still Easy)

Clone and run:
```bash
git clone https://github.com/Helpmepeet/MCV_MCP.git
cd MCV_MCP
pip install -r requirements.txt
```

Add your credentials:
```bash
cp .env.example .env
# Edit .env with your MyCourseVille username/password
```


---

## ๐Ÿ” Safe + Private

- Runs on your machine
- Your password stays local
- No tracking
- Open source

**Not official from Chula.**

---

## ๐Ÿง  Example Questions

- *"what's due this week?"*
- *"any missing submissions?"*
- *"what's the most urgent task?"*
- *"show my scores"*
- *"download materials from data mining"*

---

## ๐Ÿ›  Connect to MCP (Claude Desktop)

**1. Find your config file:**
- **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows:** `%APPDATA%/Claude/claude_desktop_config.json`
- **Linux:** `~/.config/Claude/claude_desktop_config.json`

**2. Add this:**
```json
{
  "mcpServers": {
    "mycourseville": {
      "command": "python",
      "args": ["/absolute/path/to/MCV_MCP/server.py"],
      "env": {
        "MCV_USERNAME": "your_student_id",
        "MCV_PASSWORD": "your_password"
      }
    }
  }
}
```

**3. Restart Claude Desktop**

Done.

---

## ๐Ÿงช Test Without AI

```bash
python mycourseville_client.py
```

Shows your homework in terminal.

---

## ๐Ÿ”ง Tools Exposed to AI

1. **`get_assignments`** โ€” Fetch pending homework
2. **`get_assignment_detail`** โ€” Check submission & grade
3. **`get_course_materials`** โ€” List course files
4. **`get_announcements`** โ€” Get course updates
5. **`mark_assignment_done`** โ€” Hide completed tasks

See [ARCHITECTURE.md](ARCHITECTURE.md) for details.

---

## ๐Ÿ†˜ Troubleshooting

**Login failed**
โ†’ Check username/password in `.env`

**No assignments**
โ†’ Check semester/courses in MyCourseVille

**MCP not working**
โ†’ Use absolute path, restart Claude Desktop

---

## ๐Ÿ“š Requirements

- Python 3.10+
- Chulalongkorn University MyCourseVille account
- Claude Desktop or other MCP-compatible AI

---

## ๐Ÿ™ Credits

- AJAX API reverse-engineered from [kcnti/mycourseville-crispy](https://github.com/kcnti/mycourseville-crispy)
- Built with [Model Context Protocol](https://modelcontextprotocol.io)

---

## โš ๏ธ Disclaimer

**Not affiliated with Chulalongkorn University / MyCourseVille.**

Use responsibly. Respect the platform's terms of service.

---

## ๐Ÿ“– More Docs

- [AI_AGENT_GUIDE.md](AI_AGENT_GUIDE.md) โ€” For AI agents installing this
- [ARCHITECTURE.md](ARCHITECTURE.md) โ€” Technical details
- [CONTRIBUTING.md](CONTRIBUTING.md) โ€” How to contribute
- [CHANGELOG.md](CHANGELOG.md) โ€” Version history

---

**Made with โค๏ธ for Chula students who want AI to handle the boring stuff**

Maintenance

ActivityInactive
ResponsivenessSyncing