Claude

boxMCPサーバーを使ってみた

はじめに

はじめまして、今年度入社した中村です。最近なにかと話題のMCPサーバーですが、今回はboxの公式MCPサーバーについてあまり詳しい記事がなかったので、設定方法や実際使ってみた様子を紹介していこうと思います。boxのMCPサーバーはboxのAPIを使って、自然言語でbox内に入っているファイル、フォルダの検索、操作をすることができます。

ツールの紹介

🔐 ユーザー・認証系

  • box_who_am_i
     🔸 できること:現在のユーザー情報と接続状況を取得。
     📤 戻り値:ユーザー情報の文字列
  • box_authorize_app_tool
     🔸 できること:Boxアプリの認証を開始。
     📤 戻り値:認証ステータスメッセージ

🔍 検索・取得系

  • box_search_tool
     🔸 できること:ファイルを検索。
     📥 パラメータ:検索クエリ、ファイル拡張子、検索場所(名前、説明、内容など)、フォルダID
     📤 戻り値:検索結果
  • box_search_folder_by_name
     🔸 できること:フォルダ名から検索。
     📥 パラメータ:フォルダ名
     📤 戻り値:フォルダID
  • box_list_folder_content_by_folder_id
     🔸 できること:フォルダの中身を一覧表示。
     📥 パラメータ:フォルダID、再帰的表示有無
     📤 戻り値:JSON形式のフォルダ内容(ID、名前、タイプ、説明)

📄 ファイル操作系

  • box_read_tool
     🔸 できること:ファイルのテキスト内容を読み込み。
     📥 パラメータ:ファイルID
     📤 戻り値:ファイル内容
  • box_upload_file_tool
     🔸 できること:テキストをBoxにファイルとしてアップロード。
     📥 パラメータ:コンテンツ、ファイル名、フォルダID
     📤 戻り値:アップロード結果(ファイルID・名前)
  • box_download_file_tool
     🔸 できること:Boxからファイルをダウンロード。
     📥 パラメータ:ファイルID、保存オプション、保存パス
     📤 戻り値:ファイル内容(テキスト、画像(base64)、または保存結果)

🤖 AI連携系(要AI機能が使えるプラン)

  • box_ask_ai_tool
     🔸 できること:ファイルに関してAIに質問。
     📥 パラメータ:ファイルID、質問プロンプト
     📤 戻り値:AIの回答
  • box_ai_extract_data
     🔸 できること:AIを使ってファイルからデータ抽出。
     📥 パラメータ:ファイルID、抽出したいフィールド
     📤 戻り値:抽出されたJSONデータ

📁 フォルダ操作系

  • box_manage_folder_tool
     🔸 できること:フォルダの作成・更新・削除。削除機能があるのはかなり怖い。
     📥 パラメータ:アクション種別、フォルダID、名前、親フォルダID、説明、再帰削除オプション
     📤 戻り値:ステータスメッセージとフォルダ

使うための設定

続いてMCPサーバーを使うための設定について解説していきます。

事前準備

このMCPサーバーはuvコマンドで実行しているので、uvが使えるか確認します。
以下のコマンドでversionがかえってきたら使えます。

uv --version

uvが入っていない場合は下記の方法でインストールしてください。

Mac、Linuxの方

curl -LsSf https://astral.sh/uv/install.sh | sh

Windowsの方

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Box側の設定

  1. 開発者コンソールから右上のPlatformアプリを作成を選択します。
  2. カスタムアプリを選択します。
  3. アプリ名等を入力後、ユーザー認証を選択します。
  4. 構成からOAuth2.0資格情報のクライアントIDとクライアントシークレットを取得、リダイレクトURIを追加します。クライアントIDとクライアントシークレットはMCPクライアントの設定で使うのでメモして置いてください。

MCPサーバーの設定

mcp-server-boxをクローンします。

git clone https://github.com/box-community/mcp-server-box.git 
cd mcp-server-box

プロジェクトを作成し、セットアップします。
Mac、Linuxの方

# Create virtual environment and activate it 
uv venv 
source .venv/bin/activate 

# Lock the dependencies 
uv lock

Windowsの方

# Create virtual environment and activate it 
uv venv 
.venv\Scripts\activate 

# Lock the dependencies 
uv lock

.envファイルを作成して、box側の設定3.のクライアントIDとシークレットクライアントを入力します。

BOX_CLIENT_ID=your_client_id 
BOX_CLIENT_SECRET=your_client_secret

MCPクライアントの設定

利用するMCPクライアントの設定用jsonファイルに以下を追加します。
vscodeを使う方はsetting.json、Claude Desktopを使う方はclaude_desktop_config.jsonに追加してください。

{
  "mcpServers": {
    "box": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/shurrey/local/mcp-server-box", --ここはクローンしたディレクトリに変更
        "run",
        "src/mcp_server_box.py"
      ]
    }
  }
}

実際に使ってみた

今回は「財務諸表勉強会.pptx」をboxに入れてよく使いそうなツールを使ってみます。MCPクライアントはvscodeを使っています。

box_search_tool:
ファイルやフォルダの検索をするツール
box_ai_extract_data:
AI機能は利用しているプラン的に利用できなかった
box_read_tool:
ファイルのテキストを抽出してくれる
要約はMCPクライアント側で行っている
応用:
ファイルの中身の要約をslackで送信

まとめ

boxのMCPサーバーを活用することでわざわざファイルを操作しなくても中身を持ってこられるのはとても便利でした。今回はやってみませんでしたが、このほかにもフォルダの操作やダウンロードなどのツールもあります。slack以外のMCPサーバーとの連携でもっと活用できると思うのでぜひ試してみてください!

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. ChatGPT

    ChatGPT ProからClaude3 Proへ移行した話

    こんにちは、エクスチュアの黒岩です。突然ですが、皆様はどんな…

  2. ChatGPT

    ChatGPTとVSCodeの連携方法とその使用例:開発効率を飛躍的にアップさせる

    こんにちは、石原と申します。今回のブログが初投稿となります。…

  3. ChatGPT

    Open Interpreter+VScode+Dockerで生成AIによるコード開発環境構築(Wi…

    はじめにこんにちは、エクスチュアの石原です。皆さん、…

  4. ChatGPT

    LangChainって何?: 次世代AIアプリケーション構築 その1

    こんにちは、エクスチュアの石原です。近年、大規模言語モデル(…

  5. Generative AI

    AIを使ったマーケティングゲームを作ってみた

    こんにちは、石原です。私の所属しているエクスチュア株式会社で…

カテゴリ

最近の記事

  1. コンポーザブルCDPにおけるSnowflakeのマルチモーダ…
  2. boxMCPサーバーを使ってみた
  3. #ai-datacloud勉強会でマルチモーダルに触れた日
  4. Matillion ETLを安全に使いたい人へ送る、SSL対…
  5. LangGraphのソースコードから見る今更聞けないAIエー…
  1. Google BigQuery

    GoogleNext 2019レポート:3日目
  2. ヒートマップ

    ユーザビリティの検証で気を付けたいこと、やってはいけないこと②
  3. Tableau

    Tableauのヘックスタイルマップでヒートマップを地図上に粗く表現する
  4. ObservePoint

    Cookieを数える -アメリカ、イギリス、オーストラリアの主要ウェブサイト30…
  5. GA 360 Suite

    GoogleDataStudio:GoogleAnalyticsのカスタムチャネ…
PAGE TOP