> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spojit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect the Slack MCP server

> Connect Slack's official MCP server to Spojit: create an internal Slack app with user token scopes and Spojit's redirect URL, then sign in with OAuth.

Slack hosts an official MCP server that lets AI agents search messages and files, read channels and threads, post messages, and work with canvases and lists, all within each user's existing permissions. Connect it to Spojit to summarise channels, post workflow results, or find a decision buried in a thread.

<Note>
  Spojit connects to this server through a [custom MCP server](/connectors/remote-mcp-servers/custom) connection, so you add it with **Add custom server** rather than from the connector catalog. Slack maintains it and decides which tools it offers; see [Slack's MCP server documentation](https://docs.slack.dev/ai/mcp-server/) for the current list.
</Note>

<Tip>
  To post as a bot, use the built-in [Slack connector](/connectors/integrations/slack). This MCP server acts as the signed-in user and can search across your workspace.
</Tip>

## Before you start

Slack only lets **internal apps** (used in your own workspace) or **directory-published apps** use the MCP server, so you create an internal app for Spojit.

<Steps>
  <Step title="Copy Spojit's redirect URI">
    In Spojit, go to **Connections**, click **Add custom server**, and choose **OAuth 2.0**. Copy the **Redirect URI** shown in the form (for example `https://miraxa.spojit.com/api/connectors/oauth/callback`).
  </Step>

  <Step title="Create a Slack app">
    Go to [api.slack.com/apps](https://api.slack.com/apps), click **Create New App**, choose **From scratch**, name it (for example `Spojit`), and pick your workspace. Do not distribute it publicly.
  </Step>

  <Step title="Add the redirect URL and user scopes">
    Under **OAuth & Permissions**, add Spojit's redirect URI as a **Redirect URL**. Under **User Token Scopes**, add the scopes for the tools you need, for example `search:read.public` to search, `channels:history` to read channels, and `chat:write` to post. Slack's documentation maps each tool to its scopes.
  </Step>

  <Step title="Copy the credentials">
    Under **Basic Information > App Credentials**, copy the **Client ID** and **Client Secret**.
  </Step>
</Steps>

## Server URL

```
https://mcp.slack.com/mcp
```

## Connect in Spojit

<Steps>
  <Step title="Add a custom server">
    In **Add custom server**, enter a **Name** such as `Slack` and paste the **Server URL**.
  </Step>

  <Step title="Choose Auto authentication">
    Choose **Auto** and click **Save & connect**. Because Slack needs your own app, the **OAuth 2.0** form opens with the authorization URL, token URL, and Slack's full scope list already filled in.
  </Step>

  <Step title="Enter your app's credentials and trim the scopes">
    Paste the **Client ID** and **Client Secret**. Edit **Scopes** so it lists only the user token scopes you added to the Slack app, then click **Save & connect**.
  </Step>

  <Step title="Allow access in Slack">
    Slack opens its authorization page. Review the permissions and click **Allow**. Spojit marks the connection **Connected**.
  </Step>
</Steps>

If the form does not prefill, choose **OAuth 2.0** and enter **Authorization URL** `https://slack.com/oauth/v2_user/authorize` and **Token URL** `https://slack.com/api/oauth.v2.user.access`, plus your scopes.

## Use it in a workflow

Add a **Connector** node, pick your Slack server under **Custom Servers**, and choose **Agent Mode** or **Direct Mode**. See [Use a custom server in a workflow](/connectors/remote-mcp-servers/custom#use-a-custom-server-in-a-workflow).

## Things to know

* **Workspace admins stay in control.** Admins can approve and manage MCP client integrations through Slack's app approval process, and activity appears in Slack's audit logs.
* **IP allowlists apply.** If your app has IP restrictions, requests to the MCP server are subject to them too.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Slack reports invalid scopes">
    The **Scopes** in Spojit include a scope the app does not have. Remove it in Spojit, or add it under **User Token Scopes** in the Slack app, then reconnect.
  </Accordion>

  <Accordion title="The app cannot use the MCP server">
    Only internal or directory-published apps may use it. Make sure the app is installed to your own workspace and not distributed as an unlisted app.
  </Accordion>

  <Accordion title="Authorization waits for approval">
    Your workspace requires admin approval for apps. Ask a workspace admin to approve the app.
  </Accordion>
</AccordionGroup>

## Learn more

* [Slack MCP server](https://docs.slack.dev/ai/mcp-server/)
* [Guide to Model Context Protocol in Slack](https://slack.com/help/articles/48855576908307-Guide-to-Model-Context-Protocol-in-Slack)

<Snippet file="start-free.mdx" />
