Skip to main content
Glama

CloudPulse MCPサーバー

AIエージェント向けのクロスクラウドインフラ可視化ツール。AWS、Vercel、GCP、Cloudflareにまたがる問題を、エディタから離れることなく診断します。

License: MIT Node.js ≥18


CloudPulseを選ぶ理由

課題

CloudPulseによる解決策

Vercelでフロントエンドエラー発生 → AWSコンソールを開く必要がある

get_correlated_logs が両方のタイムラインを自動的に統合

AIがセキュリティグループでポート5432がブロックされているか確認できない

diagnose_service_link がセキュリティグループのルールをライブで検査

Lambdaの同時実行制限に気づかず到達してしまう

check_resource_limits が使用率80%で警告

デバッグ前にトポロジーが不明

list_cloud_topology が稼働中の全サービスを数秒でマッピング


Related MCP server: Daemoon

クイックスタート

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

AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY、または AWS_PROFILE、あるいはEC2インスタンスロール

Vercel

VERCEL_TOKEN (vercel.com/account/tokens からのパーソナルアクセストークン)

Vercel Team

VERCEL_TEAM_ID (オプション)

GCP

GOOGLE_APPLICATION_CREDENTIALS

Cloudflare

CLOUDFLARE_API_TOKEN + CLOUDFLARE_ACCOUNT_ID

認証情報はログに記録されたり保存されたりすることはありません。 すべての値は呼び出し時に環境変数から読み取られます。


利用可能なツール

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_region

サービス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

新しいクラウドプラットフォームの追加

  1. src/providers/<platform>/index.ts を作成し、以下をエクスポートします:

    • is<Platform>Configured(): boolean

    • プロバイダー固有のデータ関数

  2. src/tools/ 配下の関連ツールにその関数を組み込みます

  3. src/types.ts の CloudPlatform ユニオン型にプラットフォーム名を追加します


ライセンス

MIT © CloudPulse Contributors

Available Tools

4 tools
check_resource_limitsA

Query quota limits and current usage across configured cloud platforms. Highlights resources approaching or exceeding their limits (default warning threshold: 80%). Use this to proactively catch Lambda concurrency limits, Vercel plan caps, and similar issues before they cause outages.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformsNoPlatforms to check. Omit to check all configured platforms.
warn_thresholdNoUsage percentage at which to emit a warning. Default: 80.
aws_regionNo

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively communicates that this is a read-only query operation (implied by 'Query') and adds useful context about the warning threshold behavior. However, it doesn't mention authentication requirements, rate limits, error conditions, or what format the results will be returned in, which are important for a tool interacting with multiple cloud platforms.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured in two sentences: the first states the core purpose, and the second provides usage guidance with concrete examples. Every element serves a clear purpose with zero wasted words, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 parameters, no annotations, and no output schema, the description provides adequate purpose and usage context but lacks important behavioral details. It doesn't explain what the output looks like, how errors are handled, or authentication requirements. Given the complexity of querying multiple cloud platforms, more complete guidance would be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 67% schema description coverage (2 of 3 parameters documented in schema), the description adds significant value by explaining the purpose of the 'warn_threshold' parameter and providing context about what platforms it works with. While it doesn't explicitly mention the 'platforms' or 'aws_region' parameters, it gives enough semantic context about the tool's scope to help understand parameter usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Query quota limits and current usage'), identifies the target resources ('across configured cloud platforms'), and distinguishes this tool from siblings by focusing on proactive monitoring rather than diagnosis or logging. It provides concrete examples of what it monitors ('Lambda concurrency limits, Vercel plan caps').

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use this tool ('to proactively catch...issues before they cause outages'), providing clear context for its purpose. However, it doesn't mention when not to use it or explicitly differentiate it from sibling tools like 'diagnose_service_link' or 'list_cloud_topology', which might also involve cloud resources.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_correlated_logsA

Fetch logs from multiple cloud platforms (AWS CloudWatch + Vercel) for a given time window and optional trace ID, then merge them into a single chronological timeline. Use this to correlate errors across frontend and backend services.

ParametersJSON Schema
NameRequiredDescriptionDefault
trace_idNoTrace / request ID to filter logs across platforms.
start_timeYesStart of time window (ISO-8601 string or Unix epoch in ms). Example: '2024-06-01T10:00:00Z'
end_timeNoEnd of time window (ISO-8601 string or Unix epoch in ms). Defaults to now.
aws_log_group_prefixNoCloudWatch log group prefix to search. Default: /aws/lambda/aws/lambda
aws_regionNoAWS region. Defaults to AWS_REGION env var.
vercel_projectNoVercel project name or ID to pull deployment logs from.
gcp_serviceNoGCP Cloud Run service name to filter logs. Omit to pull all project logs.
cloudflare_workerNoCloudflare Worker script name to tail logs from.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the core behavior (fetching from multiple platforms, merging chronologically) but lacks details about authentication requirements, rate limits, error handling, or what the merged output looks like. For a complex multi-platform tool with zero annotation coverage, this leaves significant gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is perfectly front-loaded with the core purpose in the first sentence and usage guidance in the second. Every sentence earns its place with zero wasted words, making it highly efficient and scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex 8-parameter tool with no annotations and no output schema, the description provides adequate purpose and usage context but lacks critical behavioral details about authentication, error handling, and output format. The high parameter count and multi-platform nature suggest more completeness would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description mentions 'time window and optional trace ID' which aligns with parameters but doesn't add meaningful semantic context beyond what the schema provides. The baseline of 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('fetch logs from multiple cloud platforms', 'merge them into a single chronological timeline') and the resource ('logs from AWS CloudWatch + Vercel'). It distinguishes itself from siblings by focusing on cross-platform log correlation rather than resource checking, diagnosis, or topology listing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use this tool: 'to correlate errors across frontend and backend services.' However, it doesn't explicitly state when NOT to use it or name specific alternatives among the sibling tools, which would be needed for a score of 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_cloud_topologyA

Scan all configured cloud platforms (AWS, Vercel, GCP, Cloudflare) and return a unified topology of active services including their endpoints and regions. Run this first to understand the infrastructure landscape.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformsNoPlatforms to include. Omit to auto-detect all configured platforms.
aws_regionNoAWS region to scan. Defaults to AWS_REGION env var or us-east-1.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions scanning 'all configured cloud platforms' and returning a 'unified topology,' which gives some context about scope and output format. However, it doesn't disclose important behavioral aspects like authentication requirements, rate limits, execution time, or what happens if platforms aren't properly configured.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is perfectly concise with two sentences that each serve distinct purposes: the first explains what the tool does, and the second provides usage guidance. There's zero wasted language, and the most important information (the scanning action) is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (scanning multiple cloud platforms) and lack of both annotations and output schema, the description is somewhat incomplete. While it explains the purpose and usage timing well, it doesn't address authentication needs, error handling, or the structure of the returned topology. For a discovery tool with no output schema, more detail about the return format would be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. The baseline score of 3 is appropriate when the schema does the heavy lifting for parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Scan all configured cloud platforms'), the resource ('active services'), and the output ('unified topology of active services including their endpoints and regions'). It distinguishes this tool from siblings by emphasizing its discovery/scanning purpose rather than diagnostics or log analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use this tool ('Run this first to understand the infrastructure landscape'), providing clear guidance about its role as an initial discovery step. This differentiates it from sibling tools like check_resource_limits or diagnose_service_link that would be used after understanding the topology.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv0.1.2
    • First observedcheck_resource_limits
    • First observeddiagnose_service_link
    • First observedget_correlated_logs
    • First observedlist_cloud_topology

TDQS

A4.1/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: check_resource_limits focuses on quota monitoring, diagnose_service_link on connectivity diagnostics, get_correlated_logs on log aggregation, and list_cloud_topology on infrastructure discovery. The descriptions reinforce unique scopes, making misselection unlikely.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (e.g., check_resource_limits, diagnose_service_link), using snake_case uniformly. This predictability aids agent understanding and tool selection without confusion.

Tool Count4/5

Four tools is a reasonable count for a cloud monitoring server, covering key areas like limits, diagnostics, logs, and topology. It feels slightly lean but well-scoped, as each tool addresses a distinct monitoring need without bloat.

Completeness4/5

The toolset covers core cloud monitoring workflows: proactive limits checking, connectivity diagnosis, log correlation, and topology mapping. Minor gaps exist, such as lack of alerting or remediation tools, but agents can work around these with the provided diagnostic and data-fetching capabilities.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to discover, evaluate, and provision cloud infrastructure across AWS, GCP, and Azure with cross-cloud normalization, cost comparisons, and deployable execution kits.
    5
    3 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Gives AI coding agents (Claude Code, Cursor, etc.) unified, secure access to dev infrastructure (Vercel, GitHub, Supabase, Cloudflare, GCP) via a single MCP token.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides real-time monitoring of AI agents, context, usage limits, workflows, files, Git, tests, builds, errors, secrets, and model-economy advice for tools like Claude Code, Codex, and Cursor, with 30 MCP tools for comprehensive observability.
    1
    -