0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【MCP】Visual Studio Codeの GitHub Copilot Agent ModeでSlackと連携するまでの設定

Last updated at Posted at 2025-06-20

はじめに

絶賛話題沸騰中の、MCPサーバー。Slackと連携させるといい感じに最新の投稿を分析してくれたり、内容を解析してくれたりするので、使ってみようと思った。

同時に過去のslackの情報を遡って検索できたらいいなあと思い、やってみることにした。

この記事は設定周りについてまとめる。

必要な準備

Slack MCPサーバーで連携して、応答できるようになるまでにはやることが多く存在します。

ざっくりいうと....

  • Slack ワークスペース
    • メッセージ取得・送信可能なチャンネル・ユーザー
  • Slack App
    • Bot Token取得。必要スコープ設定
  • MCPサーバー
    • Node.js/python環境
  • MCPホスト
    • Vscode、Claude Desktop
  • セキュリティ(ちゃんと会社で使うのなら検討する必要がある)
    • Token管理・暗号化・アクセス制御

1つずつ確認して進める。

Slackワークスペースの用意

こちらのページからサインアップする必要がある。

image.png

何かしらのアカウントでログインをして、ワークスペース名を選択する。

Slack Appの作成

Slack MCPサーバーはこのSlack Appから呼び出す。
こちらで作成する。

image.png

引き続き、Appをインストールするワークスペースを選択する。

image.png

次にこちらの設定をする。
あとで変更可能なのでどちらのオプションでも大丈夫ですが、From scratchを選択。

image.png

そして、Slackのアプリケーション名とワークスペースを選択し、Create Appを選択。

image.png

左サイドバーのOAuth & Permissionsタブ画面で、下の画面の方にあるBot Token Scopesを選択し、以下の Scope を追加する。

  • channels:history
    • 指定したチャンネルのメッセージ履歴を最新のものから取得する
  • channels:read
    • チャンネルの基本情報を閲覧する
  • chat:write
    • アプリとしてメッセージを送信する
  • reactions:write
    • メッセージに絵文字リアクションを追加
  • users:read
    • ユーザーとその基本情報を閲覧する
  • users.profile:read
    • これは不要だったかも

こちらはSlackのMCPサーバーに必要な権限です。

※ あとで追記します。

SlackワークスペースへSlack Appをインストールする

作成したSlack Appを利用できるようにワークスペースへインストールします。

左サイドバーInstall Appを選択。

Install to ${ワークスペース名}になっていると思うので、そのボタンを押します。

image.png

image.png

上記のような権限の画面ができてきたら、許可するを選択してください。

そうすると、「Bot User OAuth Token」が生成されます。このトークンを用いて認証を実施します。

なので、このトークンの情報はコピーしてください!

Slack MCP Serverで必要な環境設定値

以下、2つの環境変数が必要になります。

  • SLACK_BOT_TOKEN
  • SLACK_TEAM_ID

SLACK_BOT_TOKENは先ほどコピーしたものを使用してください。

一方でSLACK_TEAM_IDは、Slackのワークスペースにあるものを使ってください。

image.png

http://{SLACK_TEAM_ID}.slack.com

slack.comの前のものがこれに当たります。

MCPサーバーの設定

今回は、Visual Studio Codeを使ってお手製のものを使用します。
Claude Desktopなどを使用される方は以下の記事が参考になると思います。

自分は、Node.jsで環境をたちあげましたが、他にいい方法がある方はぜひそちらを利用ください。

ここで、サーバーリソースをnpmリポジトリからダウンロードして npx で動作させる方法をやろうと思ったのですが、Githubアクセストークンが必要なようで.....

Github アクセストークンをまずは発行します。

Githubアクセストークン発行方法

自分のGitHubにいき
settings > Developers Settings > Personal access tokens > classicと選択

必須スコープはread:packagesです。

こちらの記事が参考になりました。

作成できたら、ホームディレクトリに、~/.npmrcファイルを作成し記述、保存します。

スペースには注意してください!!

.npmrc
@ubie-oss:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=YOUR_PERSONAL_ACCESS_TOKEN

自分のNode.jsのバージョンは22だったような...

$ node -v
v22.14.0

自分が作業したいディレクトリに移動して、以下のパッケージをインストール

npm install @modelcontextprotocol/sdk

MCP関連の設定をVscodeで実施

MCPの設定を足します。Vscodeを開いて、設定アイコンをクリックし「設定」を選択してください。

image.png

「mcp」と検索キーワードで打つと、setting.jsonが出てくると思うのでそこから編集してください。

image.png

編集を選択したら以下の画面がでてきます。

image.png

デフォルトだとpythonが書かれているのかな?

setting.json
{
    "mcp": {
    
        "inputs": [],
        "servers": {
            "mcp-server-time": {
                "command": "python",
                "args": [
                    "-m",
                    "mcp_server_time",
                    "--local-timezone=America/Los_Angeles"
                ],
                "env": {}
            }
        }
    }
}

今回はNode.jsを使うので以下のような設定にしました。

setting.json
"mcp": {
    "inputs": [],
    "servers": {
      "slack": {
        "command": "npx",
        "args": [
          "-y",
          "@modelcontextprotocol/server-slack",
          "/Users/${Macユーザ名}/Projects/DevDay" // 自分の作業をしているディレクトリのパスを指定する
        ],
        "env": {
          "SLACK_BOT_TOKEN": "tokenをコピーする", // bot token
          "SLACK_TEAM_ID": "team_idをコピーする" // teamId
        }
      }
    }
  },
  "workbench.settings.applyToAllProfiles": []
}

これで保存しちゃってください。

MCPサーバー起動

そして、MCPサーバーを起動します。
小さい▶️起動を押すとサーバーが立ち上がります。

image.png

GitHub Copilot Agent Modeを開く

VS Code Insider版で GitHub Copilot のチャットを開き、そしてメニューを変更してエージェントに切り替えます。

image.png

こいつをちゃんと、指定しないとSlackとおしゃべりできないので要注意です!!

image.png

  • Agent
  • コンテキストの追加のsettings.json

こちらに設定ができたら完了です。

チャットがちゃんと機能しているとこのように注意のダイアログがでてきます。特に変なものでなければ続行ボタンをクリックしてもらうと、ちゃんと会話が進んでいきます。

image.png

おわりに

いかがだったでしょうか?設定して実際に使うまでは、かなり長いのではないのかなと思います。

サイトによっては大事なアクセストークンの取得等の設定が抜けていたりするので、ちょっと試してみたい!とかいじってみたい!というときはこちらを参考にしてもらえると幸いです。

情報で足りていないところがあればまた書き直します。

参考

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?