A favicon of GCP MCP Server

GCP MCP Server

Enable AI assistants to interact with and manage Google Cloud Platform resources through a standardized interface. Query, create, and configure GCP services effortlessly while receiving AI-guided assistance for best practices. Streamline your cloud management with this comprehensive solution.

Installation

Installing for Claude Desktop

Option 1: One-Command Installation

npx mcpbar@latest install enesbol/gcp-mcp -c claude

This command will automatically install and configure the GCP MCP Server MCP server for your selected client.

Option 2: Manual Configuration

Run the command below to open your configuration file:

npx mcpbar@latest edit -c claude

After opening your configuration file, copy and paste this configuration:

View JSON configuration
{
  "mcpServers": {
    "GCP MCP Server": {
      "command": "uvx",
      "args": [
        "gcp-mcp-server"
      ],
      "env": {
        "MCP_SERVER_PORT": "${input:mcp_server_port}"
      }
    }
  }
}

This is not a Ready MCP Server

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:

# Development mode with auto-reload
python main.py --dev

# Run with specific configuration
python main.py --config config.yaml

Docker Deployment

Build and run with Docker:

# Build the image
docker build -t gcp-mcp-server .

# Run the container
docker run -p 8080:8080 -v ~/.config/gcloud:/root/.config/gcloud gcp-mcp-server

Configuration

The server can be configured through environment variables or a configuration file:

Environment VariableDescriptionDefault
GCP_PROJECT_IDDefault GCP project IDNone (required)
GCP_DEFAULT_LOCATIONDefault region/zoneus-central1
MCP_SERVER_PORTServer port8080
LOG_LEVELLogging levelINFO

See .env.example for a complete list of configuration options.

Development

Adding a New GCP Service

  1. Create a new file in the services/ directory
  2. Implement the service following the pattern in existing services
  3. Register the service in main.py

See the services README for detailed implementation guidance.

Security Considerations

  • The server uses Application Default Credentials for authentication
  • Authorization is determined by the permissions of the authenticated identity
  • No credentials are hardcoded in the service implementations
  • Consider running with a service account with appropriate permissions

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Google Cloud Platform team for their comprehensive APIs
  • Model Context Protocol for providing a standardized way for AI to interact with services

Using the Server

To use this server:

  1. Place your GCP service account key file as service-account.json in the same directory
  2. Install the MCP package: pip install "mcp[cli]"
  3. Install the required GCP package: pip install google-cloud-run
  4. Run: mcp dev gcp_cloudrun_server.py

Or install it in Claude Desktop:

mcp install gcp_cloudrun_server.py --name "GCP Cloud Run Manager"

MCP Server Configuration

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"
    }
  }
}

Configuration Details

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)

Usage

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

Share:
Details:
  • Stars


    3
  • Forks


    0
  • Last commit


    4 months ago
  • Repository age


    4 months
  • License


    MIT
View Repository

Auto-fetched from GitHub .

MCP servers similar to GCP MCP Server:

 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit