AI Automation: Decentralized Multi-Runtime Task Orchestration via Notal MCP

AI Automation: Deploying a Distributed Plan-Based Agent System via Notal

Automation Stack & Architecture

  • Agent Framework: Multi-runtime compatible agents including Claude, Cursor, Codex, Goose, Hermes, LangGraph, or Custom Workers acting through an MCP (Model Context Protocol) interface.
  • Integration Layers: Markdown Notebooks serving as an MCP Server; local IDE environments (Cursor); cloud triggers (GitHub Actions, Cron).
  • Target Outcome: Automated execution of marketing, finances, operations, and content tasks using a unified plaintext plan file that coordinates any runtime regardless of whether it runs locally or in the cloud.

Agent Roles & Tools Assignment

  • Universal Worker Role
    • Goal: Claim pending activities from the centralized notebook/plan, perform work in its own environment, and report status back.
    • Tools assigned: activities_list_actionable for queue retrieval, specialized tools inherent to their specific environment (IDE extensions, shell access), and activities_log for state persistence.
  • Human Controller / Supervisor role
    • Goal: Manage blocking questions via a global Questions panel and monitor progress through an in-progress dashboard.
    • Tools assigned: Mobile view monitoring certain task states and answering prompts prepared by agents during pauses.

Step-by-Step Workflow Orchestration

  1. Triggering event occurs such as manual start or scheduled timer like crons or GitHub Actions which wakes up an agent contact waye calling Notal melalui MCP.
  2. The agent executes `activities_list_actionable` unable to see the whole notebook but only requesting the current due queue.
  3. An atomic claim is made where one agent claims exactly one activity so that two agents do not grab the same task simultaneously; it then reads required prompt, roles, and dependencies.
  4. Agent performs requested tasks using any toolset available within its own runtime/environment.
  5. Upon completion or failure, the worker calls `activities_log` storing success status, errors, blocked states, evidence, and the next due window (to move the queue forward).

Error Handling & Loop Prevention

  • Atomic Activity Claims: Prevents race conditions where multiple agents attempt to process the identical task.
  • Blocking Questions Mechanism: Implements a human-in-the-loop gatewhere if an agent hits a blocker, it pauses and asks for input via a global waystably preventing aimless execution loops while waiting for data.
  • Stateful Logging (`activities_log`): Captures error logs and blocking states specifically to manage progress visibility in case of interruptions.

The bottom line: This architecture eliminates heavy orchestration overhead by treating the plan file as the source of truth rather than wrapping around specialized runtimes, allowing scaling across local IDEs and cloud workers with minimal effort.

! DYOR (Do Your Own Research)