
Workflows
Executes complex multi-step workflows with branching logic, state management, and cognitive actions for LLMs. Provides structured, reusable processes instead of ad-hoc task execution.
Provides workflow management and automation through step-by-step execution with branching logic, conditional operations, template variables, and state persistence for complex multi-step processes like code reviews and data pipelines.
What it does
- Execute multi-step workflows with branching logic
- Manage state and variables across workflow steps
- Track workflow execution and performance metrics
- Validate workflow integrity before execution
- Handle parallel execution and loops
- Integrate cognitive reasoning with tool calls
Best for
About Workflows
Workflows is a community-built MCP server published by fiveohhwon that provides AI assistants with tools and capabilities via the Model Context Protocol. Automate complex multi-step processes like code reviews with powerful workflow automation software for data processing a It is categorized under productivity, developer tools.
How to install
You can install Workflows in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
License
Workflows is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
workflows-mcp
π€ Co-authored with Claude Code - Building workflows so LLMs can finally follow a recipe without burning the kitchen! π₯
A powerful Model Context Protocol (MCP) implementation that enables LLMs to execute complex, multi-step workflows with cognitive actions and tool integrations.
π Overview
workflows-mcp transforms how AI assistants handle complex tasks by providing structured, reusable workflows that combine tool usage with cognitive reasoning. Instead of ad-hoc task execution, workflows provide deterministic, reproducible paths through multi-step processes.
π Key Features
- π Structured Workflows: Define clear, step-by-step instructions for LLMs
- π§ Cognitive Actions: Beyond tool calls - analyze, consider, validate, and reason
- π Advanced Control Flow: Branching, loops, parallel execution
- πΎ State Management: Track variables and results across workflow steps
- π Comprehensive Validation: Ensure workflow integrity before execution
- π Execution Tracking: Monitor success rates and performance metrics
- π‘οΈ Type-Safe: Full TypeScript support with Zod validation
- π― Dependency Management: Control variable visibility to reduce token usage
- β‘ Performance Optimized: Differential updates and progressive step loading
π¦ Installation
Using npx (recommended)
npx @fiveohhwon/workflows-mcp
From npm
npm install -g @fiveohhwon/workflows-mcp
From Source
git clone https://github.com/FiveOhhWon/workflows-mcp.git
cd workflows-mcp
npm install
npm run build
π Configuration
Claude Desktop
Add this configuration to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Using npx (recommended):
{
"mcpServers": {
"workflows": {
"command": "npx",
"args": ["-y", "@fiveohhwon/workflows-mcp"]
}
}
}
Using global install:
{
"mcpServers": {
"workflows": {
"command": "workflows-mcp"
}
}
}
Using local build:
{
"mcpServers": {
"workflows": {
"command": "node",
"args": ["/absolute/path/to/workflows-mcp/dist/index.js"]
}
}
}
Development Mode
For development with hot reload:
npm run dev
π Workflow Structure
Workflows are JSON documents that define a series of steps for an LLM to execute:
{
"name": "Code Review Workflow",
"description": "Automated code review with actionable feedback",
"goal": "Perform comprehensive code review",
"version": "1.0.0",
"inputs": {
"file_path": {
"type": "string",
"description": "Path to code file",
"required": true
}
},
"steps": [
{
"id": 1,
"action": "tool_call",
"tool_name": "read_file",
"parameters": {"path": "{{file_path}}"},
"save_result_as": "code_content"
},
{
"id": 2,
"action": "analyze",
"description": "Analyze code quality",
"input_from": ["code_content"],
"save_result_as": "analysis"
}
]
}
π― Action Types
Tool Actions
- tool_call: Execute a specific tool with parameters
Cognitive Actions
- analyze: Examine data and identify patterns
- consider: Evaluate options before deciding
- research: Gather information from sources
- validate: Check conditions or data integrity
- summarize: Condense information to key points
- decide: Make choices based on criteria
- extract: Pull specific information from content
- compose: Generate new content
Control Flow
- branch: Conditional execution paths
- loop: Iterate over items or conditions
- parallel: Execute multiple steps simultaneously
- wait_for_input: Pause for user input
Utility Actions
- transform: Convert data formats
- checkpoint: Save workflow state
- notify: Send updates
- assert: Ensure conditions are met
- retry: Attempt previous step again
π οΈ Available Tools
Workflow Management
-
create_workflow - Create a new workflow
{ "workflow": { "name": "My Workflow", "description": "What it does", "goal": "Desired outcome", "steps": [...] } } -
list_workflows - List all workflows with filtering
{ "filter": { "tags": ["automation"], "name_contains": "review" }, "sort": { "field": "created_at", "order": "desc" } } -
get_workflow - Retrieve a specific workflow
{ "id": "workflow-uuid" } -
update_workflow - Modify existing workflow
{ "id": "workflow-uuid", "updates": { "description": "Updated description" }, "increment_version": true } -
delete_workflow - Soft delete (recoverable)
{ "id": "workflow-uuid" } -
start_workflow - Start a workflow execution session
{ "id": "workflow-uuid", "inputs": { "param1": "value1" } }Returns execution instructions for the first step and an execution_id.
-
run_workflow_step - Execute the next step in the workflow
{ "execution_id": "execution-uuid", "step_result": "result from previous step", "next_step_needed": true }Call this after completing each step to proceed through the workflow.
-
get_workflow_versions - List all available versions of a workflow
{ "workflow_id": "workflow-uuid" }Returns list of all saved versions for version history tracking.
-
rollback_workflow - Rollback a workflow to a previous version
{ "workflow_id": "workflow-uuid", "target_version": "1.0.0", "reason": "Reverting breaking changes" }Restores a previous version as the active workflow.
π Step-by-Step Execution
The workflow system supports interactive, step-by-step execution similar to the sequential thinking tool:
- Start a workflow with
start_workflow- returns the first step instructions - Execute the step following the provided instructions
- Continue to next step with
run_workflow_step, passing:- The
execution_idfrom start_workflow - Any
step_resultfrom the current step next_step_needed: trueto continue (or false to end early)
- The
- Repeat until the workflow completes
Each step provides:
- Clear instructions for what to do
- Current variable state
- Expected output format
- Next step guidance
Template Variables
The workflow system supports template variable substitution using {{variable}} syntax:
- In parameters:
"path": "output_{{format}}.txt"β"path": "output_csv.txt" - In descriptions:
"Processing {{count}} records"β"Processing 100 records" - In prompts:
"Enter value for {{field}}"β"Enter value for email" - In transformations: Variables are automatically substituted
Template variables are resolved from the current workflow session variables, including:
- Initial inputs provided to
start_workflow - Results saved from previous steps via
save_result_as - Any variables set during workflow execution
π― Dependency Management & Performance Optimization
The workflow system includes advanced features to minimize token usage and improve performance for complex workflows:
Dependency-Based Variable Filtering
Control which variables are visible to each step to dramatically reduce context size:
{
"name": "Optimized Workflow",
"strict_dependencies": true, // Enable strict mode
"steps": [
{
"id": 1,
"action": "tool_call",
"tool_name": "read_large_file",
"save_result_as": "large_data"
},
{
"id": 2,
"action": "analyze",
"input_from": ["large_data"],
"save_result_as": "summary",
"dependencies": [] // In strict mode, sees NO previous variables
},
{
"id": 3,
"action": "compose",
"dependencies": [2], // Only sees 'summary' from step 2
"save_result_as": "report"
},
{
"id": 4,
"action": "validate",
"show_all_variables": true, // Override to see everything
"save_result_as": "validation"
}
]
}
Workflow-Level Settings
strict_dependencies(boolean, default: false)false: Steps without dependencies see all variables (backward compatible)true: Steps without dependencies see NO variables (must explicitly declare)
Step-Level Settings
-
dependencies(array of step IDs)- Lists which previous steps' outputs this step needs
- Step only sees outputs from listed steps plus workflow inputs
- Empty array in strict mode means NO variables visible
-
show_all_variables(boolean)- Override for specific steps that need full visibility
- Useful for validation or debugging steps
Performance Features
-
Differential State Updates: Only shows variables that changed
+ variable_name: Newly added variables~ variable_name: Modified variables- Unchanged variables are not displayed
-
Progressive Step Loading: Only shows next 3 upcoming steps
- Reduces context for long workflows
- Shows "... and X more steps" for remaining
-
Selective Variable Display: Based on dependencies
- Dramatically reduces tokens for workflows with verbose outputs
- Maintains full state internally for branching/retry
Best Practices for Token Optimization
- Use
strict_dependencies: truefor workflows with large intermediate outputs - Explicitly declare dependencies to minimize variable visibility
- Place verbose outputs early in the workflow and filter them out in later steps
- **Use meaningful variable n
README truncated. View full README on GitHub.
Alternatives
Related Skills
Browse all skillsComprehensive CrewAI framework guide for building collaborative AI agent teams and structured workflows. Use when developing multi-agent systems with CrewAI, creating autonomous AI crews, orchestrating flows, implementing agents with roles and tools, or building production-ready AI automation. Essential for developers building intelligent agent systems, task automation, and complex AI workflows.
Integrate Granola meeting notes into your local development workflow. Use when setting up development workflows, accessing notes programmatically, or syncing meeting outcomes with project tools. Trigger with phrases like "granola dev workflow", "granola development", "granola local setup", "granola developer", "granola coding workflow".
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
UI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.
GPT Researcher is an autonomous deep research agent that conducts web and local research, producing detailed reports with citations. Use this skill when helping developers understand, extend, debug, or integrate with GPT Researcher - including adding features, understanding the architecture, working with the API, customizing research workflows, adding new retrievers, integrating MCP data sources, or troubleshooting research pipelines.
Convert Markdown files to HTML similar to `marked.js`, `pandoc`, `gomarkdown/markdown`, or similar tools; or writing custom script to convert markdown to html and/or working on web template systems like `jekyll/jekyll`, `gohugoio/hugo`, or similar web templating systems that utilize markdown documents, converting them to html. Use when asked to "convert markdown to html", "transform md to html", "render markdown", "generate html from markdown", or when working with .md files and/or web a templating system that converts markdown to HTML output. Supports CLI and Node.js workflows with GFM, CommonMark, and standard Markdown flavors.