From f29c7bbe1797c1ca5be1305043898e195e02b751 Mon Sep 17 00:00:00 2001 From: Sandbox Agent Date: Wed, 5 Aug 2026 18:06:18 +0000 Subject: [PATCH] Document the Slack MCP integration Connecting Slack now gives PlayerZero a set of Slack tools it can use during a Player thread or a workflow run, and organization owners can choose which of those tools it may call. The public docs said nothing about any of it. Adds connector/slack-mcp.mdx as the substantive page: what the tools cover, how to turn individual tools off and what happens when PlayerZero calls one that is off, which project work can reach the connection, and how the approval gate applies when PlayerZero posts, revises, or deletes a message. Extends connector/slack.mdx with a Slack Tools for PlayerZero section and a Reconnecting an Existing Connection subsection, since an organization that connected Slack before this release has to disable and re-enable to pick the tools up, and both steps now require an organization owner. Distinguishes the PlayerZero-managed Slack connection from a self-registered server on connector/remote-mcp-servers.mdx, and names Slack tool policy as an owner-only action in the general settings and membership guide. Adds the August 2026 changelog page with one entry, and registers both new pages in docs.json. Notes for review: - The tool names and their descriptions come from the live Slack MCP settings page. The implementations are not in this repo or in portal, so anyone with access to them is worth a second pair of eyes on two claims: that editing and deleting apply only to messages PlayerZero posted, and that search reaches only channels the bot belongs to. - The page deliberately does not deny capabilities that the Slack scopes table implies, such as file sharing. It describes what the tool list covers and leaves it there. - No screenshots. Every other connector page is text-only, and the one capture available names a real person and real repositories, so it needs a re-shoot on a demo organization first. - The changelog entry is here rather than on its own branch. Say the word and it can be split out to be merged independently, as the July changelog was. Reference: https://playerzero.ai/pz/pzdocs/channel/6a7233df1c33e9176bafa039/player/6a7372e99617530a9be52676 Co-authored-by: PlayerZero --- changelog/august-2026.mdx | 10 ++ connector/introduction.mdx | 2 +- connector/remote-mcp-servers.mdx | 4 + connector/slack-mcp.mdx | 98 +++++++++++++++++++ connector/slack.mdx | 37 ++++++- .../general-settings-and-membership.mdx | 3 +- docs.json | 3 +- 7 files changed, 152 insertions(+), 5 deletions(-) create mode 100644 changelog/august-2026.mdx create mode 100644 connector/slack-mcp.mdx diff --git a/changelog/august-2026.mdx b/changelog/august-2026.mdx new file mode 100644 index 0000000..96a4e95 --- /dev/null +++ b/changelog/august-2026.mdx @@ -0,0 +1,10 @@ +--- +title: "August 2026" +sidebarTitle: "August 2026" +--- + +## Let PlayerZero Work in Your Slack Workspace + +Connecting Slack now gives PlayerZero a set of Slack tools it can use during Player threads and workflow runs, so Slack is somewhere PlayerZero works rather than only somewhere it sends notices. It can find a channel and read its recent history, search earlier messages, read a full Slack thread, post an update, reply in the thread where your team is already talking, revise or delete a message it posted itself, and look up teammates by profile, email address, or channel membership. The tools come with the Slack connection: there is nothing to create, and no credential to manage. Organization owners choose which tools PlayerZero may call from Organization Settings under Collaboration, on the Slack MCP row, and other organization members can read that list without being able to change it. The tools follow the project access already set on the Slack connection, and posting, revising, or deleting a message falls under the privileged action approval setting when you have it turned on. If your organization connected Slack before this release, an organization owner needs to reconnect it to grant the workspace permissions the tools need. + +A workflow that finishes an investigation can post the result into the channel that cares about it and answer the follow-up question in the same Slack thread, so the work and the conversation about it stay in one place instead of being copied across by hand. diff --git a/connector/introduction.mdx b/connector/introduction.mdx index d7454aa..bc7bdfa 100644 --- a/connector/introduction.mdx +++ b/connector/introduction.mdx @@ -27,7 +27,7 @@ PlayerZero integrates with your existing stack through OAuth-based connections. | [Zendesk](/connector/zendesk) | Support | Tickets, customer history | -**Slack** and **Microsoft Teams** are also available as connectors but are set up separately via **Settings → Collaboration** (not the Context → Ticketing page). See [Slack](/connector/slack) and [Microsoft Teams](/connector/microsoft-teams) for full details on capabilities and setup. +**Slack** and **Microsoft Teams** are also available as connectors but are set up separately via **Settings → Collaboration** (not the Context → Ticketing page). See [Slack](/connector/slack) and [Microsoft Teams](/connector/microsoft-teams) for full details on capabilities and setup. Connecting Slack also gives PlayerZero tools for working in your Slack workspace; see [Slack MCP Tools](/connector/slack-mcp). diff --git a/connector/remote-mcp-servers.mdx b/connector/remote-mcp-servers.mdx index 27fed5a..dc65b99 100644 --- a/connector/remote-mcp-servers.mdx +++ b/connector/remote-mcp-servers.mdx @@ -6,6 +6,10 @@ description: "Connect external MCP servers to PlayerZero so AI agents can access PlayerZero can connect to any remote MCP-compatible server, extending what AI agents can access during Player sessions. This lets you bring in data from observability platforms, log providers, internal tools, and any other service that exposes an MCP server. + +Slack tools are a separate case. When you connect Slack, PlayerZero provides and manages the MCP connection for you, so it does not appear on this page and is not created here. Manage it from **Settings → Collaboration → Slack**. See [Slack MCP Tools](/connector/slack-mcp). + + ## What Remote MCP Servers Enable - **Extend agent capabilities** — Give AI agents access to tools and data beyond your codebase, like monitoring dashboards, log search, or internal APIs diff --git a/connector/slack-mcp.mdx b/connector/slack-mcp.mdx new file mode 100644 index 0000000..94221c4 --- /dev/null +++ b/connector/slack-mcp.mdx @@ -0,0 +1,98 @@ +--- +title: "Slack MCP Tools" +sidebarTitle: "Slack MCP Tools" +description: "Choose which Slack tools PlayerZero may use in your workspace, and see how project access and approvals apply to them." +--- + +When you connect Slack, PlayerZero gains a set of Slack tools it can use during Player threads and workflow runs. PlayerZero manages this connection for you, so there is nothing to create and no credential to enter. Organization owners decide which of the tools PlayerZero is allowed to call, and the connection's project access decides which work can reach them. + +## How It Differs From an External MCP Server + +| | Slack MCP | [External MCP Servers](/connector/remote-mcp-servers) | +|---|---|---| +| Where you set it up | Comes with the Slack connection under **Settings → Collaboration** | Created by you under **Settings → Context → MCP** | +| Credentials | Managed by PlayerZero; you do not enter or edit them | You provide a token, OAuth credentials, or headers | +| Connection details | Read-only | Editable | +| Tool policy | Organization owners only | Editors and owners | +| Project access | Inherited from the Slack connection | Set per connection | + +## Available Tools + +Every tool is enabled by default. Each one appears on the Slack MCP page with a description, and tools that change something in your workspace carry a **WRITE** badge. The badge is a label, not a control: it tells you what a tool does, while [approvals](#approvals-for-messages-playerzero-sends) decide whether a person signs off before PlayerZero acts. + +| Tool | What It Does | +|---|---| +| `slack_list_channels` | Lists public and private channels the bot can see | +| `slack_get_channel_info` | Reads a channel's name, topic, and purpose | +| `slack_list_channel_members` | Lists the members of a channel | +| `slack_get_channel_history` | Reads recent messages in a channel | +| `slack_search_messages` | Searches messages across channels the bot belongs to | +| `slack_get_thread_replies` | Reads a full Slack thread, parent message and replies | +| `slack_post_message` | Posts a new message to a channel | +| `slack_reply_in_thread` | Replies inside an existing Slack thread | +| `slack_update_message` | Edits a message PlayerZero posted | +| `slack_delete_message` | Deletes a message PlayerZero posted | +| `slack_get_user_info` | Reads a user profile by user ID | +| `slack_lookup_user_by_email` | Finds a user by email address | +| `slack_list_users` | Lists users in the connected workspace | + + +The tool list covers channels, messages, threads, and users. Direct messages to individual teammates are delivered through your notification settings instead, which is a separate path configured per project. See [Notification Configuration](/connector/slack#notification-configuration). + + +## Choose Which Tools PlayerZero May Use + + + +Navigate to **Settings → Collaboration**, click the **Slack** card, and click **Manage** on the **Slack MCP** row in the Connection Details card. + + +Click **Manage** in the Tools section. The page shows how many of the available tools are currently enabled. + + +Search by name or description, then uncheck any tool PlayerZero should never call in your workspace. **Select all** and **Deselect all** handle bulk changes. + + +Click **Save**. A disabled tool is withheld from PlayerZero, and refused if it is called anyway. + + + +Common choices: turn off posting, replying, editing, and deleting if PlayerZero should read but never write; turn off search if it should read only the channels it is pointed at; turn off the user lookup tools if your workspace treats the member directory as sensitive. + + +Only organization owners can change the tool policy. Other organization members can open this page and read the tool list, so anyone on the team can check what is permitted without being able to alter it. + + +## Project Access + +Slack tools follow the project access already set on the Slack connection. When the connection is limited to specific projects, a Player thread or workflow run in a project outside that list does not see the Slack tools. + +To change it, navigate to **Settings → Collaboration**, click the **Slack** card, and click **Edit** on the Connection Details card. Choose all projects or select individual projects. + +## Approvals For Messages PlayerZero Sends + +Posting a message changes something outside PlayerZero, so it falls under the same approval gate as writing files or committing code. When **Require approval for privileged actions** is on for your organization or for the workflow, PlayerZero must get a person's approval before it posts a new message, or revises or deletes a message it posted earlier. Reading a channel for context is not held. + +See [Privileged Action Approval](/developer-guide/configuration-guides/general-settings-and-membership#privileged-action-approval) for how the organization-level and workflow-level settings interact. + + +A Player thread is a conversation, so you can also ask to see the exact text before it goes out, or ask for a draft rather than a direct post. This is something you request in the thread, not a setting. + + +## Setup + +Slack tools require no setup beyond connecting Slack. If your organization connected Slack before Slack tools were introduced, the Slack MCP row asks you to reconnect and the tools stay unavailable until an organization owner does. See [Reconnecting an Existing Connection](/connector/slack#reconnecting-an-existing-connection). + +Disconnecting Slack removes the tools along with the rest of the integration. + + +Slack MCP tools are available for Slack only. Microsoft Teams connections do not expose tools. + + +## Get Started + +👉 [Slack integration](/connector/slack) + +👉 [External MCP Servers](/connector/remote-mcp-servers) + +👉 [General settings](/developer-guide/configuration-guides/general-settings-and-membership) diff --git a/connector/slack.mdx b/connector/slack.mdx index ea081c9..d326750 100644 --- a/connector/slack.mdx +++ b/connector/slack.mdx @@ -1,6 +1,6 @@ --- title: "Slack" -description: "Connect Slack to PlayerZero to interact with AI Players directly from Slack — start investigations from messages, run workflows, and receive notifications in channels." +description: "Connect Slack to PlayerZero to interact with AI Players directly from Slack — start investigations from messages, run workflows, receive notifications in channels, and let PlayerZero work in your workspace." --- Slack is a messaging platform for teams. PlayerZero's Slack integration lets you interact with AI Players directly from Slack — starting investigations from message threads, chatting with Player threads in DMs, and running workflows. @@ -16,6 +16,7 @@ Once connected, you can: - **Open in Chat** — Link an existing PlayerZero session to a Slack channel from the PlayerZero UI, so you can continue a conversation in Slack - **Receive notifications in channels** — Get workflow stage approval requests, Player thread summaries, and other notifications delivered to your team's channels - **Get direct questions as DMs** — When a Player thread has a collaboration question for a specific person, PlayerZero can deliver it as a direct message so the right teammate can answer without leaving Slack +- **Let PlayerZero work in your workspace** — During an investigation or workflow run, PlayerZero can read channel history, search earlier messages, post an update, reply in a Slack thread, and look up teammates. Organization owners choose which of these tools it may use. See [Slack MCP Tools](/connector/slack-mcp) ## Ask PlayerZero @@ -87,6 +88,22 @@ PlayerZero delivers notifications to Slack channels based on your project and wo Notification routing is configured per project and per workflow stage in **Settings**. See [Notification Configuration](#notification-configuration) for details. +## Slack Tools for PlayerZero + +Connecting Slack also gives PlayerZero a set of Slack tools it can use during Player threads and workflow runs. Beyond sending notifications, PlayerZero can find the right channel, read its recent history, search earlier messages, post an update, reply inside a Slack thread, and look up who is who in your workspace. A workflow that finishes an investigation can post the result into the channel that cares about it and answer the follow-up in the same Slack thread. + +Three limits apply: + +- **Channel access** — PlayerZero works only in channels the PlayerZero bot can reach. The bot joins public channels automatically when it needs to act in one; private channels require an invitation first +- **Its own messages** — PlayerZero can edit or delete only the messages it posted itself +- **Project access** — The tools follow the project access set on the Slack connection, so a Player thread or workflow run in a project outside that list does not see them + +Organization owners choose which of these tools PlayerZero may use, and that choice applies across the organization. See [Slack MCP Tools](/connector/slack-mcp) for the full tool list, project scoping, and how approval requirements apply to messages PlayerZero sends. + + +Slack tools come with the Slack connection. There is no separate connection to create and no credential to manage. If your organization connected Slack before Slack tools were introduced, an organization owner needs to reconnect it so the workspace permissions the tools need are granted. See [Reconnecting an Existing Connection](#reconnecting-an-existing-connection). + + ## Scopes & Permissions @@ -123,7 +140,21 @@ Setup starts in PlayerZero — no pre-configuration in Slack is required. The Sl 4. Sign in to Slack and authorize PlayerZero in your workspace 5. After authorization, the popup closes and you'll see the Slack detail page with configuration options -Once connected, all Slack capabilities are immediately available — the `/ask_playerzero` command, message shortcuts, DMs with the bot, and @mention responses. No additional configuration is needed beyond the initial connection. +Once connected, all Slack capabilities are immediately available — the `/ask_playerzero` command, message shortcuts, DMs with the bot, @mention responses, and the Slack tools PlayerZero uses during investigations. No additional configuration is needed beyond the initial connection. + +### Reconnecting an Existing Connection + +Slack tools need workspace permissions that connections made before their release did not request. If the Slack MCP row on the Slack detail page asks you to reconnect, an organization owner can grant them by disconnecting and reconnecting: + +1. Navigate to **Settings → Collaboration** and click the **Slack** card +2. Click **Disable** in the page header and confirm +3. Click **Enable** and complete Slack authorization again + +Disabling stops PlayerZero from sending messages to Slack and clears the stored Slack credentials. Your organization and project notification settings are kept, so you do not need to configure them again after reconnecting. + + +Only organization owners can enable or disable the Slack connection. + ### Channel Access @@ -155,6 +186,8 @@ Once Slack is connected, you can configure where notifications are delivered at ## Get Started +👉 [Slack MCP Tools](/connector/slack-mcp) + 👉 [AI Player overview](/features/ai-player) 👉 [Workflow overview](/features/workflows) diff --git a/developer-guide/configuration-guides/general-settings-and-membership.mdx b/developer-guide/configuration-guides/general-settings-and-membership.mdx index 9011d9d..78a01fb 100644 --- a/developer-guide/configuration-guides/general-settings-and-membership.mdx +++ b/developer-guide/configuration-guides/general-settings-and-membership.mdx @@ -59,7 +59,7 @@ Switching modes asks you to confirm, since it changes which configuration is in ### Privileged Action Approval -Privileged actions are writes and destructive operations, such as writing files or committing code. Turn on **Require approval for privileged actions** and an agent must get a person's approval before taking one of those actions. +Privileged actions are writes and destructive operations, such as writing files, committing code, posting a message to Slack, or revising or deleting a message PlayerZero posted earlier. Turn on **Require approval for privileged actions** and an agent must get a person's approval before taking one of those actions. This setting is org-wide and **takes precedence over the per-workflow setting**. Individual workflows have their own **Require approval for privileged actions** toggle in Project Settings under Workflows, but when the organization-level setting is on: @@ -124,6 +124,7 @@ Access to each setting is determined by Org Permission. |---|---|---|---| | Organization name, slug, auto-join, allowed domains | View only | Yes | Yes | | Code simulations, privileged action approval | View only | Yes | Yes | +| [Slack MCP tool policy](/connector/slack-mcp) | View only | View only | Yes | | SSO configuration | No | No | Yes | | Public artifact sharing | No | No | Yes | | Organization deletion | Contact PlayerZero support | Contact PlayerZero support | Contact PlayerZero support | diff --git a/docs.json b/docs.json index 7f90467..362d7f0 100644 --- a/docs.json +++ b/docs.json @@ -83,6 +83,7 @@ "group": "MCP (Model Context Protocol)", "pages": [ "connector/remote-mcp-servers", + "connector/slack-mcp", "developer-guide/configuration-guides/mcp-setup" ] }, @@ -186,7 +187,7 @@ "groups": [ { "group": "Changelog", - "pages": ["changelog/july-2026", "changelog/june-2026", "changelog/may-2026", "changelog/april-2026", "changelog/march-2026", "changelog/february-2026", "changelog/january-2026", "changelog/december-2025", "changelog/november-2025"] + "pages": ["changelog/august-2026", "changelog/july-2026", "changelog/june-2026", "changelog/may-2026", "changelog/april-2026", "changelog/march-2026", "changelog/february-2026", "changelog/january-2026", "changelog/december-2025", "changelog/november-2025"] } ] }