Post to Slack

flurryport:slack-postdeliveryv1first-partysha256:c34495bae35dNeeds: read/write agent token

Let your AI post to Slack without ever seeing the bot token.

Deliver a message to a Slack channel through a signed FlurryPORT pipe. The bot token lives server-side; the agent posts a simple intent and gets a receipt.

The credential never enters the model context: it lives in the FlurryPORT secret store, deliveries are signed server-side, and every send returns a receipt your agent can quote.

What this is

Your AI posts to a Slack channel without ever seeing the bot token. It sends a simple intent (the text, optionally a channel override) through a signed FlurryPORT pipe; the platform holds the bot token server-side, adds it at delivery, and hands the AI a receipt with Slack's answer.

Setup in two steps

  1. Slack side. Create a Slack app, add the chat:write scope under OAuth and permissions, install it to your workspace, and copy the bot token. Invite the bot to the channel it should post to.
  2. FlurryPORT side. Your AI requests secret setup and FlurryPORT emails you a secure page. You paste the token there, in your browser. The AI never sees it, and the pipe goes live.

Credential custody

The token is stored encrypted, resolved server-side at the moment of delivery, and scrubbed from stored responses if Slack ever echoes it back. Rotating it is a paste on the same page, no AI involved.

What to expect

Delivery receipts carry Slack's real response. Slack answers 200 with ok:false on channel problems, so the receipt body, not the status code, is the truth; your AI reads it and tells you what happened in plain words.

Install with your agent

npx flurryport mcp

Point your agent at the FlurryPORT MCP server (npx flurryport mcp) and ask it for the flurryport:slack-post recipe. Works from AI clients that can run a local process: desktop apps and terminal agents. Web-only chat clients cannot reach a local MCP server; open a desktop client instead.

Tools your agent gains

flry_slack_post
Post a message to the configured Slack channel through the signed pipe. Input: text (required), channel (optional override).

Setup walkthrough

  1. SLACK_BOT_TOKEN: Create a Slack app, add the chat:write scope under OAuth & Permissions, install to your workspace, copy the bot token (xoxb-). Paste it in the FlurryPORT secret page this setup links to; the agent never sees it.

Intent schema

{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "maxLength": 4000
    },
    "channel": {
      "type": "string",
      "description": "Channel ID or name; omit when the install fixed one."
    }
  }
}

Install-time parameters

channel
install-time: Default channel for this install; runtime intent.channel overrides when present.

Transformation

{ "channel": $body.channel ? $body.channel : $install.channel, "text": $body.text }

Delivery target

POST https://slack.com/api/chat.postMessage

Placeholders like $secrets.NAME resolve server-side at delivery, never in the agent.

Gotchas

Where this fits

Related recipes

flurryport:discord-postdelivery

Let your AI post to Discord through a channel webhook the model never sees.

flurryport:telegram-senddelivery

Send Telegram messages from your AI; the bot token stays on the server.

flurryport:airtable-adddelivery

Let your AI add records to an Airtable table; the token stays server-side.

flurryport:azure-devops-managedelivery

Create and update Azure DevOps work items in one batched pipe: priority, state, tags, and sprint included.

flurryport:azure-devops-querydelivery

Query Azure DevOps work items with WIQL and read the matching ids back, without your AI ever holding the PAT.

flurryport:azure-devops-readdelivery

Read fields for a batch of Azure DevOps work items by id: title, state, tags, priority, iteration.