Token导航 LogoToken导航TokenDH.com
Dataflowr Tools logo
运维云端stdio官方级别未说明来源级核验

Dataflowr Tools

MCP Server

提供CLI、REST API和MCP服务器,用于访问和教授深度学习DIY课程内容。

工具数

20

提示词数

0

GitHub Stars

4

资源数

0
教育工具PythonClaudeClaudeCursorVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

dataflowr

提供方

dataflowr

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install dataflowr

详细介绍

dataflowr-CLI、API和MCP服务器,用于深度学习自主学习课程

![License](LICENSE) ![Python](https://pypi.org/project/dataflowr/)

深度学习DIY 该课程通过动手笔记本从头开始教授PyTorch——张量、autodiff、CNN、RNN、Transformers、VAE和扩散模型。课程资源:

该软件包将课程公开为CLI、REST API和MCP服务器,以便AI代理可以导航和教授它。

Demo

快速开始使用Claude Code

选项1--托管服务器(无需安装): 添加一个 .mcp.json 指向共享实例的项目根目录下的文件:

{
  "mcpServers": {
    "dataflowr": {
      "type": "http",
      "url": "https://dataflowr.paris.inria.fr/mcp"
    }
  }
}

选项2——本地服务器: 自己运行它 uv (首次使用时下载):

{
  "mcpServers": {
    "dataflowr": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "--with", "dataflowr[mcp]", "python", "-m", "dataflowr.mcp_server"]
    }
  }
}

当您打开文件夹时,Claude Code会自动拾取此信息。

要预先批准所有数据流工具(无每次调用提示),还可以添加 .claude/settings.json:

{
  "permissions": {
    "allow": ["mcp__dataflowr"]
  }
}

对于全局允许(所有项目),将其添加到 ~/.claude/settings.json.

______________________________________________________________________

安装

# with uv (recommended)
uv pip install dataflowr          # CLI only
uv pip install dataflowr[api]     # CLI + REST API
uv pip install dataflowr[mcp]     # CLI + MCP server
uv pip install dataflowr[all]     # everything

# with pip
pip install dataflowr
pip install dataflowr[mcp]

或来源:

git clone https://github.com/dataflowr/dataflowr-tools
cd dataflowr-tools
uv pip install -e ".[all]"

______________________________________________________________________

命令行界面

# Course overview
dataflowr info

# List all modules
dataflowr modules list

# Filter by session, tag, or GPU requirement
dataflowr modules list --session 7
dataflowr modules list --tag attention
dataflowr modules list --gpu

# Full module details (with notebook links)
dataflowr module 12

# Fetch notebook content from GitHub
dataflowr notebook 12                        # practical (default)
dataflowr notebook 12 --kind intro
dataflowr notebook 12 --no-code              # markdown only

# Fetch course website page text (raw markdown from dataflowr/website)
dataflowr page 12

# Fetch lecture slides (from dataflowr/slides)
dataflowr slides 12

# Fetch quiz questions (from dataflowr/quiz)
dataflowr quiz 2a
dataflowr quiz 3

# Browse transcript knowledge base (318 concept notes from lectures)
dataflowr transcripts search "backprop"
dataflowr transcripts get "training loop"

# Compare catalog against website + slides repos
dataflowr sync

# Search by keyword
dataflowr search "attention transformer"
dataflowr search "generative"

# Sessions
dataflowr sessions list
dataflowr sessions get 7

# Homeworks
dataflowr homeworks list
dataflowr homeworks get 1

# JSON output (pipe-friendly)
dataflowr modules list --json | jq '.[] | select(.session == 9)'
dataflowr module 18b --json

______________________________________________________________________

REST API

uvicorn dataflowr.api:app --reload
# → http://localhost:8000
# → http://localhost:8000/docs  (Swagger UI)

终点:

方法路径描述
得到/课程概述
得到/modules列出所有模块(?session=, ?tag=, ?gpu=)
得到/modules/{id}按ID获取模块
得到/modules/{id}/notebooks获取模块的笔记本(?kind=)
得到/modules/{id}/notebooks/{kind}/content从GitHub获取笔记本单元格(?include_code=)
得到/modules/{id}/slides从数据流/幻灯片中获取讲座幻灯片内容
得到/modules/{id}/quiz从数据流/测验中获取测验问题
得到/modules/{id}/page从数据流/网站获取模块源代码标记
得到/catalog/sync将目录与网站+幻灯片库进行比较
得到/sessions列出所有会话
得到/sessions/{n}获取模块会话
得到/homeworks列出所有家庭作业
得到/homeworks/{id}通过ID获取作业
得到/search?q=...搜索模块
得到/transcripts/search?q=...搜索成绩单概念笔记
得到/transcripts/{concept}获取成绩单概念笔记

示例:

curl http://localhost:8000/modules/12
curl http://localhost:8000/sessions/7
curl http://localhost:8000/search?q=diffusion
curl "http://localhost:8000/modules?session=9&gpu=true"
curl "http://localhost:8000/modules?tag=attention"
curl "http://localhost:8000/modules/12/notebooks/practical/content?include_code=false"
curl http://localhost:8000/modules/12/page
curl http://localhost:8000/modules/2a/quiz
curl http://localhost:8000/modules/3/quiz
curl "http://localhost:8000/transcripts/search?q=backprop"
curl http://localhost:8000/transcripts/training%20loop

______________________________________________________________________

MCP服务器(用于AI代理)

使该课程可供Claude、Cursor、VS Code和其他MCP兼容代理本地使用。 建立在 官方MCP Python SDK (FastMCP)。

标准传输(本地--Claude桌面、光标、VS代码、Claude代码)

python -m dataflowr.mcp_server

HTTP传输(远程/共享部署)

python -m dataflowr.mcp_server --http
# → POST http://localhost:8001/mcp  (or $PORT if set)

______________________________________________________________________

客户端配置

克劳德代码(VSCode扩展或CLI)

添加一个 .mcp.json 文件在 项目的根 (作业仓库、笔记本文件夹等):

{
  "mcpServers": {
    "dataflowr": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "--with", "dataflowr[mcp]", "python", "-m", "dataflowr.mcp_server"]
    }
  }
}

当您打开文件夹时,Claude Code会自动拾取此信息。无需全局安装-- uv 下载 dataflowr[mcp] 第一次使用。

要预先批准所有数据流工具(无每次调用提示),还可以添加 .claude/settings.json:

{
  "permissions": {
    "allow": ["mcp__dataflowr"]
  }
}

或者在全球范围内注册(每个项目都有):

claude mcp add --scope user dataflowr -- uv run --with dataflowr[mcp] python -m dataflowr.mcp_server

克劳德桌面版

编辑 ~/.claude/claude_desktop_config.json (macOS/Linux)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "dataflowr": {
      "command": "python",
      "args": ["-m", "dataflowr.mcp_server"]
    }
  }
}

随着 uv (无需全局安装):

{
  "mcpServers": {
    "dataflowr": {
      "command": "uv",
      "args": ["run", "--with", "dataflowr[mcp]", "python", "-m", "dataflowr.mcp_server"]
    }
  }
}

光标

编辑 .cursor/mcp.json 在你的项目的根(或 ~/.cursor/mcp.json 全球):

{
  "mcpServers": {
    "dataflowr": {
      "command": "python",
      "args": ["-m", "dataflowr.mcp_server"]
    }
  }
}

VS代码

编辑 .vscode/mcp.json 在项目的根本:

{
  "servers": {
    "dataflowr": {
      "type": "stdio",
      "command": "python",
      "args": ["-m", "dataflowr.mcp_server"]
    }
  }
}

远程/HTTP(自托管)

如果使用运行自己的实例 --http,将客户端指向URL:

{
  "mcpServers": {
    "dataflowr": {
      "type": "http",
      "url": "http://localhost:8001/mcp"
    }
  }
}

______________________________________________________________________

推荐的工作流程

1. search_modules "attention"      → find relevant modules by keyword
2. get_module "12"                 → full details, notebook links, prerequisites
3. get_page_content "12"           → read the lecture notes
4. get_notebook_content "12"       → work through the exercises
5. get_quiz_content "12"           → self-test your understanding
6. search_transcripts "attention"  → find concept notes from lecture transcripts
7. get_transcript_note "training loop" → read timestamped quotes and cross-references

如需个性化学习计划,请使用 learning_path 使用目标模块进行提示。

______________________________________________________________________

暴露于代理的工具

工具说明
list_modules列出模块,可按会话/标签/GPU过滤
get_module模块的完整细节
search_modules跨标题、描述和标签的关键字搜索
list_sessions列出所有会话
get_session会话+所有模块内容
get_notebook_url笔记本电脑的GitHub/Colab链接
list_homeworks所有作业
get_homework家庭作业的全部细节
get_slide_content从数据流/幻灯片中获取讲座幻灯片
get_quiz_content从数据流/测验中获取测验问题
check_quiz_answer验证学生的测验答案
get_notebook_content从GitHub获取实际的笔记本单元格
get_notebook_exercises只获取练习提示+骨架代码
get_page_content从数据流/网站获取模块源代码标记
get_course_overview作为背景的完整课程结构
get_prerequisites给定模块的先决条件模块
suggest_next完成一个模块后要学习什么
sync_catalog将目录与网站+幻灯片库进行比较
search_transcripts从课堂讲稿中模糊搜索318个概念笔记
get_transcript_note获取成绩单概念笔记的完整内容

向代理人暴露的提示

提示参数描述
explain_modulemodule_id辅导课——模块的苏格拉底式解释
quiz_studentmodule_id互动测验,一次一个问题
debug_helpmodule_id实用笔记本的引导调试帮助
learning_pathtarget_module_id, known_modules目标模块的个性化先决条件链

______________________________________________________________________

示例问题

一旦连接,代理可以回答以下问题:

  • *“在处理扩散模型之前,我应该研究什么?”*
  • *“给我microGPT笔记本电脑的Colab链接。”*
  • *“哪个环节涉及注意力机制?”*
  • *“生成建模模块都是什么?”*
  • *“给我看Flash Attention作业任务。”*
  • *“对模块3——损失函数进行测试。”*
  • *“我被模块2b中的反向传播练习卡住了。请帮我调试一下。”*
  • *“从头开始,为我构建一条通往模块18b(扩散模型)的学习路径。”*
  • *“教授对训练循环说了什么?给我看看成绩单上的引文。”*

______________________________________________________________________

Python API

from dataflowr import COURSE

# Get a module
module = COURSE.get_module("12")
print(module.title)          # "Attention and Transformers"
print(module.description)
print(module.notebooks)

# Search
results = COURSE.search("attention")

# Get a session
modules = COURSE.get_session_modules(7)

# Navigate the full catalog
for module in COURSE.modules.values():
    if module.requires_gpu:
        print(f"Module {module.id}: {module.title}")

______________________________________________________________________

设计原则

  • 只有内容,没有执行。 该包公开了课程结构和链接。运行笔记本留在学生手中。
  • 代理人友好。 所有输出都是文本优先。MCP服务器呈现markdown,以便代理可以在响应中直接使用它。
  • 核心没有外部依赖关系。 目录、型号和CLI仅适用于 pydantic, typer,以及 rich.API需要 fastapi;MCP服务器需要 mcp.
  • 唯一的真相来源。 catalog.py 是课程发展时唯一需要更新的地方。

目录标签

目录标签

教育工具PythonClaude深度学习本地部署PyTorchAI教学MCP服务器

支持客户端

ClaudeCursorVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

20

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP