Skip to main content

Logic Block Tools

Overview

Logic Blocks are the atomic units of business logic in FlowOn. The MCP Server supports the full lifecycle of Logic Blocks: listing, reading, creating, updating, and inspecting their dependencies.

The MCP Server supports all five Logic Block types:

TypeToolPurpose
Formulacreate_formula_logic_blockCalculations and value derivations
Decision Tablecreate_decision_table_logic_blockGrid-based rule evaluation
Decision Treecreate_decision_tree_logic_blockHierarchical branching conditions
Validationcreate_validation_logic_blockSingle business rule enforcement
Validation Setcreate_validation_set_logic_blockGrouped validation rules

list_all_logic_blocks

Lists all Logic Blocks in the environment with pagination support.

ParameterTypeRequiredDescription
pageNumberintThe page to retrieve (default: 1)
pagingCookiestringThe paging cookie from the previous page response

Returns: A paginated list of Logic Blocks including name, title, description, and project.

See Pagination for details on iterating through large result sets.


list_logic_blocks_by_project

Lists all Logic Blocks belonging to a specific project.

ParameterTypeRequiredDescription
projectNamestringThe name of the FlowOn project

Returns: A list of Logic Blocks within the specified project.


get_logic_block_details

Retrieves the complete details and metadata for a specific Logic Block, including its full FoL definition.

ParameterTypeRequiredDescription
logicBlockNamestringThe name of the Logic Block
projectNamestringThe project the Logic Block belongs to

Returns: Full Logic Block details including type, metadata (the FoL definition), and all configuration.

Use when: You need to read the current definition of a Logic Block before deciding whether to update it.


create_formula_logic_block

Creates a new Formula Logic Block. Formulas calculate a value based on input parameters and expressions.

ParameterTypeRequiredDescription
logicBlockNamestringThe name for the new Logic Block
projectNamestringThe project to create it in
metadatastringThe FoL metadata definition
isActionboolWhether this block is exposed as an action (default: false)
titlestringA human-friendly display title
descriptionstringA description of the block's purpose

Returns: The GUID of the newly created Logic Block.

Restriction: Cannot be called on projects associated with a managed solution. See Managed Solution Protection.


create_decision_table_logic_block

Creates a new Decision Table Logic Block. Decision Tables evaluate a set of conditions in a grid format to determine an outcome.

ParameterTypeRequiredDescription
logicBlockNamestringThe name for the new Logic Block
projectNamestringThe project to create it in
metadatastringThe FoL metadata definition
isActionboolWhether this block is exposed as an action (default: false)
titlestringA human-friendly display title
descriptionstringA description of the block's purpose

Returns: The GUID of the newly created Logic Block.

Restriction: Cannot be called on projects associated with a managed solution.


create_decision_tree_logic_block

Creates a new Decision Tree Logic Block. Decision Trees evaluate branching conditions in a hierarchical structure, following a path based on each condition result.

ParameterTypeRequiredDescription
logicBlockNamestringThe name for the new Logic Block
projectNamestringThe project to create it in
metadatastringThe FoL metadata definition
isActionboolWhether this block is exposed as an action (default: false)
titlestringA human-friendly display title
descriptionstringA description of the block's purpose

Returns: The GUID of the newly created Logic Block.

Restriction: Cannot be called on projects associated with a managed solution.


create_validation_logic_block

Creates a new Validation Logic Block. Validations enforce a single business rule and return an error message if the rule is violated.

ParameterTypeRequiredDescription
logicBlockNamestringThe name for the new Logic Block
projectNamestringThe project to create it in
metadatastringThe FoL metadata definition
isActionboolWhether this block is exposed as an action (default: false)
titlestringA human-friendly display title
descriptionstringA description of the block's purpose

Returns: The GUID of the newly created Logic Block.

Restriction: Cannot be called on projects associated with a managed solution.


create_validation_set_logic_block

Creates a new Validation Set Logic Block. Validation Sets group multiple validation rules together and evaluate them as a unit, collecting all errors before returning.

ParameterTypeRequiredDescription
logicBlockNamestringThe name for the new Logic Block
projectNamestringThe project to create it in
metadatastringThe FoL metadata definition
isActionboolWhether this block is exposed as an action (default: false)
titlestringA human-friendly display title
descriptionstringA description of the block's purpose

Returns: The GUID of the newly created Logic Block.

Restriction: Cannot be called on projects associated with a managed solution.


update_logic_block_metadata

Updates the FoL metadata of an existing Logic Block. This replaces the current metadata definition with the one provided.

ParameterTypeRequiredDescription
logicBlockNamestringThe name of the Logic Block to update
projectNamestringThe project the Logic Block belongs to
metadatastringThe updated FoL metadata definition

Returns: Confirmation that the update succeeded.

Restriction: Cannot be called on Logic Blocks in projects associated with a managed solution. See Managed Solution Protection.

Best practice: Always call get_logic_block_details first to read the current metadata before updating, to avoid unintentionally overwriting parts of the definition you did not intend to change.


list_logic_block_dependencies

Retrieves the complete dependency graph for a Logic Block — everything it depends on, and everything that depends on it.

ParameterTypeRequiredDescription
logicBlockNamestringThe name of the Logic Block
projectNamestringThe project the Logic Block belongs to

Returns: A comprehensive dependency report:

Dependency TypeDescription
Logic Block DependenciesOther Logic Blocks this block references
Logic Flow DependenciesLogic Flows that use this block
Logic Recipe DependenciesLogic Recipes that invoke this block
Business Process Version DependenciesBPM versions that reference this block
Configuration DependenciesConfiguration records this block reads
Localized Resource DependenciesLocalized strings this block uses

Use when: Before modifying a Logic Block, call this tool to understand the full impact of the change across all dependent artifacts and projects.