Skip to main content

Review GitLab merge requests with parallel Azure OpenAI reviewers

Workflow preview

Workflow preview
100%
Review GitLab merge requests with parallel Azure OpenAI reviewers preview
Open on n8n.io

1. Workflow Overview

Who this template is for This template is for teams that use GitLab merge requests and want a practical AI assisted review workflow in n8n. It is useful for engineering teams that want faster first...

Best for

  • Engineering automation workflows
  • AI Summarization automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.stickynote, n8n-nodes-base.webhook, n8n-nodes-base.if, n8n-nodes-base.httprequest, n8n-nodes-base.splitout, n8n-nodes-base.code, n8n-nodes-base.merge, @n8n/n8n-nodes-langchain.agent

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by kazunori.

Original n8n.io source

1.1 Workflow description

Title
Review GitLab merge requests with parallel Azure OpenAI reviewers
Workflow name
Review GitLab merge requests with parallel Azure OpenAI reviewers

Who this template is for

This template is for teams that use GitLab merge requests and want a practical AI-assisted review workflow in n8n. It is useful for engineering teams that want faster first-pass reviews, consistent review comments, and a simple way to separate likely bugs, security risks, and maintainability issues before a human reviewer takes over.

How it works

This workflow starts when a user posts a trigger comment in a GitLab merge request discussion. It loads the merge request changes, splits the diff into one item per changed file, and skips files that are not suitable for inline review.

Each file is then reviewed in parallel by three AI reviewers focused on bugs, security, and maintainability. Their findings are merged and sent to a verifier step, which removes weak or duplicate findings and normalizes severity and confidence.

Only findings that pass the configured confidence threshold are posted. If a valid GitLab diff position can be resolved, the workflow creates an inline review comment. Otherwise, it falls back to a reply comment in the trigger discussion. A summary reply is also posted to mark the review as completed.

Set up

Setup usually takes around 10 to 20 minutes.

You will need:

  • a GitLab access token with permission to read merge requests and post discussions
  • one or more AI model credentials for the reviewer and verifier steps
  • your GitLab base URL and preferred trigger comment
  • a minimum confidence threshold for posting findings

Most detailed setup guidance is included directly in the sticky notes inside the workflow.

Requirements

  • GitLab project with merge request discussions enabled
  • n8n credentials for GitLab API access
  • AI chat model credentials for the reviewer and verifier nodes

How to customize the workflow

You can change the trigger comment, GitLab base URL, and minimum confidence threshold in the configuration section.

You can also customize:

  • which findings are posted by adjusting the confidence threshold
  • reviewer prompts for bug, security, and maintainability analysis
  • the final verifier behavior for severity, confidence, and duplicate handling
  • the fallback behavior for findings that cannot be mapped to a valid inline diff position

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 2 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 4 - GitLab Discussion Webhook

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2

Block 5 - Check Review Trigger Comment

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 6 - Post Review Started Reply

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 7 - Fetch Merge Request Changes

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 8 - Split Changed Files

Type / Role
n8n-nodes-base.splitOut - splitOut
Config choices
Version 1

Block 9 - Filter Supported Diffs

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 10 - Prepare Review Context

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 11 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 12 - Merge Reviewer Results

Type / Role
n8n-nodes-base.merge - merge
Config choices
Version 3.2

Block 13 - Combine Findings

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 14 - Analyze Bugs

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 15 - Bug Reviewer Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatAzureOpenAi - lmChatAzureOpenAi
Config choices
Version 1

Block 16 - Parse Bug Review Output

Type / Role
@n8n/n8n-nodes-langchain.outputParserStructured - outputParserStructured
Config choices
Version 1.3

Block 17 - Analyze Security Risks

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 18 - Security Reviewer Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatAzureOpenAi - lmChatAzureOpenAi
Config choices
Version 1

Block 19 - Parse Security Review Output

Type / Role
@n8n/n8n-nodes-langchain.outputParserStructured - outputParserStructured
Config choices
Version 1.3

Block 20 - Analyze Maintainability Risks

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 21 - Maintainability Reviewer Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatAzureOpenAi - lmChatAzureOpenAi
Config choices
Version 1

Block 22 - Parse Maintainability Review Output

Type / Role
@n8n/n8n-nodes-langchain.outputParserStructured - outputParserStructured
Config choices
Version 1.3

Block 23 - Verify Findings

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 24 - Verifier Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatAzureOpenAi - lmChatAzureOpenAi
Config choices
Version 1

Showing the first 24 of 45 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Review GitLab merge requests with parallel Azure OpenAI reviewers
Complexity advanced
Nodes 45
Categories Engineering, AI Summarization
Author kazunori
Published 26 Mar 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/14338/14338.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Review GitLab merge requests with parallel Azure OpenAI reviewers do?

Who this template is for This template is for teams that use GitLab merge requests and want a practical AI assisted review workflow in n8n. It is useful for engineering teams that want faster first...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Engineering, AI Summarization use case.