# spbstu-mcp

> An unofficial MCP server that gives Claude access to SPbPU student services: Moodle, university mail, openedu.ru, timetable and more.

spbstu-mcp is an open-source MCP server written in Go for students of Peter the Great St. Petersburg Polytechnic University (SPbPU). It connects Claude to the dl.spbstu.ru Moodle, the university Exchange mailbox, openedu.ru, the public timetable and my.spbstu.ru. The project is unofficial and not affiliated with SPbPU or openedu.ru. The latest release listed is v0.7.0.

## What It Is

The server exposes university services as MCP tools over stdio, so Claude Code or Claude Desktop can answer questions such as what is due this week, whether coursework was graded, or draft a reply to an email. You sign in with your university account. The password is read from the operating system credential store (macOS keychain, Linux Secret Service, Windows Credential Manager) at sign-in time.

## What It Covers

- **dl.spbstu.ru (Moodle):** courses, contents, assignments with full task text, deadlines, submission status and feedback, grades, forums, quizzes, messages, and file downloads. It can also submit work, post to forums and send private messages.
- **Mail:** list, search and read messages, save attachments, move or mark messages, view the calendar. Replies and new messages are saved as drafts unless sending is requested.
- **openedu.ru:** enrolled courses, progress, dates, outlines, page text, and test questions, with the ability to save answers.
- **Timetable and my.spbstu.ru:** weekly timetable of any group or teacher, record book grades with semester averages, study plan, work plan and academic debts.
- **Cross-service tools:** a study overview combining deadlines, progress and unread mail, a per-subject summary, and an .ics export of due dates with reminders.
- **Answer bases:** lookup of test answers on polyvsp.ru and polyphis.ru, with source links.

## Setup Path

Store the login in the credential store, install via Homebrew or a release archive (or build with Go from source), then register the binary with Claude Code or Claude Desktop. A -demo flag serves made-up student data without credentials. Flags configure the credential item name, download folder and default timetable group.

## Security Model

Sessions are stored in a user-only readable state file. Write actions are described to the model as requiring user confirmation first. Timed and proctored exams are not supported, and test answers are only saved, not submitted automatically.

## Features
- Moodle courses, assignments, deadlines, grades and forums
- Assignment submission and forum posting
- University mailbox read, search, draft and send
- openedu.ru course progress, outlines and test answers saving
- Public timetable for any group or teacher
- my.spbstu.ru record book, study plan and debts
- Combined study overview and ICS calendar export
- Answer base lookup
- Credentials kept in OS credential store
- Demo mode with made-up data

## Integrations
Claude Code, Claude Desktop, dl.spbstu.ru Moodle, mail.spbstu.ru Exchange, openedu.ru, ruz.spbstu.ru, my.spbstu.ru, Homebrew

## Platforms
WINDOWS, MACOS, LINUX, WEB, API, CLI

## Pricing
Open Source

## Version
v0.7.0

## Links
- Website: https://github.com/kad-xyz/spbstu-mcp
- Documentation: https://github.com/kad-xyz/spbstu-mcp#readme
- Repository: https://github.com/kad-xyz/spbstu-mcp
- EveryDev.ai: https://www.everydev.ai/tools/spbstu-mcp
