Dropbox について
Dropbox MCP Serverは、ClaudeなどのAIアシスタントからDropboxのファイルやフォルダーを操作するGo製のMCPサーバーです。OAuth 2.0認証に対応し、共有リンクやファイル履歴も扱えます。
主な機能
- 01ブラウザー経由のOAuth 2.0認証
- 02ファイルの検索と転送
- 03フォルダー管理
- 04共有リンク管理
- 05ファイル履歴の表示と復元
- 06大容量ファイルの分割アップロード
活用シーン
- 01Dropbox内のファイル検索とダウンロード
- 02ファイルのアップロード、移動、コピー
- 03共有リンクの作成や取り消し
- 04過去のファイル履歴の確認と復元
MCP 対応
MCPクライアント向けに、Dropboxの認証、ファイルやフォルダーの操作、共有リンク、ファイル履歴管理のツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Dropbox MCP サーバー
Go で記述された、Dropbox と連携するための Model Context Protocol(MCP)サーバー実装です。このサーバーを使用すると、Claude などの AI アシスタントが標準化されたプロトコルを介して Dropbox を操作できます。
機能
- OAuth 2.0 認証:ブラウザベースの OAuth フローを使用した、Dropbox との安全な認証
- ファイル操作:ファイルの一覧表示、検索、ダウンロード、アップロード、移動、コピー、削除
- フォルダー管理:フォルダーの作成とディレクトリー構造の操作
- 共有:共有リンクの作成、一覧表示、取り消し
- バージョン管理:ファイルのリビジョン履歴の表示と以前のバージョンの復元
- 大容量ファイルのサポート:150MB を超えるファイルを自動的に分割してアップロード
前提条件
- Dropbox アカウント
- Claude Desktop アプリケーション
- Go 1.21 以降(ソースからビルドする場合のみ)
インストール
オプション 1:Homebrew でインストール(macOS/Linux)
brew tap ngs/tap
brew install dropbox-mcp-server
オプション 2:Go でインストール
go install go.ngs.io/dropbox-mcp-server@latest
オプション 3:ビルド済みバイナリーをダウンロード
リリースページから、お使いのプラットフォーム向けの最新リリースをダウンロードしてください。
# Example for macOS (Apple Silicon)
curl -L https://github.com/ngs/dropbox-mcp-server/releases/latest/download/dropbox-mcp-server_darwin_arm64.tar.gz | tar xz
sudo mv dropbox-mcp-server /usr/local/bin/
# Example for macOS (Intel)
curl -L https://github.com/ngs/dropbox-mcp-server/releases/latest/download/dropbox-mcp-server_darwin_amd64.tar.gz | tar xz
sudo mv dropbox-mcp-server /usr/local/bin/
# Example for Linux (x86_64)
curl -L https://github.com/ngs/dropbox-mcp-server/releases/latest/download/dropbox-mcp-server_linux_amd64.tar.gz | tar xz
sudo mv dropbox-mcp-server /usr/local/bin/
オプション 4:ソースからビルド
git clone https://github.com/ngs/dropbox-mcp-server.git
cd dropbox-mcp-server
go build -o dropbox-mcp-server
セットアップ
⚠️ セキュリティに関する注意
重要:各ユーザーは、自分専用の Dropbox アプリを作成する必要があります。CLIENT_SECRET をバイナリーに埋め込んだり、共有したりしないでください。詳しくは SECURITY.md を参照してください。
1. Dropbox アプリを作成する
- Dropbox アプリコンソールにアクセスします
- 「Create app」をクリックします
- 設定を選択します:
- Choose an API:「Scoped access」を選択します
- Choose the type of access:必要に応じて「Full Dropbox」または「App folder」を選択します
- Name your app:アプリの一意の名前を入力します
- 作成後、アプリの設定ページに移動します
- 「OAuth 2」で、リダイレクト URI
http://localhost:8080/callbackを追加します - App key(Client ID)と App secret(Client Secret)を控えておきます
- 「Permissions」タブで、次のスコープが選択されていることを確認します:
files.content.read- Dropbox のファイルやフォルダーのコンテンツを表示しますfiles.content.write- Dropbox のファイルやフォルダーのコンテンツを編集しますfiles.metadata.read- Dropbox のファイルやフォルダーに関する情報を表示しますfiles.metadata.write- Dropbox のファイルやフォルダーに関する情報を表示および編集しますsharing.read- 共有されているファイルやフォルダーを表示しますsharing.write- ファイルやフォルダーを共有し、共有設定を変更します
2. Claude Desktop を設定する
オプション A:Claude MCP CLI を使用する(推奨)
Claude MCP CLI がインストールされている場合、1 つのコマンドでサーバーを登録できます:
# Basic registration (replace with YOUR OWN App credentials)
claude mcp add dropbox dropbox-mcp-server \
--env DROPBOX_CLIENT_ID=your_own_app_key \
--env DROPBOX_CLIENT_SECRET=your_own_app_secret
# With custom binary path
claude mcp add dropbox /path/to/dropbox-mcp-server \
--env DROPBOX_CLIENT_ID=your_own_app_key \
--env DROPBOX_CLIENT_SECRET=your_own_app_secret
⚠️ セキュリティ:ご自身の Dropbox アプリの認証情報を使用してください。共有された認証情報は使用しないでください。
オプション B:手動で設定する
次の内容を Claude Desktop の設定ファイルに追加します:
macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json
Linux:~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"dropbox": {
"command": "dropbox-mcp-server",
"env": {
"DROPBOX_CLIENT_ID": "your_app_key_here",
"DROPBOX_CLIENT_SECRET": "your_app_secret_here"
}
}
}
}
注:
- Homebrew でインストールした場合、またはバイナリーを
/usr/local/binに配置した場合は、"command": "dropbox-mcp-server"だけを指定できます - ソースからビルドした場合、または任意の場所にダウンロードした場合は、フルパスを指定します:
"command": "/path/to/dropbox-mcp-server"
3. インストールを確認する
設定後、Claude Desktop を再起動し、サーバーが接続されていることを確認します:
# List registered MCP servers (if using Claude MCP CLI)
claude mcp list
# Remove a server if needed
claude mcp remove dropbox
使い方
初回認証
Claude で Dropbox MCP サーバーを初めて使用するときは:
dropbox_authツールを使用して認証します- Dropbox の認証ページがブラウザーで開きます
- ログインしてアプリを認証します
- 成功ページにリダイレクトされます
- 認証トークンが
~/.dropbox-mcp-server/config.jsonに保存されます
使用可能なツール
認証
dropbox_auth- Dropbox で認証しますdropbox_check_auth- 認証状態を確認します
ファイル操作
dropbox_list- ファイルとフォルダーの一覧を表示dropbox_search- ファイルを検索dropbox_get_metadata- ファイル/フォルダーのメタデータを取得dropbox_download- ファイルの内容をダウンロードdropbox_upload- ファイルをアップロードdropbox_create_folder- 新しいフォルダーを作成dropbox_move- ファイル/フォルダーを移動または名前変更dropbox_copy- ファイル/フォルダーをコピーdropbox_delete- ファイル/フォルダーを削除
共有
dropbox_create_shared_link- 共有リンクを作成dropbox_list_shared_links- 既存の共有リンクを一覧表示dropbox_revoke_shared_link- 共有リンクを無効化
バージョン管理
dropbox_get_revisions- ファイルのリビジョン履歴を取得dropbox_restore_file- ファイルを以前のバージョンに復元
Claude でのコマンド例
"Please authenticate with Dropbox"
"List all files in my Dropbox root folder"
"Search for PDF files containing 'invoice'"
"Upload this text to /Documents/notes.txt"
"Create a shared link for /Photos/vacation.jpg"
"Show me the revision history of /Documents/report.docx"
設定
サーバーは設定を ~/.dropbox-mcp-server/config.json に保存します。
{
"client_id": "your_client_id",
"client_secret": "your_client_secret",
"access_token": "your_access_token",
"refresh_token": "your_refresh_token",
"expires_at": "2024-01-01T00:00:00Z"
}
トークンは有効期限が切れると自動的に更新されます。
セキュリティに関する考慮事項
- 設定ファイルには機密性の高いトークンが含まれており、0600 権限で保存されます
- 設定ファイルの代わりに、環境変数を使用してクライアントの認証情報を指定できます
- OAuth フローでは、CSRF 攻撃を防ぐために state パラメーターを使用します
- すべての API 呼び出しで HTTPS を使用します
トラブルシューティング
認証の問題
- Dropbox App Console でリダイレクト URI が正しく設定されていることを確認してください
- クライアント ID とシークレットが正しいことを確認してください
~/.dropbox-mcp-server/config.jsonを削除して、再認証を試してください
権限エラー
- Dropbox アプリで必要なスコープが有効になっていることを確認してください
- ファイルパスが正しいことを確認してください(スラッシュを使用し、/ で始めてください)
接続の問題
- インターネットに接続できることを確認してください
- ネットワークから Dropbox API にアクセスできるか確認してください
- 詳細なエラーメッセージについては、stderr の出力を確認してください
開発
ソースからビルド
go mod download
go build -o dropbox-mcp-server
テストの実行
go test ./...
プロジェクト構成
dropbox-mcp-server/
├── main.go # MCP server implementation
├── go.mod # Go module definition
├── internal/
│ ├── auth/ # OAuth authentication
│ ├── config/ # Configuration management
│ ├── dropbox/ # Dropbox API client
│ └── handlers/ # MCP tool handlers
├── mcp.json # MCP server metadata
└── README.md # This file
コントリビューション
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。
ライセンス
MIT License - 詳細については LICENSE ファイルを参照してください
サポート
問題や質問がある場合は、GitHub でイシューを作成してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。