Knowledge × Communication
NotionSlackAGNT

Automate Notion + Slack

The team wiki agents can actually keep current. Team chat where operations actually surface. Put an agent between them and the hand-off stops being manual: it reads, decides, acts, and shows its work.

Install Competitive Watch → Get AGNT free

Competitive Watch already works across Notion and Slack — free, and it runs on your machine.

Automations teams run

Unlike field-mapping automation, the step in the middle is an agent: it can summarise, classify, judge and draft, not merely copy values from Notion into Slack.

When a page is created or edited in Notion…

…an agent can post a rich channel message in Slack — after reading the context and deciding it should.

When a database row changes in Notion…

…an agent can DM a teammate in Slack — after reading the context and deciding it should.

When a status flips in Notion…

…an agent can open a thread with findings in Slack — after reading the context and deciding it should.

When a message hits a channel in Slack…

…an agent can create and update pages in Notion — with the reasoning recorded in the run’s receipt.

When a keyword or mention fires in Slack…

…an agent can write database rows in Notion — with the reasoning recorded in the run’s receipt.

When a reaction is added in Slack…

…an agent can append meeting notes in Notion — with the reasoning recorded in the run’s receipt.

Notion to Slack, setup template

Start with the notion-api node and the slack-api node. Configure the Notion source payload, the agent input, and the Slack operation. The sequential template does not implement conditional writes or approval by itself.

Notion to Slack: run on a schedule → read notion → review source and draft → configure destination in slack TRIGGER trigger-timer Run on a schedule Configure activation ACTION notion-api Read Notion Configure inputs ACTION agnt-agent Review source and draft Configure inputs ACTION slack-api Configure destination in Slack Configure inputs
Setup template for Notion and Slack; verify data mapping and authorization using test accounts.
Notion → SlackSetup template · configure before activation

This is a schema-checked starting point, not an end-to-end tested automation. Replace every CONFIGURE_ value, choose the operations you intend, connect credentials and map source outputs into later inputs. An edge orders steps; it does not supply a condition, an approval gate or a field mapping. Add and test those controls explicitly before any write. Cloud APIs and model providers may receive data. Keep the workflow inactive until tested with fixtures.

{
  "id": "76ce6eee-bf91-45a3-a729-2123daf222ce",
  "name": "Notion → Slack",
  "nodes": [
    {
      "id": "44cbab3a-b324-48b2-ae03-49183ba25090",
      "text": "Run on a schedule",
      "x": 512,
      "y": 144,
      "isEditing": false,
      "type": "trigger-timer",
      "icon": "connect",
      "category": "trigger",
      "isSelected": false,
      "parameters": {
        "fireOnStart": "No",
        "scheduleType": "Interval",
        "schedule": "Every 15 Minutes"
      },
      "description": "Setup template for Timer Trigger. This trigger node fires the workflow at specified intervals or at a specific time. Configure credentials, inputs and output mapping before use.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "a48bf425-5be4-4f25-ab10-ed168ab164de",
      "text": "Read Notion",
      "x": 512,
      "y": 336,
      "isEditing": false,
      "type": "notion-api",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "operation": "search",
        "pageSize": 1,
        "query": "CONFIGURE_QUERY",
        "filterType": "all"
      },
      "description": "Setup template for Notion API. Interact with Notion - search, query databases, get pages, and create pages. Configure credentials, inputs and output mapping before use.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "139adab0-69b8-4bd0-a370-d212efbcbb94",
      "text": "Review source and draft",
      "x": 512,
      "y": 528,
      "isEditing": false,
      "type": "agnt-agent",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "agentId": "CONFIGURE_AGENTID",
        "message": "Read the Notion item. Decide whether it warrants action in Slack, and explain why.\nSource input: CONFIGURE_SOURCE_INPUT. Produce a reviewable draft only; do not take external actions."
      },
      "description": "Setup template for Agent Chat. Chat with an AI agent from your agent library. Select an agent and send messages to interact with it within your workflow. Configure credentials, inputs and output mapping before use.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "801b0259-7ed1-4787-a140-592ee9ac543a",
      "text": "Configure destination in Slack",
      "x": 512,
      "y": 720,
      "isEditing": false,
      "type": "slack-api",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "action": "SEND_MESSAGE",
        "channelId": "CONFIGURE_CHANNELID",
        "message": "CONFIGURE_MESSAGE"
      },
      "description": "Setup template for Slack API. Interact with Slack to perform various operations such as sending messages, uploading files, managing reactions, and more. Configure credentials, inputs and output mapping before use.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    }
  ],
  "edges": [
    {
      "id": "632cbdeb-089a-43d5-ac1f-8eba1b238e4e",
      "start": {
        "id": "44cbab3a-b324-48b2-ae03-49183ba25090",
        "type": "output"
      },
      "end": {
        "id": "a48bf425-5be4-4f25-ab10-ed168ab164de",
        "type": "input"
      },
      "startX": 800,
      "startY": 168,
      "endX": 512,
      "endY": 360
    },
    {
      "id": "f7d3fa0d-a492-462a-a359-be6da69a4ac4",
      "start": {
        "id": "a48bf425-5be4-4f25-ab10-ed168ab164de",
        "type": "output"
      },
      "end": {
        "id": "139adab0-69b8-4bd0-a370-d212efbcbb94",
        "type": "input"
      },
      "startX": 800,
      "startY": 360,
      "endX": 512,
      "endY": 552
    },
    {
      "id": "3aa2f63e-9aac-49df-a939-a3c30b91a806",
      "start": {
        "id": "139adab0-69b8-4bd0-a370-d212efbcbb94",
        "type": "output"
      },
      "end": {
        "id": "801b0259-7ed1-4787-a140-592ee9ac543a",
        "type": "input"
      },
      "startX": 800,
      "startY": 552,
      "endX": 512,
      "endY": 744
    }
  ],
  "zoomLevel": 1,
  "canvasOffsetX": 0,
  "canvasOffsetY": 0,
  "isTinyNodeMode": false
}

Configure Notion API

Interact with Notion - search, query databases, get pages, and create pages.

  • operation — Operation to perform Current example: search.
  • query — Search query text Current example: CONFIGURE_QUERY.
  • filterType — Filter results by type Current example: all.
  • pageSize — Max results (default: 10-100) Current example: 1.

Configure Slack API

Interact with Slack to perform various operations such as sending messages, uploading files, managing reactions, and more.

  • action — The action to perform on Slack Current example: SEND_MESSAGE.
  • channelId — The ID of the Slack channel Current example: CONFIGURE_CHANNELID.
  • message — The message to send Current example: CONFIGURE_MESSAGE.

Install Competitive Watch

Competitive Watch already uses both Notion and Slack, so installing it gives you this exact hand-off wired up — connected, editable, and running on your own machine.

Runs on your own machine · See what it does

What building this looks like

  1. Download AGNT Community Core — free and local-first.
  2. Connect Notion with one OAuth sign-in and Slack with one OAuth sign-in; both land in the local vault.
  3. Start from a marketplace workflow, or drop notion-api and slack-api onto the canvas with an agent between them.
  4. Put an approval gate on anything consequential, then run it — the receipt shows what was read in Notion and what was written to Slack.

Notion and Slack — common questions

Can I connect Notion to Slack without writing code?

No code is required. Add both connections in the vault (Notion uses one OAuth sign-in, Slack uses one OAuth sign-in), then either install a marketplace workflow for this pair or drag the two nodes onto the canvas and put an agent between them.

How is this different from a field-mapping Notion to Slack automation?

Mapping tools move data; this reasons about it. Rather than copying a field into Slack, the agent can weigh what arrived from Notion, classify it against criteria you wrote in prose, draft something new, and act only when it is warranted.

Does my Notion and Slack data leave my machine?

Not to us. AGNT runs locally and both sets of credentials are encrypted on your own disk. Outbound traffic goes only to Notion, Slack and whichever model you chose — and pointing that at Ollama or LM Studio keeps everything on your hardware.

What does a Notion and Slack run leave behind?

A receipt: what was read in Notion, which tools ran with which arguments, what the agent concluded, and what it wrote to Slack. Anything consequential can sit behind an approval gate so a person signs off before it happens.

Give AI a job. Get the proof.