Skip to main content
Glama

GCP MCP Server

by JayRajGoyal
README.md4.58 kB
# GCP MCP Server A Model Context Protocol (MCP) server for Google Cloud Platform (GCP) that enables AI assistants to interact with GCP services, particularly focused on log analysis and root cause investigation. ## Features - **Cloud Logging Integration**: Query and analyze GCP Cloud Logging data - **Real-time Log Streaming**: Stream logs for immediate analysis - **Error Pattern Detection**: Identify common error patterns and anomalies - **Multi-Project Support**: Work across multiple GCP projects - **Secure Authentication**: Uses GCP service account credentials - **Root Cause Analysis**: Tools to help with quick RC findings ## Supported GCP Services - **Cloud Logging**: Query, filter, and analyze logs - **Cloud Monitoring**: Retrieve metrics and alerts (planned) - **Error Reporting**: Access error statistics and details (planned) - **Cloud Trace**: Distributed tracing analysis (planned) ## Installation ### ⚡ Quick Install ```bash git clone https://github.com/JayRajGoyal/gcp-mcp.git cd gcp-mcp ./install.sh ``` ### Claude Code Integration (One Command!) The easiest way to add this MCP server to Claude Code: ```bash # If you have gcloud configured (recommended): claude mcp add gcp-logs -e GOOGLE_APPLICATION_CREDENTIALS=/Users/$USER/.config/gcloud/application_default_credentials.json -- python3.11 -m gcp_mcp.cli --project YOUR_PROJECT_ID ``` Or with a service account key file: ```bash claude mcp add gcp -- python3.11 -m gcp_mcp.cli --credentials /path/to/your/service-account-key.json ``` #### Manual Configuration (Alternative) Add this to your Claude Code configuration: ```json { "mcpServers": { "gcp": { "command": "python3.11", "args": ["-m", "gcp_mcp.cli", "--credentials", "/path/to/your/credentials.json"], "cwd": "/path/to/gcp-mcp" } } } ``` ### Prerequisites - Python 3.8 or higher - GCP project with appropriate APIs enabled - Service account with necessary permissions ### Manual Setup 1. Clone the repository: ```bash git clone https://github.com/JayRajGoyal/gcp-mcp.git cd gcp-mcp ``` 2. Install dependencies: ```bash pip install -r requirements.txt ``` 3. Run with your credentials: ```bash python -m gcp_mcp.cli --credentials /path/to/your/credentials.json ``` ## Usage ### Starting the Server ```bash python -m gcp_mcp.server ``` ### Available Tools #### Log Query Query GCP Cloud Logging with advanced filters: ``` query_logs(project_id, filter, limit, time_range) ``` #### Log Analysis Analyze logs for patterns and anomalies: ``` analyze_logs(project_id, service_name, time_range) ``` #### Error Investigation Find and analyze error patterns: ``` investigate_errors(project_id, service_name, time_range) ``` ## Configuration Create a `config.json` file: ```json { "default_project": "your-gcp-project-id", "log_retention_days": 30, "max_results": 1000, "excluded_log_names": [ "projects/your-project/logs/cloudaudit.googleapis.com%2Fdata_access" ] } ``` ## Authentication The server supports multiple authentication methods: 1. **Service Account Key File**: Set `GOOGLE_APPLICATION_CREDENTIALS` 2. **Application Default Credentials**: For GCE, Cloud Shell, etc. 3. **User Credentials**: Via `gcloud auth application-default login` ## Required GCP Permissions Your service account needs the following IAM roles: - `roles/logging.viewer` - Read access to Cloud Logging - `roles/monitoring.viewer` - Read access to Cloud Monitoring (optional) - `roles/errorreporting.viewer` - Read access to Error Reporting (optional) ## Development ### Running Tests ```bash pytest tests/ ``` ### Code Formatting ```bash black gcp_mcp/ isort gcp_mcp/ ``` ### Type Checking ```bash mypy gcp_mcp/ ``` ## Contributing 1. Fork the repository 2. Create a feature branch 3. Make your changes 4. Add tests 5. Run the test suite 6. Submit a pull request ## License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. ## Security - Never commit service account keys to the repository - Use environment variables for sensitive configuration - Follow GCP security best practices - Report security vulnerabilities via email ## Support - Create an issue for bug reports or feature requests - Check existing issues before creating new ones - Provide detailed information including logs and configuration ## Roadmap - [ ] Cloud Monitoring integration - [ ] Error Reporting tools - [ ] Cloud Trace analysis - [ ] BigQuery log export support - [ ] Alerting and notification tools - [ ] Dashboard generation - [ ] Cost analysis tools

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/JayRajGoyal/gcp-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server