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
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:
# 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:
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:
{
"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
- Clone the repository:
git clone https://github.com/JayRajGoyal/gcp-mcp.git
cd gcp-mcp
- Install dependencies:
pip install -r requirements.txt
- Run with your credentials:
python -m gcp_mcp.cli --credentials /path/to/your/credentials.json
Usage
Starting the Server
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:
{
"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:
- Service Account Key File: Set
GOOGLE_APPLICATION_CREDENTIALS - Application Default Credentials: For GCE, Cloud Shell, etc.
- 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 Loggingroles/monitoring.viewer- Read access to Cloud Monitoring (optional)roles/errorreporting.viewer- Read access to Error Reporting (optional)
Development
Running Tests
pytest tests/
Code Formatting
black gcp_mcp/
isort gcp_mcp/
Type Checking
mypy gcp_mcp/
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Run the test suite
- Submit a pull request
License
This project is licensed under the MIT License - see the 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
