PluginBench
MCP Server
Active
MIT

io.github.alexpota/cloudscope MCP Server

io.github.alexpota/cloudscope

What is the io.github.alexpota/cloudscope MCP server?

Azure + GCP cost management: spending, forecasts, anomalies, budgets, idle resources, and tags.

How to install io.github.alexpota/cloudscope

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • AZURE_SUBSCRIPTION_ID

    Azure subscription ID to query for cost data. Optional; auto-detected from az login session if not set.

  • AZURE_TENANT_ID

    Azure tenant ID for service principal authentication. Optional; falls back to DefaultAzureCredential (e.g. az login) if unset.

  • AZURE_CLIENT_ID

    Service principal client ID. Optional; required only when using ClientSecretCredential.

  • AZURE_CLIENT_SECRET
    secret

    Service principal client secret. Optional; required only when using ClientSecretCredential.

  • GOOGLE_CLOUD_PROJECT

    GCP project ID. Recommended to set explicitly in the MCP client env block — may not be inherited from gcloud shell configuration.

  • GCP_BILLING_TABLE

    Fully-qualified BigQuery billing export table (project.dataset.table_name). Required for GCP cost queries.

  • GCP_PROJECT_ID

    Override GCP project ID if the billing dataset lives in a different project than GOOGLE_CLOUD_PROJECT.

  • GCP_BILLING_ACCOUNT_ID

    GCP billing account ID (format: XXXXXX-XXXXXX-XXXXXX). Optional; needed only for budget monitoring.

  • GOOGLE_APPLICATION_CREDENTIALS
    secret

    Path to GCP service account JSON key file. Optional; falls back to Application Default Credentials (gcloud auth).

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "cloudscope": {
      "command": "npx",
      "args": [
        "-y",
        "cloudscope-mcp"
      ],
      "env": {
        "AZURE_SUBSCRIPTION_ID": "<YOUR_AZURE_SUBSCRIPTION_ID>",
        "AZURE_TENANT_ID": "<YOUR_AZURE_TENANT_ID>",
        "AZURE_CLIENT_ID": "<YOUR_AZURE_CLIENT_ID>",
        "AZURE_CLIENT_SECRET": "<YOUR_AZURE_CLIENT_SECRET>",
        "GOOGLE_CLOUD_PROJECT": "<YOUR_GOOGLE_CLOUD_PROJECT>",
        "GCP_BILLING_TABLE": "<YOUR_GCP_BILLING_TABLE>",
        "GCP_PROJECT_ID": "<YOUR_GCP_PROJECT_ID>",
        "GCP_BILLING_ACCOUNT_ID": "<YOUR_GCP_BILLING_ACCOUNT_ID>",
        "GOOGLE_APPLICATION_CREDENTIALS": "<YOUR_GOOGLE_APPLICATION_CREDENTIALS>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "cloudscope": {
      "command": "npx",
      "args": [
        "-y",
        "cloudscope-mcp"
      ],
      "env": {
        "AZURE_SUBSCRIPTION_ID": "<YOUR_AZURE_SUBSCRIPTION_ID>",
        "AZURE_TENANT_ID": "<YOUR_AZURE_TENANT_ID>",
        "AZURE_CLIENT_ID": "<YOUR_AZURE_CLIENT_ID>",
        "AZURE_CLIENT_SECRET": "<YOUR_AZURE_CLIENT_SECRET>",
        "GOOGLE_CLOUD_PROJECT": "<YOUR_GOOGLE_CLOUD_PROJECT>",
        "GCP_BILLING_TABLE": "<YOUR_GCP_BILLING_TABLE>",
        "GCP_PROJECT_ID": "<YOUR_GCP_PROJECT_ID>",
        "GCP_BILLING_ACCOUNT_ID": "<YOUR_GCP_BILLING_ACCOUNT_ID>",
        "GOOGLE_APPLICATION_CREDENTIALS": "<YOUR_GOOGLE_APPLICATION_CREDENTIALS>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "cloudscope": {
      "command": "npx",
      "args": [
        "-y",
        "cloudscope-mcp"
      ],
      "env": {
        "AZURE_SUBSCRIPTION_ID": "<YOUR_AZURE_SUBSCRIPTION_ID>",
        "AZURE_TENANT_ID": "<YOUR_AZURE_TENANT_ID>",
        "AZURE_CLIENT_ID": "<YOUR_AZURE_CLIENT_ID>",
        "AZURE_CLIENT_SECRET": "<YOUR_AZURE_CLIENT_SECRET>",
        "GOOGLE_CLOUD_PROJECT": "<YOUR_GOOGLE_CLOUD_PROJECT>",
        "GCP_BILLING_TABLE": "<YOUR_GCP_BILLING_TABLE>",
        "GCP_PROJECT_ID": "<YOUR_GCP_PROJECT_ID>",
        "GCP_BILLING_ACCOUNT_ID": "<YOUR_GCP_BILLING_ACCOUNT_ID>",
        "GOOGLE_APPLICATION_CREDENTIALS": "<YOUR_GOOGLE_APPLICATION_CREDENTIALS>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "cloudscope": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "cloudscope-mcp"
      ],
      "env": {
        "AZURE_SUBSCRIPTION_ID": "<YOUR_AZURE_SUBSCRIPTION_ID>",
        "AZURE_TENANT_ID": "<YOUR_AZURE_TENANT_ID>",
        "AZURE_CLIENT_ID": "<YOUR_AZURE_CLIENT_ID>",
        "AZURE_CLIENT_SECRET": "<YOUR_AZURE_CLIENT_SECRET>",
        "GOOGLE_CLOUD_PROJECT": "<YOUR_GOOGLE_CLOUD_PROJECT>",
        "GCP_BILLING_TABLE": "<YOUR_GCP_BILLING_TABLE>",
        "GCP_PROJECT_ID": "<YOUR_GCP_PROJECT_ID>",
        "GCP_BILLING_ACCOUNT_ID": "<YOUR_GCP_BILLING_ACCOUNT_ID>",
        "GOOGLE_APPLICATION_CREDENTIALS": "<YOUR_GOOGLE_APPLICATION_CREDENTIALS>"
      }
    }
  }
}
Claude Code
claude mcp add cloudscope --env AZURE_SUBSCRIPTION_ID=<YOUR_AZURE_SUBSCRIPTION_ID> --env AZURE_TENANT_ID=<YOUR_AZURE_TENANT_ID> --env AZURE_CLIENT_ID=<YOUR_AZURE_CLIENT_ID> --env AZURE_CLIENT_SECRET=<YOUR_AZURE_CLIENT_SECRET> --env GOOGLE_CLOUD_PROJECT=<YOUR_GOOGLE_CLOUD_PROJECT> --env GCP_BILLING_TABLE=<YOUR_GCP_BILLING_TABLE> --env GCP_PROJECT_ID=<YOUR_GCP_PROJECT_ID> --env GCP_BILLING_ACCOUNT_ID=<YOUR_GCP_BILLING_ACCOUNT_ID> --env GOOGLE_APPLICATION_CREDENTIALS=<YOUR_GOOGLE_APPLICATION_CREDENTIALS> -- npx -y cloudscope-mcp

Related MCP servers

Give your AI agent stealth web scraping with Cloudflare bypass and CSS selection, powered by Scrapling.

67k
Python
BSD-3-Clause
View repository →

Give your AI coding agent full control of a live Chrome browser for automation, debugging, and performance analysis.

45k
TypeScript
Apache-2.0
View repository →

Let AI agents manage your Puter files, websites, and serverless workers over MCP.

43k
TypeScript
AGPL-3.0
View repository →

Browser automation for AI agents via MCP, powering ByteDance's Agent TARS hybrid GUI/DOM browser control.

37k
TypeScript
Apache-2.0
View repository →

Run arbitrary shell commands from an MCP-connected AI agent.

37k
TypeScript
Apache-2.0
View repository →

Filesystem access MCP server from ByteDance's UI-TARS/Agent TARS ecosystem.

37k
TypeScript
Apache-2.0
View repository →