Core Components of a MindFlight AI Orchestrator¶
graph LR
%% External sources
Chatbot((Chatbot))
Webhook((Webhook))
SaaS((SaaS))
%% MFO Client components
Client[MFO Client]
YamlDoc[(Workflow YAML)]
%% Workflow execution types
SimpleTask[Simple Task]
AgentIA[Agent IA]
subgraph Server[MFO Server]
%% Server APIs
ResAPI[Resource API]
LLMAPI[LLM API]
ToolAPI[Tool API]
MemAPI[Memory API]
end
%% Service Provider blocks
ProvEmail[Provider: Email]
ProvCRM[Provider: CRM]
ProvSN[Provider: SocialNetwork]
ProvNotion[Provider: Notion]
%% Connections
Chatbot <--> Client
Webhook --> Client
SaaS <--> Client
Client <--> YamlDoc
Client --> ResAPI
Client --> LLMAPI
Client --> ToolAPI
Client --> MemAPI
%% Workflow connections
YamlDoc <--> SimpleTask
YamlDoc <--> AgentIA
ResAPI --> Client
LLMAPI --> Client
ToolAPI --> Client
MemAPI --> Client
%% Service Provider Connections
ResAPI --> ProvEmail
ResAPI --> ProvNotion
ResAPI --> ProvCRM
ResAPI --> ProvSN
LLMAPI --> ProvEmail
LLMAPI --> ProvNotion
ToolAPI --> ProvEmail
ToolAPI --> ProvCRM
ToolAPI --> ProvSN
ToolAPI --> ProvNotion
%% Styling
classDef external fill:#f9f,stroke:#333,stroke-width:2px;
classDef client fill:#bbf,stroke:#33f,stroke-width:2px;
classDef server fill:#bfb,stroke:#3b3,stroke-width:2px;
classDef provider fill:#ffd,stroke:#dd3,stroke-width:2px;
classDef data fill:#fbb,stroke:#b33,stroke-width:2px;
class Chatbot,Webhook,SaaS external;
class Client client;
class ResAPI,LLMAPI,ToolAPI,MemAPI server;
class ProvUnipile,ProvNotion,ProvCRM,ProvSN,ProvEmail provider;
class YamlDoc,SimpleTask,AgentIA data;
Metaphor of Mitochondria
In many ways, the MindFlight AI Orchestrator behaves like a biological cell reading RNA. Imagine the taskflow as a strand of messenger RNA (mRNA)—a precise workflow blueprint that lists the tasks required to build a new organic component. The Server acts like the ribosome inside the cell: it doesn't invent anything itself but reads the RNA (taskflow) line by line and assembles the corresponding proteins (tasks) in the exact order specified. Each task in the workflow is like a codon in the RNA, encoding a specific instruction—fetch data, transform it, store it, notify someone.
.
This biological machinery ensures that complex structures are built accurately and efficiently, just as the Server orchestrates tasks step by step to bring processes to life. The elegance of this model is its reproducibility: once you have the RNA (taskflow), any compatible cell (Provider instance) can execute it flawlessly, ensuring scalability and reliability across the entire ecosystem.
🧭 MFO Client¶
Think of the Client as the receptionist and coordinator. It listens to incoming events (webhooks, user input, cron, AI agents) and knows who to call. It forwards tasks to the Server and handles the next steps when results come back. It orchestrates workflows, manages local context, and can be deployed close to external systems for better responsiveness. 💡 You can run multiple Clients to support different apps or workflows.
🧱 MFO Server¶
The Server is the engine room. It powers all operations, stores data, schedules jobs, and ensures tasks run in the correct order. It executes workflow steps, tracks state, and connects to external systems through Providers. 💪 It holds the memory and makes sure nothing gets lost in execution.
🧠 Service Providers¶
Providers are specialist departments. Each one brings domain-specific tools and knowledge, such as email, CRM, AI models and file systems. They make the capabilities of services available to workflows, such as sending a message, querying data or triggering a webhook.
🛠️ They also equip AI agents with the necessary tools and understanding to interact with external services.
Helping AI agents discover the unknown
For example, it will help provide a knowledge to structure processes unknown to an AI agent (to retrieve a user's Linkedin post: you first need to find their Linkedin ID
=>
the list of recent posts
=>
and from that list of URLs
=>
extract the content
of the desired post =>
and find the users comments
).
It is impossible to predict in advance all the scenarios that an AI agent might 'imagine' to find its way. Especially if you need to combine workflows that will use different providers (email, social networks, etc.).
MFO Services Providers are similar to MCP servers. They are cousins in their approach. To understand the difference, see this page.
🛠️ Tools¶
Each tool is a specific capability—for example, email.send
, crm.update_record
, or ai.analyze_text
. Workflows are built by chaining these tools together. Agents can also use these tools to carry out the tasks they wish to perform.
⚡ Triggers & Events¶
Triggers are rules that listen for events (like "new email received") and automatically launch workflows. This ensures real-time responsiveness.
📋 Job Manager¶
Once a workflow starts, the Job Manager oversees its execution, ensuring each task is carried out properly, and handles retries if something goes wrong.
💾 Memory & Resource Storage¶
MFO stores data and files across workflows. For instance, an AI-generated summary of an email can be saved and reused in later steps by an AI agent or different workflows. RAG (Retrieval Augmented Generation) system are natively integrated using the PGvector module of postgresql database. The framework implements evaluation methodologies that helps him to "learn".
🔄 Workflow¶
In MFO, a workflow is the top-level orchestrator that combines triggers and taskflows to define a complete business process. It includes metadata (e.g., workflow_name
, description
, version
), the set of triggers that start the process, and the taskflows that execute the logic. It's defined in YAML format. All company stakeholders (IT, operations, marketing, customer support, etc.) can contribute to building workflows. See an example here
📑 Taskflow¶
A taskflow is a sequence of tasks within a workflow. It represents a coherent group of operations, defines dependencies between tasks, and manages data passing. Taskflows can have their own execution settings (e.g., timeouts, concurrency) and encapsulate a distinct segment of the overall process.
✅ Task¶
A task is the smallest unit of work in MFO. Each task performs a single action—such as calling an API, sending an email, or running an AI inference—and produces outputs that downstream tasks can consume. Tasks declare a type
, configuration parameters, and may specify dependencies or successors.
🤖 AI Agent¶
An AI agent in MFO is like a dynamic taskflow. It can manage his own choices, select his own tools. It can trigger other agents or other workflows / taskflows.