dataflowr
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_modulesA | List all modules in the dataflowr Deep Learning DIY course. Can be filtered by session number, tag, or GPU requirement. Returns module IDs, titles, descriptions, and tags. |
| get_moduleA | Get full details for a specific module. Includes description, notebooks with GitHub and Colab links, tags, and prerequisites. Use this when a student asks about a specific topic or module. Module IDs: '12' (Attention/Transformers), '2a' (PyTorch tensors), '18b' (diffusion), etc. |
| search_modulesA | Search modules by keyword across titles, descriptions, and tags. Use this to find relevant modules for a student's question or topic. E.g. query='attention' finds the Transformer module; 'generative' finds GANs, autoencoders, flows, diffusion. |
| list_sessionsA | List all course sessions with their titles and module IDs. Sessions group modules into ~2-3 hour teaching blocks. |
| get_sessionA | Get full details for a session, including all its modules, notebooks, and key takeaways. Use this when a student wants to understand what a session covers. |
| get_notebook_urlB | Get the GitHub and Colab URL for a specific notebook. Use this when a student wants to open or run a specific exercise. kind: 'intro' | 'practical' | 'solution' | 'bonus' | 'homework' (default: practical) |
| list_homeworksA | List all graded homeworks with descriptions and notebook links. |
| get_homeworkA | Get full details for a specific homework, including description, website URL, and notebook links. |
| get_slide_contentA | Fetch the lecture slide content for a module from the dataflowr/slides GitHub repo. Returns the slide text (Remark.js markdown, cleaned). Use this when a student wants to review lecture slides or study the theory for a module. |
| get_quiz_contentA | Fetch the quiz questions for a module from the dataflowr/quiz GitHub repo. Returns multiple-choice questions with choices, correct answers, and explanations. Use this when a student wants to self-test their understanding of a module. Modules with quizzes: '2a' (tensors), '2b' (autograd), '3' (loss functions). |
| get_notebook_contentA | Fetch the actual content of a course notebook from GitHub. Returns markdown explanations and (optionally) code cells. Use this when a student wants to understand what a notebook covers, needs help with an exercise, or asks about specific code. kind: 'intro' | 'practical' | 'solution' | 'bonus' | 'homework' (default: practical) include_code: set False for explanations only (default: True) |
| get_notebook_exercisesA | Fetch only the exercise cells from a module's notebook. Returns the exercise prompt (markdown) and the skeleton code the student must fill in. Skips all expository text, imports, and solution code. Prefer this over get_notebook_content when helping a student with an exercise — it gives the task without spoiling surrounding context. kind: 'intro' | 'practical' | 'solution' | 'bonus' | 'homework' (default: practical) |
| get_page_contentA | Fetch the text content of the course website page for a module. Returns the lecture notes, explanations, and learning objectives as plain text. Use this for conceptual questions about a topic. |
| get_course_overviewA | Get a complete overview of the dataflowr course: all sessions, modules, and their relationships. Use this to understand the full structure or to give a student a learning path. |
| sync_catalogA | Compare the local catalog against the dataflowr/website, /slides, and /quiz GitHub repos. Lists modules/slides present in the repos but missing from the catalog, and catalog entries that have no corresponding source file. |
| get_prerequisitesA | Get the prerequisite modules for a given module, with full details for each. Use this when a student asks 'what should I know before studying X?' or seems to be missing background knowledge. |
| check_quiz_answerA | Check whether a student's answer to a quiz question is correct. Returns: correct (bool), the right answer with its text, and an explanation. Call get_quiz_content first to see the questions and choices, then use this tool to validate the student's response. question_number and answer_number are 1-based. |
| suggest_nextA | Suggest what to study after completing a given module. Returns: (1) modules that directly list this one as a prerequisite, (2) the next modules in the same session, and (3) the start of the next session. Use this when a student finishes a module and asks 'what should I do next?' |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| explain_module | Start a tutoring session for a specific module. The agent fetches the module content, checks prerequisites, and explains key concepts step-by-step using the Socratic method. |
| quiz_student | Start an interactive quiz session for a module. The agent presents one question at a time, waits for the student's answer, then gives feedback before moving to the next question. |
| debug_help | Help a student debug their code for a module's practical notebook. The agent reads the exercises and uses Socratic questioning to guide the student toward the solution without giving it away. |
| learning_path | Build a personalised learning path toward a target module. The agent walks the full prerequisite chain and orders the modules the student still needs to cover. known_modules: comma-separated IDs of modules already completed (optional) |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/dataflowr/dataflowr-tools'
If you have feedback or need assistance with the MCP directory API, please join our Discord server