🚀 アリババクラウドオペレーションMCPサーバー
このサーバーは、Amazon Q CLI用のアリババクラウドオペレーションMCPサーバーです。ECS、VPC、RDS、OSS、CloudMonitor、OOSなどのサービスをサポートしています。
English | 中文
🚀 クイックスタート
システム要件
- Python 3.10+ (uvによって自動管理されます)
- uv - Pythonパッケージとプロジェクトマネージャー
- アリババクラウドアクセス資格情報
手順
1. uvのインストール
curl -LsSf https://astral.sh/uv/install.sh | sh
pip install uv
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
2. プロジェクトのクローン
git clone https://github.com/your-username/alicloud-ops-mcp.git
cd alicloud-ops-mcp
3. 一括インストール
./install.sh
uv sync
cp .env.example .env
4. 環境変数の設定
.envファイルを編集します:
ALIBABA_CLOUD_ACCESS_KEY_ID="your_access_key_id"
ALIBABA_CLOUD_ACCESS_KEY_SECRET="your_access_key_secret"
ALIBABA_CLOUD_REGION="cn-beijing"
5. インストールの検証
uv run python verify_setup.py
uv run python complete_fastmcp_server.py
"Server is ready to accept connections." と表示されれば、インストールは成功です。
✨ 主な機能
Amazon Q CLIの設定
~/.aws/amazonq/mcp.jsonに以下の設定を追加します:
{
"mcpServers": {
"alibaba-cloud-ops-mcp-server": {
"timeout": 30000,
"command": "uv",
"args": [
"--directory",
"/絶対パス/to/alicloud-ops-mcp",
"run",
"python",
"complete_fastmcp_server.py"
],
"env": {
"PYTHONUNBUFFERED": "1"
},
"disabled": false,
"autoApprove": []
}
}
}
⚠️ 重要提示
/絶対パス/to/alicloud-ops-mcp をプロジェクトの実際の絶対パスに置き換えてください。
設定例
プロジェクトが /home/user/alicloud-ops-mcp にあると仮定します:
{
"mcpServers": {
"alibaba-cloud-ops-mcp-server": {
"timeout": 30000,
"command": "uv",
"args": [
"--directory",
"/home/user/alicloud-ops-mcp",
"run",
"python",
"complete_fastmcp_server.py"
],
"env": {
"PYTHONUNBUFFERED": "1"
},
"disabled": false,
"autoApprove": []
}
}
}
サポートされるサービス
| サービス |
機能 |
状態 |
| ECS |
クラウドサーバー管理、インスタンス操作、イメージ管理 |
✅ |
| VPC |
仮想プライベートクラウド、ネットワーク設定、セキュリティグループ |
✅ |
| RDS |
リレーショナルデータベース管理、バックアップと復元 |
✅ |
| OSS |
オブジェクトストレージ、ファイルのアップロードとダウンロード |
✅ |
| CloudMonitor |
クラウドモニタリング、アラート管理、指標クエリ |
✅ |
| OOS |
運用オーケストレーション、自動化タスク |
✅ |
📚 ドキュメント
開発に関する説明
プロジェクト構造
alicloud-ops-mcp/
├── pyproject.toml # プロジェクト設定と依存関係
├── requirements.txt # 依存関係リスト(互換性)
├── complete_fastmcp_server.py # メインサーバーファイル
├── alibaba_cloud_ops_mcp_server/
│ ├── __init__.py
│ ├── __main__.py
│ ├── server.py # サーバーの核心ロジック
│ ├── config.py # 設定管理
│ └── tools/ # 各サービスのツール
│ ├── __init__.py
│ ├── api_tools.py # 汎用APIツール
│ ├── cms_tools.py # CloudMonitorツール
│ ├── common_api_tools.py # 共通APIツール
│ ├── oos_tools.py # OOSツール
│ └── oss_tools.py # OSSツール
├── .env.example # 環境変数のテンプレート
├── .env # 環境変数(作成が必要)
├── install.sh # インストールスクリプト
├── verify_setup.py # 検証スクリプト
├── README.md # 日本語ドキュメント
├── README_EN.md # 英語ドキュメント
└── LICENSE
uvを使用した開発
uv sync --dev
uv run pytest
uv run python complete_fastmcp_server.py
uv add package-name
uv add --dev package-name
uv sync --upgrade
uv tree
Pythonバージョン管理
プロジェクトは pyproject.toml でPythonバージョンの要件を指定しています:
requires-python = ">=3.10"
uvは自動的に以下のことを行います:
- 適切なPythonバージョンを検出してインストールする
- 隔離された仮想環境を作成する
- すべての依存関係を管理する
- クロスプラットフォームの互換性を確保する
トラブルシューティング
一般的な問題と解決策
1. Permission denied (os error 13)
原因: 設定エラーまたは権限問題
解決策:
uv run python complete_fastmcp_server.py
pwd
chmod +x complete_fastmcp_server.py
2. Pythonバージョンの互換性問題
エラーメッセージ: Could not find a version that satisfies the requirement fastmcp>=2.8.0
解決策:
uv sync
uv clean
uv sync
3. 依存関係のインストール失敗
解決策:
uv clean
uv sync
uv sync --verbose
4. 環境変数が読み込まれない
解決策:
ls -la .env
cat .env
uv run python -c "
import os
from dotenv import load_dotenv
load_dotenv()
print('Access Key ID:', os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID', 'Not found'))
print('Region:', os.getenv('ALIBABA_CLOUD_REGION', 'Not found'))
"
5. MCPサーバーが起動しない
解決策:
cat ~/.aws/amazonq/mcp.json
ls -la /絶対パス/to/alicloud-ops-mcp/complete_fastmcp_server.py
cd /絶対パス/to/alicloud-ops-mcp
uv run python complete_fastmcp_server.py
デバッグモード
詳細なログを有効にする:
export FASTMCP_LOG_LEVEL=DEBUG
uv run python complete_fastmcp_server.py
echo "FASTMCP_LOG_LEVEL=DEBUG" >> .env
設定の検証
完全な環境チェックを実行する:
uv run python verify_setup.py
uv run python -c "
import sys
print(f'Python version: {sys.version}')
try:
import fastmcp
print(f'FastMCP version: {fastmcp.__version__}')
except ImportError as e:
print(f'FastMCP import error: {e}')
try:
from alibaba_cloud_ops_mcp_server import server
print('Server module loaded successfully')
except ImportError as e:
print(f'Server module error: {e}')
"
パフォーマンス最適化
起動の最適化
uv run python -m compileall .
uv run python -O complete_fastmcp_server.py
メモリの最適化
.envファイルに以下を追加します:
# メモリ使用量を制限する
PYTHONHASHSEED=0
PYTHONDONTWRITEBYTECODE=1
コントリビューションガイド
- プロジェクトをForkする
- 機能ブランチを作成する (
git checkout -b feature/amazing-feature)
- 開発用の依存関係をインストールする (
uv sync --dev)
- テストを実行する (
uv run pytest)
- 変更をコミットする (
git commit -m 'Add some amazing feature')
- ブランチにプッシュする (
git push origin feature/amazing-feature)
- Pull Requestを作成する
開発環境の設定
git clone https://github.com/your-username/alicloud-ops-mcp.git
cd alicloud-ops-mcp
uv sync --dev
uv run pre-commit install
uv run pytest
uv run black .
uv run isort .
uv run mypy .
📄 ライセンス
このプロジェクトはMITライセンスの下で公開されています。詳細は LICENSE ファイルを参照してください。
サポート
問題が発生した場合は、以下の手順を試してください:
- トラブルシューティング セクションを参照する
uv run python verify_setup.py を実行して環境をチェックする
- GitHub Issues を参照する
- 新しいIssueを作成して問題を報告する
ヘルプの取得
更新履歴
v0.9.2 (2024-12-XX)
- ✨ uvを使用したパッケージ管理をサポート
- 🚀 インストールと設定の手順を簡素化
- 🐛 エラー処理とデバッグ情報を改善
- 📚 ドキュメントとトラブルシューティングガイドを更新
- 🔧 環境検証スクリプトを追加
- 📦 一括インストールスクリプトを追加
v0.9.1
- 🔧 依存関係のバージョン互換性問題を修正
- 📝 ドキュメント構造を改善
- 🐛 環境変数の読み込み問題を修正
v0.9.0
- 🎉 初期バージョンをリリース
- ✅ ECS、VPC、RDS、OSS、CloudMonitor、OOSサービスをサポート
- 🔐 アリババクラウドアクセス資格情報の設定をサポート
- 📖 完全なドキュメントとサンプルを提供
謝辞
すべての貢献者とコミュニティメンバーの皆様に感謝いたします!
⭐ このプロジェクトが役に立った場合は、Starをしていただけると幸いです!