CloudPulse MCP Server
CloudPulse MCPサーバー
AIエージェント向けのクロスクラウドインフラ可視化ツール。AWS、Vercel、GCP、Cloudflareにまたがる問題を、エディタから離れることなく診断します。
CloudPulseを選ぶ理由
課題 | CloudPulseによる解決策 |
Vercelでフロントエンドエラー発生 → AWSコンソールを開く必要がある |
|
AIがセキュリティグループでポート5432がブロックされているか確認できない |
|
Lambdaの同時実行制限に気づかず到達してしまう |
|
デバッグ前にトポロジーが不明 |
|
クイックスタート
1. npxでインストール/実行
npx cloudpulse-mcpサーバーは、マシン上に既に存在する認証情報(AWS CLI、環境変数など)を自動的に検出します。
2. AIクライアントの設定
Claude Desktop – ~/Library/Application Support/Claude/claude_desktop_config.json に追加:
{
"mcpServers": {
"cloudpulse": {
"command": "npx",
"args": ["-y", "cloudpulse-mcp"],
"env": {
"VERCEL_TOKEN": "<your-vercel-token>",
"AWS_PROFILE": "default",
"AWS_REGION": "us-east-1"
}
}
}
}Cursor – プロジェクト内の .cursor/mcp.json に追加:
{
"mcpServers": {
"cloudpulse": {
"command": "npx",
"args": ["-y", "cloudpulse-mcp"],
"env": {
"VERCEL_TOKEN": "<your-vercel-token>",
"AWS_REGION": "us-east-1"
}
}
}
}VS Code + GitHub Copilot (エージェントモード) – VS Code 1.99以降とGitHub Copilot拡張機能が必要です。
まず、プロジェクトをビルドします:
npm run build次に、このリポジトリ内に .vscode/mcp.json を作成します:
{
"servers": {
"cloudpulse": {
"type": "stdio",
"command": "node",
"args": ["${workspaceFolder}/dist/index.js"],
"env": {
"VERCEL_TOKEN": "${env:VERCEL_TOKEN}",
"AWS_REGION": "${env:AWS_REGION}",
"AWS_PROFILE": "${env:AWS_PROFILE}"
}
}
}
}${env:VAR} はシェル環境から読み込まれるため、ソース管理にシークレットが含まれることはありません。
使用方法: Copilot Chat を開き、エージェントモードに切り替え、Select Tools をクリックしてCloudPulseツールを有効にし、自然言語で質問してください:
Why can't my Vercel project reach AWS RDS instance "my-db"?認証情報とセキュリティ
CloudPulseは読み取り専用・非保存ポリシーに従います:
認証情報 | 提供方法 |
AWS |
|
Vercel |
|
Vercel Team |
|
GCP |
|
Cloudflare |
|
認証情報はログに記録されたり保存されたりすることはありません。 すべての値は呼び出し時に環境変数から読み取られます。
利用可能なツール
list_cloud_topology
設定されたすべてのプラットフォームをスキャンし、統合されたサービスマップを返します。
Input (all optional):
platforms – ["aws", "vercel"] filter platforms
aws_region – "us-east-1"get_correlated_logs
VercelとAWS CloudWatchのログを取得し、1つのタイムラインにマージします。
Input:
start_time * – ISO-8601 or epoch ms e.g. "2024-06-01T10:00:00Z"
end_time – defaults to now
trace_id – filter by trace/request ID across all sources
aws_log_group_prefix – default "/aws/lambda"
vercel_project – project name or ID
aws_regiondiagnose_service_link
サービスAがリソースBに到達できない理由を調査します。
Input:
source_service * – "vercel" | "lambda" | "ec2" | ...
target_resource * – "<type>:<id>" e.g. "aws-rds:my-db", "external-api:https://..."
port – auto-detected (5432 for RDS, 443 for APIs, ...)
vercel_project
aws_region実行されるチェック:
Vercel環境変数に
DATABASE_URL/DB_URLが含まれているかAWSセキュリティグループが必要なポートでのインバウンドTCPを許可しているか
外部APIのHEAD到達可能性テスト
check_resource_limits
クォータを照会し、制限に近づいているリソースにフラグを立てます。
Input (all optional):
platforms – filter platforms
warn_threshold – usage % to warn at (default 80)
aws_regionロードマップ
フェーズ | ステータス | スコープ |
1 – MVP | ✅ 完了 | Vercel + AWS (Lambda, RDS, CloudWatch, Security Groups, S3) |
2 – 拡張 | ✅ 完了 | GCP Cloud Run + Cloud SQL + Logging; Cloudflare Workers + Pages; S3 CORS |
3 – インテリジェンス | 🔜 | CORS、504タイムアウト、コールドスタートループ向けの事前構築済み診断プレイブック |
開発
git clone https://github.com/Galadriel-Tech-Solutions/cloudpulse-mcp
cd cloudpulse-mcp
npm install
npm run dev # run from source with tsx
npm run build # compile to dist/プロジェクト構造
src/
├── index.ts # MCP server + tool registration
├── types.ts # shared domain types
├── utils.ts # concurrency, formatting helpers
├── providers/
│ ├── aws/
│ │ ├── index.ts # client factory + isAWSConfigured()
│ │ ├── cloudwatch.ts # CloudWatch Logs
│ │ ├── lambda.ts # Lambda function listing
│ │ ├── rds.ts # RDS/Aurora instances & clusters
│ │ ├── ec2.ts # Security Group inspection
│ │ ├── s3.ts # S3 buckets + CORS checks
│ │ └── quotas.ts # Service Quotas API
│ ├── gcp/
│ │ ├── index.ts # isGCPConfigured() + resolveGCPProject()
│ │ ├── cloud-run.ts # Cloud Run services
│ │ ├── cloud-sql.ts # Cloud SQL instances (sqladmin v1beta4)
│ │ └── logging.ts # Cloud Logging
│ ├── cloudflare/
│ │ └── index.ts # Pages, Workers, Worker tail logs (WebSocket)
│ └── vercel/
│ └── index.ts # Vercel REST API v9
└── tools/
├── list-cloud-topology.ts
├── get-correlated-logs.ts
├── diagnose-service-link.ts
└── check-resource-limits.ts新しいクラウドプラットフォームの追加
src/providers/<platform>/index.tsを作成し、以下をエクスポートします:is<Platform>Configured(): booleanプロバイダー固有のデータ関数
src/tools/配下の関連ツールにその関数を組み込みますsrc/types.tsのCloudPlatformユニオン型にプラットフォーム名を追加します
ライセンス
MIT © CloudPulse Contributors
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Galadriel-Tech-Solutions/cloudpulse-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server