今回は、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」
ですが、この状態でもきちんとメッセージを送れました!