GCP

by enesbol

4 stars
649 downloads
Not rated
GitHub

About

Enables developers to manage and interact with Google Cloud Platform resources like Compute Engine, Cloud Run, BigQuery, and Cloud Storage through a unified, tool-driven approach.

Details

Author
enesbol
Repository
enesbol/gcp-mcp
GitHub stars
4
Downloads
649
License
MIT License
Categories
Cloud Service, Other, Infrastructure, API, Developer Tools, Design, File Management, AI, Search, Frontend

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name GCP
    Command (node, npx, python, etc.) uv
    Arguments
    • Argument 1 run
    • Argument 2 --with
    • Argument 3 google-cloud-artifact-registry>=1.10.0
    • Argument 4 --with
    • Argument 5 google-cloud-bigquery>=3.27.0
    • Argument 6 --with
    • Argument 7 google-cloud-build>=3.0.0
    • Argument 8 --with
    • Argument 9 google-cloud-compute>=1.0.0
    • Argument 10 --with
    • Argument 11 google-cloud-logging>=3.5.0
    • Argument 12 --with
    • Argument 13 google-cloud-monitoring>=2.0.0
    • Argument 14 --with
    • Argument 15 google-cloud-run>=0.9.0
    • Argument 16 --with
    • Argument 17 google-cloud-storage>=2.10.0
    • Argument 18 --with
    • Argument 19 mcp[cli]
    • Argument 20 --with
    • Argument 21 python-dotenv>=1.0.0
    • Argument 22 mcp
    • Argument 23 run
    • Argument 24 /path/to/gcp-mcp/src/gcp-mcp-server/main.py
    Environment
    • GCP_LOCATION us-east1
    • GCP_PROJECT_ID gcp-mcp-cloud-project
    • GOOGLE_APPLICATION_CREDENTIALS /path/to/service-account.json

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Add this configuration to your MCP configuration file to enable GCP Cloud Tools functionality.


Start the MCP server:

bash
python main.py

For development and testing:

bash

python main.py --config config.yaml


Build and run with Docker:

bash

The following configuration can be added to your configuration file for GCP Cloud Tools:

"mcpServers": {
  "GCP Cloud Tools": {
    "command": "uv",
    "args": [
      "run",
      "--with",
      "google-cloud-artifact-registry>=1.10.0",
      "--with",
      "google-cloud-bigquery>=3.27.0",
      "--with",
      "google-cloud-build>=3.0.0",
      "--with",
      "google-cloud-compute>=1.0.0",
      "--with",
      "google-cloud-logging>=3.5.0",
      "--with",
      "google-cloud-monitoring>=2.0.0",
      "--with",
      "google-cloud-run>=0.9.0",
      "--with",
      "google-cloud-storage>=2.10.0",
      "--with",
      "mcp[cli]",
      "--with",
      "python-dotenv>=1.0.0",
      "mcp",
      "run",
      "C:\\Users\\enes_\\Desktop\\mcp-repo-final\\gcp-mcp\\src\\gcp-mcp-server\\main.py"
    ],
    "env": {
      "GOOGLE_APPLICATION_CREDENTIALS": "C:/Users/enes_/Desktop/mcp-repo-final/gcp-mcp/service-account.json",
      "GCP_PROJECT_ID": "gcp-mcp-cloud-project",
      "GCP_LOCATION": "us-east1"
    }
  }
}

This configuration sets up an MCP server for Google Cloud Platform tools with the following:

- Command: Uses uv package manager to run the server
- Dependencies: Includes various Google Cloud libraries (Artifact Registry, BigQuery, Cloud Build, etc.)
- Environment Variables:
- GOOGLE_APPLICATION_CREDENTIALS: Path to your GCP service account credentials
- GCP_PROJECT_ID: Your Google Cloud project ID
- GCP_LOCATION: GCP region (us-east1)

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "gcp": {
            "env": {
                "GCP_LOCATION": "us-east1",
                "GCP_PROJECT_ID": "gcp-mcp-cloud-project",
                "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/service-account.json"
            },
            "args": [
                "run",
                "--with",
                "google-cloud-artifact-registry>=1.10.0",
                "--with",
                "google-cloud-bigquery>=3.27.0",
                "--with",
                "google-cloud-build>=3.0.0",
                "--with",
                "google-cloud-compute>=1.0.0",
                "--with",
                "google-cloud-logging>=3.5.0",
                "--with",
                "google-cloud-monitoring>=2.0.0",
                "--with",
                "google-cloud-run>=0.9.0",
                "--with",
                "google-cloud-storage>=2.10.0",
                "--with",
                "mcp[cli]",
                "--with",
                "python-dotenv>=1.0.0",
                "mcp",
                "run",
                "/path/to/gcp-mcp/src/gcp-mcp-server/main.py"
            ],
            "command": "uv"
        }
    }
}

Linux

{
    "env": {
        "GCP_LOCATION": "us-east1",
        "GCP_PROJECT_ID": "gcp-mcp-cloud-project",
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/service-account.json"
    },
    "args": [
        "run",
        "--with",
        "google-cloud-artifact-registry>=1.10.0",
        "--with",
        "google-cloud-bigquery>=3.27.0",
        "--with",
        "google-cloud-build>=3.0.0",
        "--with",
        "google-cloud-compute>=1.0.0",
        "--with",
        "google-cloud-logging>=3.5.0",
        "--with",
        "google-cloud-monitoring>=2.0.0",
        "--with",
        "google-cloud-run>=0.9.0",
        "--with",
        "google-cloud-storage>=2.10.0",
        "--with",
        "mcp[cli]",
        "--with",
        "python-dotenv>=1.0.0",
        "mcp",
        "run",
        "/path/to/gcp-mcp/src/gcp-mcp-server/main.py"
    ],
    "command": "uv"
}

Macos

{
    "env": {
        "GCP_LOCATION": "us-east1",
        "GCP_PROJECT_ID": "gcp-mcp-cloud-project",
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/service-account.json"
    },
    "args": [
        "run",
        "--with",
        "google-cloud-artifact-registry>=1.10.0",
        "--with",
        "google-cloud-bigquery>=3.27.0",
        "--with",
        "google-cloud-build>=3.0.0",
        "--with",
        "google-cloud-compute>=1.0.0",
        "--with",
        "google-cloud-logging>=3.5.0",
        "--with",
        "google-cloud-monitoring>=2.0.0",
        "--with",
        "google-cloud-run>=0.9.0",
        "--with",
        "google-cloud-storage>=2.10.0",
        "--with",
        "mcp[cli]",
        "--with",
        "python-dotenv>=1.0.0",
        "mcp",
        "run",
        "/path/to/gcp-mcp/src/gcp-mcp-server/main.py"
    ],
    "command": "uv"
}

Windows

{
    "env": {
        "GCP_LOCATION": "us-east1",
        "GCP_PROJECT_ID": "gcp-mcp-cloud-project",
        "GOOGLE_APPLICATION_CREDENTIALS": "C:/Users/enes_/Desktop/mcp-repo-final/gcp-mcp/service-account.json"
    },
    "args": [
        "run",
        "--with",
        "google-cloud-artifact-registry>=1.10.0",
        "--with",
        "google-cloud-bigquery>=3.27.0",
        "--with",
        "google-cloud-build>=3.0.0",
        "--with",
        "google-cloud-compute>=1.0.0",
        "--with",
        "google-cloud-logging>=3.5.0",
        "--with",
        "google-cloud-monitoring>=2.0.0",
        "--with",
        "google-cloud-run>=0.9.0",
        "--with",
        "google-cloud-storage>=2.10.0",
        "--with",
        "mcp[cli]",
        "--with",
        "python-dotenv>=1.0.0",
        "mcp",
        "run",
        "C:\\Users\\enes_\\Desktop\\mcp-repo-final\\gcp-mcp\\src\\gcp-mcp-server\\main.py"
    ],
    "command": "uv"
}

GCP MCP Server

A comprehensive Model Context Protocol (MCP) server implementation for Google Cloud Platform (GCP) services, enabling AI assistants to interact with and manage GCP resources through a standardized interface.

Overview

GCP MCP Server provides AI assistants with capabilities to:

- Query GCP Resources: Get information about your cloud infrastructure
- Manage Cloud Resources: Create, configure, and manage GCP services
- Receive Assistance: Get AI-guided help with GCP configurations and best practices

The implementation follows the MCP specification to enable AI systems to interact with GCP services in a secure, controlled manner.

Supported GCP Services

This implementation includes support for the following GCP services:

- Artifact Registry: Container and package management
- BigQuery: Data warehousing and analytics
- Cloud Audit Logs: Logging and audit trail analysis
- Cloud Build: CI/CD pipeline management
- Cloud Compute Engine: Virtual machine instances
- Cloud Monitoring: Metrics, alerting, and dashboards
- Cloud Run: Serverless container deployments
- Cloud Storage: Object storage management

Architecture

The project is structured as follows:

gcp-mcp-server/
├── core/            # Core MCP server functionality auth context logging_handler security 
├── prompts/         # AI assistant prompts for GCP operations
├── services/        # GCP service implementations
│   ├── README.md    # Service implementation details
│   └── ...          # Individual service modules
├── main.py          # Main server entry point
└── ...

Key components:

- Service Modules: Each GCP service has its own module with resources, tools, and prompts
- Client Instances: Centralized client management for authentication and resource access
- Core Components: Base functionality for the MCP server implementation

Getting Started

Prerequisites

- Python 3.10+
- GCP project with enabled APIs for the services you want to use
- Authenticated GCP credentials (Application Default Credentials recommended)

Installation

1. Clone the repository:

   git clone https://github.com/yourusername/gcp-mcp-server.git
cd gcp-mcp-server

2. Set up a virtual environment:

   python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate

3. Install dependencies:

   pip install -r requirements.txt

4. Configure your GCP credentials:

   # Using gcloud
gcloud auth application-default login

# Or set GOOGLE_APPLICATION_CREDENTIALS
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account-key.json"

5. Set up environment variables:

   cp .env.example .env
# Edit .env with your configuration

Running the Server

Start the MCP server:

python main.py

For development and testing:

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.