MFlowy
MFlowy Datenmodellierungs- und Analyse-Workflow
MFlowy ist eine MCP-native modulare ML-Workflow-Engine: Sie basiert auf einer DAG-Schichtausführung, ist konfigurationsgesteuert und unterstützt nachvollziehbare, rückverfolgbare Workflows von der Datenverarbeitung über das Modelltraining bis hin zur visuellen Analyse.
Kernfunktionen
MCP-nativ: Alle Fähigkeiten werden als MCP-Tools (pyfunc) bereitgestellt. Derselbe Tool-Satz kann über drei Einstiegspunkte aufgerufen werden – MCP-Server (stdio), JSON-Runner-CLI (
cmd) und direkter Import (Host-Einbettung).DAG-Workflow-Orchestrierung: Unterstützt komplexe Topologien gerichteter azyklischer Graphen (DAG) und definiert flexible Aufgabenabhängigkeiten.
Konfigurationsgesteuert: Workflows werden über YAML-Konfigurationsdateien definiert, ohne dass Code geschrieben werden muss.
Dekorator-Registrierung: Reine Funktionen +
@handler-Dekorator registrieren sich automatisch. Neue Funktionen erfordern nur das Erstellen einer.py-Datei.Middleware-System: Verantwortungskettenmuster zur Verarbeitung von Querschnittsbelangen (Dateninjektion, MLflow-Protokollierung, Stopp bei Fehlern, verschiedene Protokolle).
Datenherkunft: MLflow-Tag (
mflowy.input_steps) protokolliert automatisch die Eingabeabhängigkeiten zwischen Schritten.Beobachtbare Ausführung: Vollständige MLflow-Verfolgung (Parameter/Metriken/Modelle/Artefakte) + strukturiertes
WorkflowResult(run_id/Status/Ausgabe pro Knoten); Prozessprotokolle werden an stderr gebunden, im Terminalmodus nach Schweregrad eingefärbt.Erweiterbare Ausführungsstrategie: Die JobProvider-Abstraktion definiert die Ausführungsumgebung von Compute-Tools. Eine lokale Implementierung ist integriert, die Remote-Ausführung wird durch benutzerdefinierte Implementierungen angebunden (siehe docs/REMOTE_MODELING.md).
Related MCP server: Patronus MCP Server
Architektur und Aufrufmethoden
MFlowy verwendet MCP als architektonischen Hauptteil: src/mflowy/mcp/tools.py definiert alle Compute-Tools (eda / modeling / explanation / predict / inverse_optimization usw.), die über drei Einstiegspunkte aufgerufen werden:
Einstiegspunkt | Befehl | Szenario |
MCP-Server (stdio) |
| MCP-Clients (Claude Code, Cursor usw.) |
JSON-Runner (CLI) |
| Befehlszeile, K8s-Job-Container, Subprozess |
Direkter Import |
| Host-Programm-Einbettung |
CLI (
cmd) ist der Befehlszeilenkanal der MCP-Tool-Schicht und teilt sich dieselbe Tool-Implementierung und JobProvider-Delegation mit dem MCP-Server. Es ist keine separate Architektur; die historische separate CLI (mflowy run/validate/list-modulesusw.) ist veraltet.
Schnellstart
# 构建 wheel(→ dist/mflowy-<version>-py3-none-any.whl)
make build-whl
# MCP server (stdio) — 完全体(数据分析 + 建模);<whl> 为 wheel 绝对路径(见下方说明)
uvx --index-strategy unsafe-best-match \
--default-index https://mirrors.aliyun.com/pypi/simple/ \
--index https://download.pytorch.org/whl/cpu \
--from "mflowy[modeling] @ file://<whl绝对路径>" \
mcpSrv
# JSON runner(CLI)— 本地调试
uv run cmd list_modules # 查看支持的步骤及模块列表(base,无数据栈)
uv run cmd list_modules '{"step":"load"}' # 查看 load 步骤的模块列表
uv run cmd get_module_info '{"step":"load","module":"csv"}' # 查看 load 步骤的 csv 模块信息
uv run --extra stats cmd data_profile '{"file_path": "..."}' # 数据分析工具
uv run --extra modeling cmd modeling '{"modeling_steps_yaml": "...", "name": "...", "desc": "..."}' # 建模工具Umgebungsvariablen
Variable | Zweck | Beispiel |
| Tracking-Server-URI (wenn nicht gesetzt, werden Workflow- und Abfragetools in derselben festen Datenbank |
|
| JobProvider-Auflösung: |
|
| Paketwurzel für benutzerdefinierte JobProvider-Module |
|
| Telemetriemodus: |
|
Beispiel für die MCP-Client-Konfiguration
**```json { "mcpServers": { "mflowy": { "type": "stdio", "command": "uvx", "args": [ "--index-strategy", "unsafe-best-match", // torch CPU 索引必需(见下方说明) "--default-index", "https://mirrors.aliyun.com/pypi/simple/", // 可选:包索引镜像(网络可达 PyPI 时省略) "--index", "https://download.pytorch.org/whl/cpu", // [modeling] 需要;仅 [stats] 可省略 "--from", "mflowy[modeling] @ file:///path/to/mflowy--py3-none-any.whl", "mcpSrv" ], "env": { // "PYTHONPATH": "/path/to/custom_module_parent", // "MFLOWY_JOB_PROVIDER": "<custom_module>:", // "MLFLOW_TRACKING_URI": "postgresql://user:pwd@host:5432/mlflow" } } } }
### Startanleitung
* **Einstiegspunktname `mcpSrv`**: Bewusst vermeidet er den gleichnamigen `mcp`-CLI des MCP-SDK (`mcp.cli:app`) – uvx kann beim Parsen des `mcp`-Befehls auf die SDK-Seite treffen und den Start fehlschlagen lassen.
* **Extras inline in der `--from`-Spezifikation**: `--extra` von uvx erfordert eine neuere uv-Version; die Inline-Schreibweise ist am kompatibelsten.
* **`<whl>` ist ein absoluter Pfad**: `make build-whl` erzeugt `dist/mflowy-<version>-py3-none-any.whl`; bei Versionsänderungen muss synchronisiert werden.
* **torch-CPU-Index** (`--index` pytorch-cpu + `--index-strategy unsafe-best-match`) ist für \[modeling] erforderlich: uvx liest die `[tool.uv.sources]` in pyproject nicht; ohne diesen Index wird torch als CUDA-Gesamtpaket (2–3 GB) aufgelöst; `unsafe-best-match` muss zusammen mit dem pytorch-Index verwendet werden, sonst schlägt die first-index-Strategie fehl, da die alte requests-Version auf diesem Index nicht aufgelöst werden kann.
* **Entwicklungsmodus kann das Wheel überspringen**: Die `.mcp.json.example` im Repository-Root ist in Quellpfadform und immer aktuell.
## Telemetrie
Diagnoseerfassung von MCP-Tool-Aufrufen, zustimmungspflichtig, Standard `ask`, bei nicht erreichbarem Endpunkt vollständig transparent und ohne Auswirkung auf Tool-Aufrufe, deckt nur den MCP-Einstieg ab. Datenschutzvertrag siehe [PRIVACY.md](PRIVACY.md), Integration und Konfiguration siehe [docs/TELEMETRY.md](docs/TELEMETRY.md).
## Beiträge
Jede Form von Beiträgen ist willkommen (Funktionen, Fehlerbehebungen, Dokumentation, Beispiele). Bitte lesen Sie [CONTRIBUTING.md](CONTRIBUTING.md) (Entwicklungsprozess und Konventionen), [CODE\_OF\_CONDUCT.md](CODE_OF_CONDUCT.md), [PRIVACY.md](PRIVACY.md) (Telemetrie-Datenschutzvertrag) und [SECURITY.md](SECURITY.md) (Schwachstellenmeldung).
## Lizenz
Dieses Projekt ist unter der [MIT-Lizenz](LICENSE) Open Source.
## Dokumentation
* [Architektur- und Beitragsleitfaden](AGENTS.md)
* [Architekturentscheidungsprotokoll](docs/decisions.md)
* [Forschungsfluss-Methodik](docs/research-flow.md)
* [Roadmap](docs/roadmap.md)
* [Remote-Ausführungsintegration](docs/REMOTE_MODELING.md)
* [Telemetrie](docs/TELEMETRY.md)
* [DAG-Engine-Architektur](docs/DRIVER.md)This server cannot be deployed
Maintenance
Related MCP Connectors
Governed data discovery, exact queries, decisions, simulations, and runtime utilities over MCP.
Create, browse, remix, collaborate on, and run durable AI workflow nodes from MCP hosts.
MCP Hub: AI service discovery, per-user OAuth, and multi-service workflow orchestration
MCP-Native LLM Orchestration Agent
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables interaction with the Procesio automation platform to list, view, and manage workflows. It allows users to launch process instances and monitor their status through MCP-compatible clients.12Apache 2.0

Patronus MCP Serverofficial
AlicenseNot gradedqualityDmaintenanceEnables running LLM evaluations, experiments, and custom evaluators through a standardized MCP interface.16Apache 2.0- FlicenseBqualityBmaintenanceConnects MCP-compatible clients like Claude to Treeflow, enabling natural-language administration, design, training, and diagnostics of intelligent chatbots. It provides tools for managing bots, conversation flows, NLU entities and intents, message templates, integrations, voice config, training history, simulations, audits, backups, and workspace credentials.45-
- AlicenseNot gradedqualityCmaintenanceEnables users to execute notebook cells, manage environments, and validate workbooks via MCP, facilitating reproducible machine-learning answers.MIT