ClineにMCPサーバーとしてSlackを接続してみる

IT・プログラミング

今回は、ClineにMCPサーバーのSlackを入れてみたいと思います。

必要なIDとTokenの取得

まずは、SlackアプリのBot User OAuth TokenとTeam IDを取得する必要があるため、手順を説明します。

Slackアプリの作成手順

Slack Apps pageにアクセスします。

このようになった場合は、Sign inします。

「Create New App」をクリックします。

「From scratch」を選択します。

アプリに名前を付けて、ワークスペースを選択します。

CreateAppをクリックすると、Appの情報が表示されます。

Bot Token Scopesの設定手順

「OAuth & Permissions」に移動し、以下のスコープを追加します。

  • channels:history
  • channels:read
  • chat:write
  • reactions:write
  • users:read

「Install to Workspace」をクリックして、アプリを承認します。

xoxb-で始まる「Bot User OAuth Token」を保存します。

Team IDの取得手順

SlackのワークスペースのURLから、Team ID(Tで始まる)を取得します。
ウェブブラウザで、参加中のワークスペースのURLをを開きます。
ページが読み込まれると、URL の形式が
https://app.slack.com/client/TXXXXXXX/CXXXXXXX になります。

T で始まる文字列が、参加中のワークスペースの ID です。

詳細は以下の記事で確認してください

MCPサーバーの設定

ClineのMCPサーバー設定からSlackをインストールします。

前のステップで取得したIDなどの情報入力を求められるので、はいを選択します。

ディレクトリを作成します

必要な情報(Bot User OAuth TokenとTeam ID)を取得できたので、次にMCPサーバーのディレクトリを作成します。READMEには、MCPサーバーのディレクトリを作成する場所が明示的に指定されていませんが、一般的な場所として、ホームディレクトリ内にMCPというディレクトリを作成し、その中にSlack MCPサーバーのディレクトリを作成します。

SLACK_BOT_TOKENとSLACK_TEAM_IDを入力します。

Cline has a question:
SLACK_BOT_TOKENとSLACK_TEAM_IDの値を教えてください。

MCPのJsonファイルが更新されます。
更新できるとデモの実行になります。

cline_mcp_settings.jsonファイルが更新されたので、Slack MCPサーバーが正常にインストールされたことを確認します。

Slack MCPサーバーが正常にインストールされたことを確認するには、Slack MCPサーバーのツールを使用して、その機能をデモンストレーションします。

ここでは、slack_list_channelsツールを使用して、Slackワークスペース内のパブリックチャンネルをリストします。

基本はこれでできるようですが、うまくいかなかったので、結局いろいろ調べて以下でうまくいきました。
MCPサーバーの設定ファイルを編集して以下に書き換えました。

"github.com/modelcontextprotocol/servers/tree/main/src/slack": {

      "disabled": false,
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@modelcontextprotocol/server-slack"
      ],
      "env": {
        "SLACK_BOT_TOKEN": "xoxb-XXXXXXXXXXX",
        "SLACK_TEAM_ID": "TXXXXXXXXX"
      },
      "transportType": "stdio"
    }

Windowsだとnpxでうまくいかないようです。

詳細は以下にも記載しました。

うまく接続できてもエラーのようなものが表示されます。
「Received ListToolsRequest」

ですが、この状態でもきちんとメッセージを送れました!

タイトルとURLをコピーしました