Skip to main content

Installing the Polar MCP with n8n with Slack

Step-by-step guide on how to install the Polar MCP in n8n with Slack

Kellie Reese avatar
Written by Kellie Reese
Updated yesterday

The Polar MCP (Model Connection Protocol) allows you to integrate Polar Analytics directly with automation tools like n8n, enabling real-time alerts and data-driven workflows without any manual intervention.

By connecting Polar MCP with Slack, you can automate notifications and insights from your Polar workspace, helping your team stay on top of key performance metrics directly inside Slack.

In this article, you’ll learn how to:

  1. Connect the Polar MCP to n8n

  2. Configure Slack as an output node

  3. Create automated workflows that send marketing and ecommerce insights to your team in real time


Connecting Polar MCP to n8n

Step 1. Get your Polar MCP Endpoint

  1. Log in to your Polar Analytics account.

  2. Navigate to your workspace and ensure all key connectors (Shopify, Meta Ads, Google Ads, etc.) are active.

  3. Copy your Polar MCP endpoint:

    https://api.polaranalytics.com/mcp

This endpoint allows n8n to pull live, read-only data directly from your Polar workspace.

Step 2. Configure Polar MCP in n8n

  1. Log in to your n8n dashboard.

  2. Create a new workflow and add an HTTP Request node as your first step.

  3. In the configuration panel:

    • HTTP Method: POST

    • URL: https://api.polaranalytics.com/mcp

    • Authentication: Basic (use your Polar credentials)

    • Content Type: application/json

  4. Add your query to the Body field. Example:

    {   "query": "SELECT date, channel, spend, revenue, roas FROM marketing_performance WHERE date >= CURRENT_DATE - INTERVAL '1 DAY'" }
  5. Click Execute Node to test your query.
    If everything is configured correctly, you’ll see JSON output containing your Polar data.

Step 3. (Optional) Add a Trigger Node

If you’d like the workflow to run automatically (for example, every morning):

  1. Add a Cron node before the HTTP Request node.

  2. Set it to trigger daily at a specific time (e.g., 8:00 AM).

This ensures Polar MCP runs automatically without manual execution.


Setting Up Slack as the Output Node

Once your Polar MCP connection is tested, it’s time to send results directly to Slack.

Step 1. Add a Slack Node

  1. In your n8n workflow, add a new node and select Slack.

  2. Choose the Send Message operation.

  3. Connect your Slack account using OAuth authorization (you’ll be prompted to allow n8n access).

Step 2. Customize Your Slack Message

Use Slack’s message body to include dynamic data from the Polar MCP query.

Example configuration:

  • Channel: #marketing-insights

  • Message:

    📊 *Daily Marketing Summary*   Date: {{$json["date"]}}   Channel: {{$json["channel"]}}   Spend: ${{$json["spend"]}}   Revenue: ${{$json["revenue"]}}   ROAS: {{$json["roas"]}}    _Generated automatically by Polar Analytics + n8n_

This message dynamically pulls values from the Polar MCP response and posts them to your chosen Slack channel.

Step 3. Add Conditional Alerts (Optional)

To make your workflow smarter, you can add a IF node before the Slack node to only trigger messages based on specific conditions.

Example use cases:

  • Send a message if ROAS < 2.0 (low campaign efficiency)

  • Alert if ad spend increases more than 20% day-over-day

  • Post only when a new campaign launches or hits a milestone

Example condition:

{{$json["roas"] < 2}}

If this condition is met, the Slack message node executes; otherwise, the workflow stops silently.


Example Use Cases

Here are a few examples of how ecommerce and marketing teams use Polar MCP with Slack and n8n:

1. Daily Marketing Summary

Automatically post a summary of spend, ROAS, and conversions to your #marketing-insights Slack channel every morning.

2. Performance Alerts

Trigger real-time notifications when a channel’s performance dips below target thresholds (e.g., Meta Ads ROAS < 2).

3. Campaign Launch Reports

Notify your team when a new campaign starts or crosses a revenue milestone — perfect for collaborative performance tracking.

4. Store Performance Snapshots

If you manage multiple brands or markets, create separate Slack alerts per workspace using n8n filters.

These automated messages keep your teams informed without manual report pulling — ideal for fast-moving ecommerce teams.


By integrating Polar MCP with n8n and Slack, you can automate data workflows, reduce manual reporting, and deliver actionable insights directly to the channels your team uses every day.

Key takeaways:

  • The Polar MCP allows secure, real-time data access through API-style queries.

  • n8n acts as your automation engine to trigger, process, and format data.

  • Slack delivers that data instantly to your team — for visibility, accountability, and speed.

Once configured, this integration becomes a powerful automation loop for your analytics, ensuring your team stays aligned and proactive.

For further guidance, explore:

This guide walks you through how to use Polar MCP inside n8n to generate automated KPI summaries and send them directly to Slack each morning. Using Polar as a data source, Anthropic’s Claude as your reasoning engine, and Slack as your output channel, you can build a fully automated reporting workflow in just a few steps.

We’ll provide the required connection settings, a complete workflow you can copy, and a step-by-step tutorial to help you get everything running smoothly—even if you’re new to n8n or MCP.

Getting Started

To complete the Polar MCP installation in n8n, you will need:

In this article, we’ll build a simple workflow to:

  1. Pull KPIs from Polar Dashboards

  2. Iterating through a set of regional Views

  3. and send an email report.

Workflow

Example output in Slack

1. Add a schedule trigger


Set to trigger daily at 6am


Click “Back to canvas” to close this popup.


2. Add an AI Agent

Click the + button

Choose AI Agent

In the pop-up, change the prompt to "Define below"

Change the prompt to "Expression"

And paste in the prompt from below:

The current date and time is: {{ $now }}. 

Inspect store performance for yesterday. Summarise the key metrics (sales, cac, roas, new customer %) compared to last 7 days, and then generate some commentary to recommend actions or insights.

Output Slack's simplified `mrkdwn` format suitable to be sent in a slack message. (`mrkdwn` does not support headings or lists, and is styled with: _italic_ *bold* ~strike~, >blockquote and ```codeblock``` )

Do not explain what you are doing or ask for a rating afterwards, output only the message which will be sent directly.Notice that:
  • Models don’t know the current date and time, so you need to tell it with n8n’s special {{ $now }} placeholder. This will allow it to understand what you mean by ‘yesterday’.

  • We tell it not to add any explanatory text. This avoids text in your slack message like Here's your store performance summary in Slack mrkdwn format: .

  • Models need guidance on the special version rich text syntax used by slack, called mrkdwn .

Increase the default “Max iterations” option to 50


Click "back to canvas"


3. Add a Chat Agent

Click the plus Chat Model button


Choose Anthropic Chat Model


Create a new credential and add your Anthropic API key


Choose Claude Opus as the model for best performance

Click "back to canvas"


4. Add the Polar MCP tool

Click to add a tool


Choose "MCP Client Tool"

Give it a useful name like "Polar MCP"

Enter the Polar MCP connection details

Endpoint: https://api.polaranalytics.com/mcp

Server Transport: HTTP Streamable

Authentication: Bearer Auth

Create a new credential for Bearer Auth

Get your Polar MCP API Key

  1. generate an API key

  2. copy to the clipboard


    Paste in your Polar API key as the Bearer Token

    Then save and close the popup.

    Go “Back to canvas”


    5. Connect to Slack

    Click the AI Agent’s output plus button


    Find the Slack connector and choose “Send a message”


    Create a new credential


    Choose OAuth2 and click “Connect my account”, then allow access in the following screen


    Choose “Send message to”: Channel, and type your channel name (or select from the list)


    In the Message Text change it to “Expression” and set the value

    {{ $json.output }}



    6. Run your workflow to test

    Click “Execute workflow”

    Check the message appeared in Slack:


    7. Set it Live

    Set your workflow to “Active” at the top of the screen.



    Whole workflow as JSON

    You can copy and paste this directly into n8n to avoid building it yourself:

    {
    "nodes": [
    {
    "parameters": {
    "rule": {
    "interval": [
    {
    "triggerAtHour": 6
    }
    ]
    }
    },
    "type": "n8n-nodes-base.scheduleTrigger",
    "typeVersion": 1.2,
    "position": [
    0,
    0
    ],
    "id": "d4e15fb6-a97a-44a6-9325-562d87e63372",
    "name": "Schedule Trigger"
    },
    {
    "parameters": {
    "promptType": "define",
    "text": "=The current date and time is: {{ $now }}.\n\nInspect store performance for yesterday.\nSummarise the key metrics (sales, cac, roas, new customer %)\ncompared to last 7 days,\nand then generate some commentary to recommend actions or insights.\n\nOutput Slack's simplified `mrkdwn` format suitable to be sent in a slack message. (`mrkdwn` does not support headings or lists, and is styled with: _italic_ *bold* ~strike~, >blockquote and ```codeblock``` )\n\nDo not explain what you are doing or ask for a rating afterwards,\noutput only the message which will be sent directly.",
    "options": {}
    },
    "type": "@n8n/n8n-nodes-langchain.agent",
    "typeVersion": 2.2,
    "position": [
    208,
    0
    ],
    "id": "75b54b42-3305-4307-9a12-97136fb3ba0b",
    "name": "AI Agent"
    },
    {
    "parameters": {
    "model": {
    "__rl": true,
    "value": "claude-opus-4-1-20250805",
    "mode": "list",
    "cachedResultName": "Claude Opus 4.1"
    },
    "options": {}
    },
    "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
    "typeVersion": 1.3,
    "position": [
    208,
    192
    ],
    "id": "829fe02a-15a5-45b9-bda4-b821a017b7f7",
    "name": "Anthropic Chat Model",
    "credentials": {
    "anthropicApi": {
    "id": "bJw9JkTyJ6T8628H",
    "name": "Anthropic account"
    }
    }
    },
    {
    "parameters": {
    "endpointUrl": "https://api.polaranalytics.com/mcp",
    "serverTransport": "httpStreamable",
    "authentication": "bearerAuth",
    "options": {}
    },
    "type": "@n8n/n8n-nodes-langchain.mcpClientTool",
    "typeVersion": 1.1,
    "position": [
    352,
    208
    ],
    "id": "16eaa03e-b5fc-4270-b195-7f81b023ea08",
    "name": "Polar MCP",
    "credentials": {
    "httpBearerAuth": {
    "id": "21QokhLHTqcS2UHf",
    "name": "Bearer Auth account"
    }
    }
    },
    {
    "parameters": {
    "authentication": "oAuth2",
    "select": "channel",
    "channelId": {
    "__rl": true,
    "value": "#put-your-channel-here",
    "mode": "name"
    },
    "text": "= {{ $json.output }}",
    "otherOptions": {}
    },
    "type": "n8n-nodes-base.slack",
    "typeVersion": 2.3,
    "position": [
    560,
    0
    ],
    "id": "3415ccf8-d413-4ec4-90b3-6a8488556445",
    "name": "Send a message",
    "webhookId": "65523a9c-18dd-4363-9c7c-b0ca4e7008da",
    "credentials": {
    "slackOAuth2Api": {
    "id": "pz3BpkgfcoPBSdFe",
    "name": "Slack account"
    }
    }
    }
    ],
    "connections": {
    "Schedule Trigger": {
    "main": [
    [
    {
    "node": "AI Agent",
    "type": "main",
    "index": 0
    }
    ]
    ]
    },
    "AI Agent": {
    "main": [
    [
    {
    "node": "Send a message",
    "type": "main",
    "index": 0
    }
    ]
    ]
    },
    "Anthropic Chat Model": {
    "ai_languageModel": [
    [
    {
    "node": "AI Agent",
    "type": "ai_languageModel",
    "index": 0
    }
    ]
    ]
    },
    "Polar MCP": {
    "ai_tool": [
    [
    {
    "node": "AI Agent",
    "type": "ai_tool",
    "index": 0
    }
    ]
    ]
    }
    },
    "pinData": {},
    "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "ce0c989b9244d7f82bca36af8201c7e764dbba42c6b965519008b3c1fcda3605"
    }
    }


    Once your workflow is activated, n8n will automatically pull KPI data from Polar, analyze store performance using Claude, format the results in Slack-friendly mrkdwn, and send the report straight to your selected Slack channel every morning. This setup gives you a reliable, hands-off way to monitor daily performance and surface actionable insights to your team.

    You can extend this workflow at any time by adding additional data sources, new KPIs, conditional alerts, or more advanced formatting. And if you need help connecting MCP, configuring models, or troubleshooting errors, our support team is always here to assist you.










Did this answer your question?