mcp-server-digitalocean について
mcp-server-digitaloceanは、MCPクライアントからDigitalOceanのクラウドインフラを管理するMCPサーバーです。Droplet、データベース、ドメインに加え、アカウントやリージョンの情報を扱います。
主な機能
- 01Dropletの一覧、作成、詳細確認、削除
- 02データベースクラスターの一覧と確認
- 03ドメインレコードの管理
- 04アカウント情報と利用上限の確認
- 05料金付きリージョンとDropletサイズの参照
活用シーン
- 01既存Dropletの確認やインスタンスの作成・削除
- 02マネージドデータベースクラスターの確認
- 03ドメインレコードの作成・削除
- 04利用可能なリージョンとDropletサイズの比較
MCP 対応
MCPクライアントにDigitalOceanのアカウントおよびインフラ操作ツールを提供します。DigitalOcean Personal Access Tokenが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
DigitalOcean MCP サーバー
DigitalOcean のクラウドインフラストラクチャ向け Model Context Protocol サーバーです。AI アシスタントを通じて、Droplet、データベース、ドメインなどを管理できます。
何ができますか?
- Droplet の管理 — Droplet の一覧表示、作成、詳細の取得、削除
- データベースの照会 — マネージドデータベースクラスターの一覧表示と確認
- ドメインの管理 — ドメインレコードの一覧表示、作成、削除
- インフラストラクチャの確認 — 利用可能なリージョンや Droplet サイズを料金とともに表示
- アカウントの確認 — アカウント情報と使用制限を表示
目次
前提条件
- Python >= 3.10
- DigitalOcean Personal Access Token
- 対応している MCP クライアント:
インストール
uv を使用する(推奨)
uv tool install mcp-server-digitalocean
pip を使用する
pip install mcp-server-digitalocean
セットアップ
1. API トークンを生成する
DigitalOcean API Tokens にアクセスし、新しい Personal Access Token を作成します。
2. MCP クライアントにサーバーを追加する
次の JSON スニペットを、クライアントの MCP 設定ファイルに追加します。
{
"mcpServers": {
"digitalocean": {
"command": "uvx",
"args": ["mcp-server-digitalocean"],
"env": {
"DIGITALOCEAN_TOKEN": "YOUR_DO_TOKEN"
}
}
}
}
続いて、使用するクライアントの手順に従ってください。
Claude Desktop
- Settings > Developer > Edit Config に移動します
- 上記のスニペットを
claude_desktop_config.jsonに追加します YOUR_DO_TOKENをトークンに置き換えます- 保存して、Claude Desktop を再起動します
- 利用可能なサーバーとして「digitalocean」が表示されます
Cursor
- Settings > Cursor Settings > MCP > Add a new global MCP server に移動します
- Cursor によって
~/.cursor/mcp.jsonが開きます - 上記のスニペットをこの JSON ファイルに追加します
YOUR_DO_TOKENをトークンに置き換えます- 保存して、MCP Settings に戻ります
Windsurf
- Settings > Windsurf Settings > Cascade > MCP > Add Server > Add custom server に移動します
- Windsurf によって
~/.codeium/windsurf/mcp_config.jsonが開きます - 上記のスニペットをこの JSON ファイルに追加します
YOUR_DO_TOKENをトークンに置き換えます- 保存して、MCP Settings に戻ります
Claude Code
- ターミナルで次のコマンドを実行します。
claude mcp add digitalocean -- uvx mcp-server-digitalocean
- 環境変数を設定します。
export DIGITALOCEAN_TOKEN="your-token-here"
利用可能なツール
| カテゴリ | ツール |
|---|---|
| アカウント | get_account_info |
| Droplet | list_droplets, get_droplet, create_droplet, delete_droplet |
| データベース | list_database_clusters, get_database_cluster |
| ドメイン | list_domains, create_domain, delete_domain |
| インフラストラクチャ | list_regions, list_sizes |
プロンプトの例
設定が完了したら、アシスタントに次のように尋ねてみてください。
"List all my Droplets"
"Create a new 1GB Droplet in NYC1 running Ubuntu 24.04"
"Show me all available regions"
"List my database clusters"
"Delete droplet 42"
"What Droplet sizes are available and how much do they cost?"
開発
# Clone the repo
git clone https://github.com/truecallerabreham/mcp-server-digitalocean.git
cd mcp-server-digitalocean
# Install dependencies
uv sync
# Run tests
uv run pytest
# Run linter
uv run ruff check src/ tests/
# Type check
uv run pyright
トラブルシューティング
クライアントにサーバーが表示されませんか?
- JSON 設定が保存され、有効であることを確認してください(末尾にカンマがないこと)
- MCP クライアント(Claude、Cursor、Windsurf)を再起動してください
uvxが PATH に含まれていることを確認してください
トークンが機能しませんか?
- トークンに適切なスコープが設定されていることを確認してください
- DigitalOcean API Tokens で新しいトークンを生成してみてください
まだ問題が解決しませんか?
サーバーを直接テストしてください:
DIGITALOCEAN_TOKEN="your-token" uvx mcp-server-digitalocean
貢献
貢献を歓迎します!バグ報告、新機能、ドキュメントの改善をお待ちしています。
- このリポジトリをフォークします
- ブランチを作成します(
git checkout -b feature/my-feature) - 変更を加えます
- テストを実行します(
uv run pytest) - PR を作成します
ライセンス
このプロジェクトは MIT License のもとでライセンスされています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。