Konektor ClassFlowy dla asystentów AI (MCP)
Ostatnia aktualizacja: 14 października 2026 · English version
ClassFlowy to szkolny zeszyt dla uczniów: zamienia nagrania lekcji i zdjęcia tablicy w lekcje w szkolnym kalendarzu, ze streszczeniami i notatkami tworzonymi przez AI, pracami domowymi i sprawdzianami, podręcznikami oraz tygodniowym planem zajęć. Konektor ClassFlowy pozwala wybranemu przez Ciebie asystentowi AI – Claude, ChatGPT, Gemini albo dowolnemu klientowi obsługującemu Model Context Protocol – czytać Twoje lekcje, prace domowe i podręczniki, pomagać w nauce, a jeśli na to pozwolisz – aktualizować listę prac domowych, lekcje i plan lekcji, za Twoją zgodą.
Adresy serwera
https://classflowy.com/api/mcp/directory– wersja z katalogów Claude i ChatGPT. Każde narzędzie korzysta wyłącznie z usług ClassFlowy, więc wyszukiwarki internetowej tu nie ma.https://classflowy.com/api/mcp– pełna wersja do samodzielnego podłączenia jako własny konektor. Dodaje: ediary_status, ediary_grades, ediary_tests, ediary_homework, ediary_attendance, ediary_messages, ediary_message, ediary_announcements, ediary_changes, ediary_lucky_number, ediary_send_message, ediary_reply_message, ediary_mark_read, web_search.
Oba adresy to zdalne serwery MCP przez Streamable HTTP. Uwierzytelnianie to OAuth 2.1 z PKCE: asystent otwiera stronę logowania ClassFlowy i prosi Cię o zgodę. Nigdy nie wklejasz do asystenta hasła ani klucza. Zgoda udzielona dla wersji z katalogu nie otwiera wersji pełnej.
Wymagania
- Konto ClassFlowy z potwierdzonym adresem e-mail.
- Plan z wywołaniami MCP: Plus, Pro, Max – albo pakiet MCP dokupiony do dowolnego planu.
- Asystent AI obsługujący zdalne serwery MCP z OAuth.
Jak podłączyć
- Claude (claude.ai, aplikacje na komputer i telefon): Ustawienia → Konektory → Dodaj własny konektor → wklej adres pełnej wersji → Połącz → zaloguj się do ClassFlowy → Zezwól. (Jeśli ClassFlowy jest w katalogu konektorów Claude, możesz dodać go też stamtąd.)
- ChatGPT: Ustawienia → Aplikacje i konektory → Zaawansowane → włącz tryb dewelopera → Utwórz → wklej adres serwera, uwierzytelnianie OAuth → zaloguj się do ClassFlowy → Zezwól.
- Gemini (gemini.google.com, tam gdzie dostępne są własne aplikacje): Ustawienia → Połączone aplikacje → Dodaj własną aplikację → wklej adres serwera. Gemini Enterprise wymaga identyfikatora i sekretu klienta: utwórz je w ClassFlowy → Ustawienia → Chatboty → Klient OAuth, z adresem przekierowania podanym przez Gemini.
- Claude Code, Cursor i inni klienci MCP: dodaj serwer MCP po HTTP z adresem serwera; logowanie OAuth ruszy automatycznie.
Co potrafi asystent
| Narzędzie | Opis (po angielsku, tak jak widzi go asystent) | Dostęp | Wersja z katalogu |
|---|---|---|---|
get_calendar | Returns one Monday–Sunday week of the student's school calendar that contains the given date (default: the current week): lessons with uploaded materials (subject, time, topic, number of materials and notes), timetable slots that have no materials yet (the student's own, plus entries classmates or other students share with the student where the own timetable has a free slot), and homework and announced tests or quizzes due on each day (subject, title, scope). A substitution from the school e-register is a lesson of the substitute subject with a substitution field (which lesson it replaces, teacher, note); cancelled lessons are listed under cancelled. Lesson content is usually in Polish. | odczyt | tak |
list_lessons | Lists the student's lessons, newest first, optionally within a date range, for one subject (by name), and/or matching keywords. A lesson that was a substitution in the school e-register has a substitution field (which lesson it replaced, teacher). Keywords are matched against lesson summaries and notes only; recording transcripts are not searched. Each lesson comes with a one- or two-sentence tldr of what it was about. Returns lesson ids for get_lesson. | odczyt | tak |
get_lesson | Returns one lesson: its AI-generated summary (Markdown), topic and date, notes added by the student or by an assistant, whether it was a substitution (which lesson it replaced, teacher, note from the e-register), and the list of attached materials (id, type and title only). Transcripts and OCR text of individual materials are not available through this connector. | odczyt | tak |
get_timetable | Returns the student's weekly timetable: the bell schedule (lesson number to start and end time) and timetable entries (weekday, lesson number, subject, room, week parity). Separately, it lists read-only entries that classmates and other students share with the student (only subjects they chose to share), labelled with the class name or the sharer's nickname. | odczyt | tak |
list_subjects | Lists the student's school subjects, including subjects classmates have shared with them, with the number of lessons and the date of the latest lesson. | odczyt | tak |
add_lesson_note | Appends a note to a lesson, labelled in ClassFlowy as a note from an assistant. The note is shown in the lesson and is taken into account the next time the lesson summary is generated. Existing notes are not changed. | zapis | tak |
list_assignments | Lists the student's homework and announced written work (tests, quizzes, essays) with due date and time, scope of material, whether it is done, and the lesson where it was set or announced. Without dates it covers today and the next 60 days; filters: date range, subject, homework or written work, open or done, keywords. For tests and quizzes it also lists the lessons of that subject since the previous written work (relatedLessons, with lesson ids for get_lesson). Returns entry ids for edit_assignment and delete_assignment. Entries are usually in Polish. | odczyt | tak |
add_assignment | Adds a homework assignment or an announced test, quiz or essay to the student's ClassFlowy calendar. The due day is a date or a Polish phrase counted from today with the student's timetable (for example the subject's next lesson). If an entry of the same subject, kind and due date already exists, it is returned and no second one is added. Existing entries are not changed. | zapis | tak |
edit_assignment | Changes an entry of the student's homework and tests list (id from list_assignments): due date or time, kind, subject, title or scope, or marks it as done or not done. The change is applied in ClassFlowy immediately and replaces the previous values. | zapis | tak |
delete_assignment | Permanently deletes an entry from the student's homework and tests list (id from list_assignments), for example a cancelled test or a mistaken entry. A deleted entry is not re-created when lesson notes are processed again. Applied in ClassFlowy immediately. | zapis | tak |
edit_lesson | Changes the topic, subject, date, start or end time of one of the student's own lessons (id from list_lessons or get_calendar). If the student already has a lesson of that subject on the new date, the two lessons are merged into one. After a change of subject or date the lesson summary is generated again. Lessons shared with the student by others cannot be changed. Applied in ClassFlowy immediately. | zapis | tak |
edit_material | Renames a material (recording, photo, document or note) of the student's own lesson; material ids come from get_lesson. Applied in ClassFlowy immediately. | zapis | tak |
move_material | Moves a material of the student (id from get_lesson) to another lesson, given by targetLessonId or by subject and date; a lesson that does not exist yet is created. A lesson left with no materials or notes is removed. Applied in ClassFlowy immediately. | zapis | tak |
change_timetable | Sets the subject, and optionally the room, teacher and week parity, of one slot (weekday and lesson number) in the student's own weekly timetable. With entryId (from get_timetable) that entry is changed; without it, the entry in that slot is replaced or a new one is added. Entries are never deleted. Entries shared by classmates cannot be changed, only copied into the student's own timetable. Applied in ClassFlowy immediately. | zapis | tak |
list_textbooks | Lists the textbooks on the student's ClassFlowy shelf and textbooks shared with them through a subject, optionally for one subject (by name) or one lesson (by lessonId; a timetable slot may have its own textbooks, e.g. a language group). Returns textbook ids, page counts and whether the pages carry printed page numbers. Archived textbooks and textbooks of accounts without a textbook-enabled plan are not listed. | odczyt | tak |
read_textbook_page | Returns the text of one textbook page (Markdown, formulas in LaTeX), or up to three consecutive pages. `page` is the page number printed in the book, as used in homework ("p. 112, ex. 5" → page "112"). The page number is ONLY what is printed on the page: the uploaded file may miss pages, so the position in the file is not the page number. When the file has no page with that printed number the tool says it is missing and lists the nearest printed pages. `filePage` addresses a page by its position in the file (only for pages without a printed number). Textbook content is usually in Polish. | odczyt | tak |
search_textbook | Full-text search in the student's textbooks (own and shared through a subject), in one textbook or all textbooks of a subject. Returns matching pages (printed and file page number) with a short snippet; read_textbook_page returns the whole page. | odczyt | tak |
knowledge_search | Searches the knowledge base the student keeps in ClassFlowy: named entries such as goals, exams, deadlines, people or preferences, each with short observations and relations to other entries. This is ClassFlowy's own data, separate from the AI client's memory. | odczyt | tak |
knowledge_open | Returns the named entries of the student's ClassFlowy knowledge base with all their observations (with ids) and relations. | odczyt | tak |
knowledge_save | Saves facts to the student's ClassFlowy knowledge base. An existing entry with the same name is extended with the new observations instead of being duplicated. Each observation is one short, self-contained sentence. | zapis | tak |
knowledge_link | Creates relations between entries of the student's ClassFlowy knowledge base, for example from 'Student' via 'is preparing for' to 'Physics final exam'. Entries that do not exist yet are created. | zapis | tak |
knowledge_delete | Permanently deletes a whole entry of the student's ClassFlowy knowledge base (by name) or a single observation (by an observationId returned from knowledge_open or knowledge_search). | zapis | tak |
ediary_status | Returns an overview of the student's connected school e-diary: which e-diary (Librus or VULCAN), whether synchronisation works and when it last ran, the number of unread messages, tests and quizzes in the next 14 days, lesson changes today and tomorrow, grades added in the last 14 days and the lucky number. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_grades | Returns the student's grades from the e-diary with weighted averages (semester 1, semester 2, year), mid-year and final grades or proposals, weight, category, date, teacher's comment and the test the grade is for. Without subject: averages and the latest grades of every subject; with subject: all grades of that subject; onlyNew: grades added in the last 14 days. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_tests | Returns tests and quizzes from the e-diary calendar: upcoming ones (default, next 60 days) or past ones with the grade when there is one; kind all also returns other calendar entries such as parent meetings or trips. The same tests appear as entries in list_assignments. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_homework | Returns homework entered by teachers in the e-diary (due date, subject, title, text, number of files), by default from 3 days ago to 30 days ahead. The same homework appears as entries in list_assignments. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_attendance | Returns the student's attendance from the e-diary (whole school year by default): counts of presences, absences, excused absences, lateness and exemptions, the attendance percentage and the subjects with absences; details or subject add the list of individual absences and lateness. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_messages | Lists messages from the student's e-diary inbox or sent folder, newest first: id, sender or recipients, subject, date, unread flag and a short preview, plus the number of unread messages. Filters: unread only, words in subject, sender or text. Returns message ids for ediary_message. Messages are not available for VULCAN. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_message | Returns one e-diary message (id from ediary_messages): sender, recipients, date, subject, full text and attachment names. It does not mark the message as read: for an unread message only the preview is returned, because opening it marks it as read in the e-diary (ediary_mark_read does that). Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_announcements | Returns school announcements from the e-diary (title, dates, author, text); current ones by default, all = also past ones. Announcements are not available for VULCAN. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_changes | Returns substitutions and cancelled lessons from the e-diary for specific days (lesson number, subject, teacher, room), by default from today for 7 days. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_lucky_number | Returns the school's latest lucky number from the e-diary (the student with this class register number is not called to answer that day) and the day it applies to. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | odczyt | nie – tylko własny konektor |
ediary_send_message | Sends a new message from the student's e-diary account (Librus) to a teacher, the form tutor or the school office, in the student's name. The recipient is given as to (the student's own words, e.g. "wychowawczyni" or "pani Nowak", matched against the e-diary's recipient list) or as receivers (addresses from an earlier response). When no one or more than one person matches, nothing is sent and the response lists candidate recipients with addresses. The message is sent immediately and cannot be withdrawn. The assistant must show the student the exact recipient, subject and full text first and call this tool only after the student explicitly confirms. Not available for VULCAN; at most 20 messages per hour. | zapis | nie – tylko własny konektor |
ediary_reply_message | Replies to a received e-diary message (id from ediary_messages) in its thread, to the original sender, in the student's name; the subject defaults to "Re: <original subject>". The reply is sent immediately and cannot be withdrawn. The assistant must show the student the exact recipient, subject and full text first and call this tool only after the student explicitly confirms. Not available for VULCAN; at most 20 messages per hour. | zapis | nie – tylko własny konektor |
ediary_mark_read | Opens an unread message in the student's e-diary (id from ediary_messages), which marks it as read there; the sender can see that it was read and this cannot be undone. Afterwards ediary_message returns its full text. The assistant must name the message (subject and sender) and call this tool only after the student confirms. Not available for VULCAN. | zapis | nie – tylko własny konektor |
web_search | Searches the public web through ClassFlowy's search provider (Tavily) and returns page titles, URLs and text snippets from third-party websites. Each search uses the student's ClassFlowy web-search allowance. | odczyt | nie – tylko własny konektor |
run_python | Runs a Python 3 program in ClassFlowy's isolated sandbox (no network access; scientific libraries such as numpy and sympy when installed) and returns its standard output, errors and result. Images and files created by the program are not returned through this connector. Each run uses the student's ClassFlowy sandbox allowance. | odczyt | tak |
Na ekranie zgody możesz odznaczyć dostęp do zapisu; asystent widzi wtedy tylko narzędzia do odczytu. Narzędzie do zapisu wprowadza zmianę w ClassFlowy od razu, gdy asystent je wywoła – bez drugiego zatwierdzania w ClassFlowy (w asystencie ClassFlowy takie zmiany zatwierdzasz na karcie); aplikacje takie jak Claude i ChatGPT zwykle same pytają Cię o zgodę przed użyciem narzędzia, które zmienia dane. Transkrypcje i tekst OCR pojedynczych nagrań i zdjęć, oryginalne pliki oraz Twoje rozmowy z asystentem ClassFlowy nigdy nie są dostępne przez konektor.
E-dziennik (tylko wersja pełna). Jeśli połączysz Librusa albo VULCAN w ustawieniach ClassFlowy, narzędzia ediary_* czytają Twoje własne oceny, frekwencję, sprawdziany, prace domowe, zmiany planu, ogłoszenia i wiadomości zsynchronizowane do ClassFlowy (VULCAN: bez wiadomości i ogłoszeń). Bez połączonego e-dziennika odpowiadają tylko, że dziennik nie jest połączony. Z dostępem do zapisu asystent może też wysłać w Twoim imieniu wiadomość albo odpowiedź w e-dzienniku i otworzyć nieprzeczytaną wiadomość, co oznacza ją tam jako przeczytaną. Te działania dzieją się od razu i nie da się ich cofnąć, dlatego asystent powinien najpierw pokazać Ci adresata i pełną treść i poczekać na Twoją zgodę; można wysłać najwyżej 20 wiadomości na godzinę.
Przykładowe polecenia
- „Co przerabialiśmy na ostatniej lekcji fizyki? Streść to w pięciu punktach.” (list_lessons → get_lesson)
- „Co mam jutro w planie lekcji i które lekcje z tego tygodnia mają już notatki?” (get_timetable, get_calendar)
- „Dodaj do dzisiejszej lekcji historii notatkę: wypracowanie o przyczynach I wojny światowej na piątek.” (list_lessons → add_lesson_note)
- „Zapamiętaj, że sprawdzian z matmy mam 12 maja, a trygonometria to mój najsłabszy temat.” (knowledge_save)
- „Ułóż mi trzydniowy plan powtórek do sprawdzianu z biologii na podstawie czterech ostatnich lekcji biologii.” (list_lessons → get_lesson)
- „Jakie mam prace domowe i sprawdziany w przyszłym tygodniu? Przesuń sprawdzian z matmy na piątek.” (list_assignments → edit_assignment)
- „Otwórz stronę 112 w podręczniku do matematyki i wytłumacz zadanie 5.” (list_textbooks → read_textbook_page)
- „Jakie mam oceny z matematyki i czy wychowawczyni napisała coś nowego w e-dzienniku?” (ediary_grades, ediary_messages → ediary_message (wersja pełna))
Limity
Każde wywołanie narzędzia zużywa jedno wywołanie MCP z miesięcznego limitu – także to, które się nie powiodło.
- Standard: bez dostępu do MCP
- Plus: 150 wywołań MCP miesięcznie
- Pro: 3000 wywołań MCP miesięcznie
- Max: 21 000 wywołań MCP miesięcznie
Pakiety: 60 000 wywołań za 5 zł, 150 000 wywołań za 10 zł, 300 000 wywołań za 20 zł, 900 000 wywołań za 50 zł. Wyszukiwarka internetowa i Python zużywają dodatkowo limity wyszukiwań i piaskownicy z Twojego planu, dokładnie tak jak w asystencie ClassFlowy.
Dane i prywatność
- Dane opuszczają ClassFlowy tylko wtedy, gdy asystent wywoła narzędzie w trakcie Twojej rozmowy z nim, i tylko po tym, jak zezwolisz na połączenie.
- ClassFlowy nie otrzymuje Twojej rozmowy z asystentem – tylko wywołania narzędzi, które wliczają się do Twojego planu.
- Tokeny dostępu wygasają po godzinie, tokeny odświeżania po 30 dniach od ostatniego odnowienia. ClassFlowy przechowuje wszystkie tokeny wyłącznie jako skróty SHA-256.
- Asystenta możesz odłączyć w każdej chwili w ClassFlowy → Ustawienia → Chatboty; dostęp kończy się natychmiast.
- Wyszukiwarka internetowa (tylko wersja pełna) wysyła zapytanie do dostawcy wyszukiwania ClassFlowy, Tavily. Python działa na własnym serwerze ClassFlowy bez dostępu do sieci.
- Narzędzia e-dziennika (tylko wersja pełna) zwracają wyłącznie Twoje własne dane z dziennika; oceny, frekwencja i wiadomości innych uczniów nigdy nie są dostępne. Wysłana wiadomość wychodzi z Twojego konta w e-dzienniku do wybranego przez Ciebie adresata.
Pełne dokumenty: polityka prywatności · regulamin · regulamin płatności
Pomoc i bezpieczeństwo
Pytania i pomoc: support@biskupski.site. Zgłoszenia dotyczące bezpieczeństwa: ten sam adres, zobacz security.txt.
ClassFlowy connector for AI assistants (MCP) – English version
Last updated: 14 October 2026 · Wersja polska
ClassFlowy is a school notebook for students: it turns lesson recordings and photos of the board into lessons in a school calendar, with AI-generated lesson summaries, notes, homework and tests, textbooks and a weekly timetable. The ClassFlowy connector lets an AI assistant you choose – Claude, ChatGPT, Gemini or any client that supports the Model Context Protocol – read your lessons, homework and textbooks and help you study, and, if you allow it, keep your homework list, lessons and timetable up to date, with your permission.
Server addresses
https://classflowy.com/api/mcp/directory– the version listed in the Claude and ChatGPT directories. Every tool calls only ClassFlowy's own services, so web search is not included.https://classflowy.com/api/mcp– the full version for connecting ClassFlowy yourself as a custom connector. It adds ediary_status, ediary_grades, ediary_tests, ediary_homework, ediary_attendance, ediary_messages, ediary_message, ediary_announcements, ediary_changes, ediary_lucky_number, ediary_send_message, ediary_reply_message, ediary_mark_read, web_search.
Both are remote MCP servers over Streamable HTTP. Authentication is OAuth 2.1 with PKCE: your assistant opens ClassFlowy's sign-in page and asks for your consent. You never paste a password or a key into the assistant. An authorization granted for the directory version does not open the full version.
Requirements
- A ClassFlowy account with a confirmed email address.
- A plan that includes MCP calls: Plus, Pro, Max – or an MCP add-on on any plan.
- An AI assistant that supports remote MCP servers with OAuth.
How to connect
- Claude (claude.ai, desktop and mobile apps): Settings → Connectors → Add custom connector → paste the full server address → Connect → sign in to ClassFlowy → Allow. (If ClassFlowy is listed in Claude's connector directory, you can also add it from there.)
- ChatGPT: Settings → Apps & Connectors → Advanced → turn on developer mode → Create → paste the server address, authentication OAuth → sign in to ClassFlowy → Allow.
- Gemini (gemini.google.com, where custom apps are available): Settings → Connected Apps → Add a custom app → paste the server address. Gemini Enterprise needs a client ID and secret: create them in ClassFlowy → Settings → Chatbots → OAuth client, using the redirect URI shown by Gemini.
- Claude Code, Cursor and other MCP clients: add an HTTP MCP server with the server address; the OAuth sign-in starts automatically.
What the assistant can do
| Tool | What it does | Access | Directory version |
|---|---|---|---|
get_calendar | Returns one Monday–Sunday week of the student's school calendar that contains the given date (default: the current week): lessons with uploaded materials (subject, time, topic, number of materials and notes), timetable slots that have no materials yet (the student's own, plus entries classmates or other students share with the student where the own timetable has a free slot), and homework and announced tests or quizzes due on each day (subject, title, scope). A substitution from the school e-register is a lesson of the substitute subject with a substitution field (which lesson it replaces, teacher, note); cancelled lessons are listed under cancelled. Lesson content is usually in Polish. | read | yes |
list_lessons | Lists the student's lessons, newest first, optionally within a date range, for one subject (by name), and/or matching keywords. A lesson that was a substitution in the school e-register has a substitution field (which lesson it replaced, teacher). Keywords are matched against lesson summaries and notes only; recording transcripts are not searched. Each lesson comes with a one- or two-sentence tldr of what it was about. Returns lesson ids for get_lesson. | read | yes |
get_lesson | Returns one lesson: its AI-generated summary (Markdown), topic and date, notes added by the student or by an assistant, whether it was a substitution (which lesson it replaced, teacher, note from the e-register), and the list of attached materials (id, type and title only). Transcripts and OCR text of individual materials are not available through this connector. | read | yes |
get_timetable | Returns the student's weekly timetable: the bell schedule (lesson number to start and end time) and timetable entries (weekday, lesson number, subject, room, week parity). Separately, it lists read-only entries that classmates and other students share with the student (only subjects they chose to share), labelled with the class name or the sharer's nickname. | read | yes |
list_subjects | Lists the student's school subjects, including subjects classmates have shared with them, with the number of lessons and the date of the latest lesson. | read | yes |
add_lesson_note | Appends a note to a lesson, labelled in ClassFlowy as a note from an assistant. The note is shown in the lesson and is taken into account the next time the lesson summary is generated. Existing notes are not changed. | write | yes |
list_assignments | Lists the student's homework and announced written work (tests, quizzes, essays) with due date and time, scope of material, whether it is done, and the lesson where it was set or announced. Without dates it covers today and the next 60 days; filters: date range, subject, homework or written work, open or done, keywords. For tests and quizzes it also lists the lessons of that subject since the previous written work (relatedLessons, with lesson ids for get_lesson). Returns entry ids for edit_assignment and delete_assignment. Entries are usually in Polish. | read | yes |
add_assignment | Adds a homework assignment or an announced test, quiz or essay to the student's ClassFlowy calendar. The due day is a date or a Polish phrase counted from today with the student's timetable (for example the subject's next lesson). If an entry of the same subject, kind and due date already exists, it is returned and no second one is added. Existing entries are not changed. | write | yes |
edit_assignment | Changes an entry of the student's homework and tests list (id from list_assignments): due date or time, kind, subject, title or scope, or marks it as done or not done. The change is applied in ClassFlowy immediately and replaces the previous values. | write | yes |
delete_assignment | Permanently deletes an entry from the student's homework and tests list (id from list_assignments), for example a cancelled test or a mistaken entry. A deleted entry is not re-created when lesson notes are processed again. Applied in ClassFlowy immediately. | write | yes |
edit_lesson | Changes the topic, subject, date, start or end time of one of the student's own lessons (id from list_lessons or get_calendar). If the student already has a lesson of that subject on the new date, the two lessons are merged into one. After a change of subject or date the lesson summary is generated again. Lessons shared with the student by others cannot be changed. Applied in ClassFlowy immediately. | write | yes |
edit_material | Renames a material (recording, photo, document or note) of the student's own lesson; material ids come from get_lesson. Applied in ClassFlowy immediately. | write | yes |
move_material | Moves a material of the student (id from get_lesson) to another lesson, given by targetLessonId or by subject and date; a lesson that does not exist yet is created. A lesson left with no materials or notes is removed. Applied in ClassFlowy immediately. | write | yes |
change_timetable | Sets the subject, and optionally the room, teacher and week parity, of one slot (weekday and lesson number) in the student's own weekly timetable. With entryId (from get_timetable) that entry is changed; without it, the entry in that slot is replaced or a new one is added. Entries are never deleted. Entries shared by classmates cannot be changed, only copied into the student's own timetable. Applied in ClassFlowy immediately. | write | yes |
list_textbooks | Lists the textbooks on the student's ClassFlowy shelf and textbooks shared with them through a subject, optionally for one subject (by name) or one lesson (by lessonId; a timetable slot may have its own textbooks, e.g. a language group). Returns textbook ids, page counts and whether the pages carry printed page numbers. Archived textbooks and textbooks of accounts without a textbook-enabled plan are not listed. | read | yes |
read_textbook_page | Returns the text of one textbook page (Markdown, formulas in LaTeX), or up to three consecutive pages. `page` is the page number printed in the book, as used in homework ("p. 112, ex. 5" → page "112"). The page number is ONLY what is printed on the page: the uploaded file may miss pages, so the position in the file is not the page number. When the file has no page with that printed number the tool says it is missing and lists the nearest printed pages. `filePage` addresses a page by its position in the file (only for pages without a printed number). Textbook content is usually in Polish. | read | yes |
search_textbook | Full-text search in the student's textbooks (own and shared through a subject), in one textbook or all textbooks of a subject. Returns matching pages (printed and file page number) with a short snippet; read_textbook_page returns the whole page. | read | yes |
knowledge_search | Searches the knowledge base the student keeps in ClassFlowy: named entries such as goals, exams, deadlines, people or preferences, each with short observations and relations to other entries. This is ClassFlowy's own data, separate from the AI client's memory. | read | yes |
knowledge_open | Returns the named entries of the student's ClassFlowy knowledge base with all their observations (with ids) and relations. | read | yes |
knowledge_save | Saves facts to the student's ClassFlowy knowledge base. An existing entry with the same name is extended with the new observations instead of being duplicated. Each observation is one short, self-contained sentence. | write | yes |
knowledge_link | Creates relations between entries of the student's ClassFlowy knowledge base, for example from 'Student' via 'is preparing for' to 'Physics final exam'. Entries that do not exist yet are created. | write | yes |
knowledge_delete | Permanently deletes a whole entry of the student's ClassFlowy knowledge base (by name) or a single observation (by an observationId returned from knowledge_open or knowledge_search). | write | yes |
ediary_status | Returns an overview of the student's connected school e-diary: which e-diary (Librus or VULCAN), whether synchronisation works and when it last ran, the number of unread messages, tests and quizzes in the next 14 days, lesson changes today and tomorrow, grades added in the last 14 days and the lucky number. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_grades | Returns the student's grades from the e-diary with weighted averages (semester 1, semester 2, year), mid-year and final grades or proposals, weight, category, date, teacher's comment and the test the grade is for. Without subject: averages and the latest grades of every subject; with subject: all grades of that subject; onlyNew: grades added in the last 14 days. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_tests | Returns tests and quizzes from the e-diary calendar: upcoming ones (default, next 60 days) or past ones with the grade when there is one; kind all also returns other calendar entries such as parent meetings or trips. The same tests appear as entries in list_assignments. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_homework | Returns homework entered by teachers in the e-diary (due date, subject, title, text, number of files), by default from 3 days ago to 30 days ahead. The same homework appears as entries in list_assignments. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_attendance | Returns the student's attendance from the e-diary (whole school year by default): counts of presences, absences, excused absences, lateness and exemptions, the attendance percentage and the subjects with absences; details or subject add the list of individual absences and lateness. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_messages | Lists messages from the student's e-diary inbox or sent folder, newest first: id, sender or recipients, subject, date, unread flag and a short preview, plus the number of unread messages. Filters: unread only, words in subject, sender or text. Returns message ids for ediary_message. Messages are not available for VULCAN. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_message | Returns one e-diary message (id from ediary_messages): sender, recipients, date, subject, full text and attachment names. It does not mark the message as read: for an unread message only the preview is returned, because opening it marks it as read in the e-diary (ediary_mark_read does that). Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_announcements | Returns school announcements from the e-diary (title, dates, author, text); current ones by default, all = also past ones. Announcements are not available for VULCAN. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_changes | Returns substitutions and cancelled lessons from the e-diary for specific days (lesson number, subject, teacher, room), by default from today for 7 days. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_lucky_number | Returns the school's latest lucky number from the e-diary (the student with this class register number is not called to answer that day) and the day it applies to. Data comes from the student's own e-diary account (Librus or VULCAN) synchronised into ClassFlowy; it is private to the student and usually in Polish. Without a connected e-diary the tool returns connected: false and a hint to connect Librus or VULCAN in ClassFlowy settings. | read | no – custom connector only |
ediary_send_message | Sends a new message from the student's e-diary account (Librus) to a teacher, the form tutor or the school office, in the student's name. The recipient is given as to (the student's own words, e.g. "wychowawczyni" or "pani Nowak", matched against the e-diary's recipient list) or as receivers (addresses from an earlier response). When no one or more than one person matches, nothing is sent and the response lists candidate recipients with addresses. The message is sent immediately and cannot be withdrawn. The assistant must show the student the exact recipient, subject and full text first and call this tool only after the student explicitly confirms. Not available for VULCAN; at most 20 messages per hour. | write | no – custom connector only |
ediary_reply_message | Replies to a received e-diary message (id from ediary_messages) in its thread, to the original sender, in the student's name; the subject defaults to "Re: <original subject>". The reply is sent immediately and cannot be withdrawn. The assistant must show the student the exact recipient, subject and full text first and call this tool only after the student explicitly confirms. Not available for VULCAN; at most 20 messages per hour. | write | no – custom connector only |
ediary_mark_read | Opens an unread message in the student's e-diary (id from ediary_messages), which marks it as read there; the sender can see that it was read and this cannot be undone. Afterwards ediary_message returns its full text. The assistant must name the message (subject and sender) and call this tool only after the student confirms. Not available for VULCAN. | write | no – custom connector only |
web_search | Searches the public web through ClassFlowy's search provider (Tavily) and returns page titles, URLs and text snippets from third-party websites. Each search uses the student's ClassFlowy web-search allowance. | read | no – custom connector only |
run_python | Runs a Python 3 program in ClassFlowy's isolated sandbox (no network access; scientific libraries such as numpy and sympy when installed) and returns its standard output, errors and result. Images and files created by the program are not returned through this connector. Each run uses the student's ClassFlowy sandbox allowance. | read | yes |
On the consent screen you can untick write access; the assistant then sees only the read tools. A write tool applies its change in ClassFlowy as soon as the assistant calls it – there is no second approval step in ClassFlowy (in the ClassFlowy assistant you approve such changes on a card); assistant apps such as Claude and ChatGPT usually ask you to confirm before using a tool that changes data. Transcripts and OCR text of individual recordings and photos, original files and your conversations with the ClassFlowy assistant are never available through the connector.
School e-diary (full version only). If you have connected Librus or VULCAN in ClassFlowy settings, the ediary_* tools read your own grades, attendance, tests, homework, timetable changes, announcements and messages as synchronised into ClassFlowy (VULCAN: without messages and announcements). Without a connected e-diary they only reply that no e-diary is connected. With write access the assistant can also send a message or a reply in your e-diary in your name and open an unread message, which marks it as read there. These actions happen immediately and cannot be undone, so the assistant should show you the recipient and the full text and wait for your confirmation; at most 20 messages per hour can be sent.
Example prompts
- “What did we cover in my last physics lesson? Summarize it in five bullet points.” (list_lessons → get_lesson)
- “What's on my timetable tomorrow, and which of this week's lessons already have notes?” (get_timetable, get_calendar)
- “Add a note to today's history lesson: essay on the causes of World War I is due on Friday.” (list_lessons → add_lesson_note)
- “Remember that my maths final exam is on 12 May and that trigonometry is my weakest topic.” (knowledge_save)
- “Make me a three-day revision plan for my biology test based on my last four biology lessons.” (list_lessons → get_lesson)
- “What homework and tests do I have next week? Move the maths test to Friday.” (list_assignments → edit_assignment)
- “Open page 112 of my maths textbook and explain exercise 5.” (list_textbooks → read_textbook_page)
- “What are my grades in maths, and is there anything new from my form tutor in the e-diary?” (ediary_grades, ediary_messages → ediary_message (full version))
Limits
Every tool call uses one MCP call from your monthly allowance – including calls that fail.
- Standard: no MCP access
- Plus: 150 MCP calls per month
- Pro: 3,000 MCP calls per month
- Max: 21,000 MCP calls per month
Add-ons: 60,000 calls for 5 PLN, 150,000 calls for 10 PLN, 300,000 calls for 20 PLN, 900,000 calls for 50 PLN. Web search and Python additionally use the plan's web-search and sandbox allowances, exactly as in the ClassFlowy assistant.
Data and privacy
- Data leaves ClassFlowy only when your assistant calls a tool during your conversation with it, and only after you allowed the connection.
- ClassFlowy does not receive your conversation with the assistant – only the tool calls, which count towards your plan.
- Access tokens expire after one hour, refresh tokens 30 days after their last renewal. ClassFlowy stores all tokens only as SHA-256 hashes.
- You can disconnect an assistant at any time in ClassFlowy → Settings → Chatbots; access ends immediately.
- Web search (full version only) sends the query to ClassFlowy's search provider, Tavily. Python runs on ClassFlowy's own server without network access.
- E-diary tools (full version only) return only your own e-diary data; grades, attendance and messages of other students are never available. A message you send goes from your e-diary account to the recipient you chose.
Full privacy policy (Polish): /prywatnosc · Terms of service (Polish): /regulamin · Payment terms (Polish): /regulamin-platnosci
Support and security
Questions and support: support@biskupski.site. Security issues: the same address, see security.txt.