Skip to main content
Glama
HAL-XP

mcp-pronotes

by HAL-XP

mcp-pronotes

MCP server for Pronote -- access French school data from any AI assistant.

License: MIT


The first Model Context Protocol server for Pronote (by Index Education), the #1 school management platform in France used by millions of students and parents. Connect any MCP-compatible AI assistant to your child's school data: grades, timetables, homework, absences, averages, and canteen menus.

Features

Tool

Description

get_timetable

Daily or weekly class schedule (lessons, rooms, teachers, cancellations)

get_grades

Grades with class average, min, max, and coefficient per subject

get_homework

Upcoming homework assignments with due dates and completion status

get_absences

Absences, delays, and punishments for a given period

get_student_info

Student profile, class, school name, and available periods

get_averages

Subject averages with student, class, min, and max values

get_menus

School canteen menus for a date range

All tools support multi-child accounts: pass child_name to select a specific child, or omit it to default to the first child.

Quick start

1. Install dependencies

pip install pronotepy "mcp>=1.20.0"

Or from the requirements file:

pip install -r requirements.txt

2. Configure credentials

Create a config.json in the project directory:

{
  "pronote_url": "https://XXXX.index-education.net/pronote/mobile.parent.html",
  "username": "your_username",
  "password": "your_password",
  "account_type": "parent"
}

Set account_type to "student" if you are logging in with a student account.

Alternatively, use environment variables (they take precedence over config.json):

export PRONOTE_URL="https://XXXX.index-education.net/pronote/mobile.parent.html"
export PRONOTE_USERNAME="your_username"
export PRONOTE_PASSWORD="your_password"
export PRONOTE_ACCOUNT_TYPE="parent"

3. Register with Claude Code

claude mcp add pronotes -- python /path/to/mcp-pronotes/server.py

Or with environment variables instead of config.json:

claude mcp add pronotes \
  -e PRONOTE_URL="https://XXXX.index-education.net/pronote/..." \
  -e PRONOTE_USERNAME="your_username" \
  -e PRONOTE_PASSWORD="your_password" \
  -- python /path/to/mcp-pronotes/server.py

The server communicates over stdio and works with any MCP-compatible client.

Configuration

The server reads configuration from two sources (environment variables override config.json):

Source

Key

Description

config.json

pronote_url

Full Pronote URL for your school

config.json

username

Your Pronote username

config.json

password

Your Pronote password

config.json

account_type

"parent" or "student"

env var

PRONOTE_URL

Overrides pronote_url

env var

PRONOTE_USERNAME

Overrides username

env var

PRONOTE_PASSWORD

Overrides password

env var

PRONOTE_ACCOUNT_TYPE

Overrides account_type

Multi-child support

If you are a parent with multiple children on the same Pronote account, every tool accepts an optional child_name parameter. Pass the child's full name as it appears in Pronote. When omitted, the server defaults to the first child.

Use the get_student_info tool to list all children and their classes.

Authentication

The server authenticates with a standard Pronote username and password. This is the same login you use on the Pronote website or mobile app.

ENT (Espace Numerique de Travail): If your school uses an ENT portal for authentication, you may need to provide the ENT-specific Pronote URL. Check pronotepy's documentation for ENT configuration details.

QR code login: Not yet supported. QR code / token-based authentication is planned for a future release.

Session management

Pronote sessions expire after approximately 30 minutes. The server handles this automatically: it caches the session for 25 minutes and reconnects transparently when needed. No manual intervention required.

Requirements

Credits

Built with pronotepy by bain3.

License

MIT -- Copyright 2026 HAL-XP

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/HAL-XP/mcp-pronotes'

If you have feedback or need assistance with the MCP directory API, please join our Discord server