dataops-mcp-server

rohithay/dataops-mcp-server

3.2

If you are the rightful owner of dataops-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The GCP Cost Optimization Multi-Agent MCP Server is designed to help organizations manage and optimize their Google Cloud Platform (GCP) expenditures through advanced AI and machine learning techniques.

Tools
10
Resources
0
Prompts
0

GCP Cost Optimization MCP Server

🚀 Installation

Prerequisites

GCP Client Requirements

  1. Credentials: Configure GCP credentials via gcloud CLI or environment variables
  2. Permissions: Ensure your GCP credentials have the required permissions (see Permissions)
  • Optional: GitHub token for PR automation, Slack webhook for notifications

Local development

To make changes to this MCP locally and run it:

# Clone this repository
git clone https://github.com/rohithay/dataops-mcp-server.git
cd dataops-mcp-server

# Create a virtual environment and install dependencies
uv sync
source .venv/bin/activate # On Windows, use `.venv\Scripts\activate`

🚦 Quick Start

  1. Make sure to have configured your GCP credentials as described here
  2. Update your claude_desktop_config.json file with proper configuration outlined in the AI integration guide
  3. Open Claude for Desktop and start prompting! For more examples and advanced usage, see the detailed usage guide.

🤖 AI Integration

To get started using this MCP server with your AI assistants offering MCP support, like Claude Desktop, Cursor. Refer to this Integration guide.

Available Toolsets

The following sets of tools are available (all are on by deafult):

ToolsetDescription
get_bigquery_costsRetrieve BigQuery cost breakdowns
analyze_query_costPredict query cost before execution
detect_cost_anomaliesDetect unusual spending using ML
optimize_queryUse LLMs to auto-optimize SQL queries
create_optimization_prAuto-generate GitHub PRs
send_cost_alertSend cost alerts to Slack
get_dbt_model_costsAnalyze dbt model costs
monitor_sla_complianceTrack SLA compliance and cost-performance trade-offs
forecast_costsForecast future costs
slack_post_messagePost message to Slack

Tools

Actions

Tool: get_bigquery_costs

Retrieve comprehensive BigQuery cost analysis for specified time periods.

ParametersTypeDescription
daysnumber (default: 7)Number of days to analyze (1–90)
project_idstring (optional)Specific GCP project ID
include_predictionsboolean (default: true)Include ML-based cost forecasting
group_byarray (default: ["date"])Grouping dimensions (date, user, dataset, query_type)
include_query_detailsboolean (default: false)Include individual query cost breakdowns
Actions

Tool: analyze_query_cost

Predict cost of a SQL query before execution and get optimization suggestions.

ParametersTypeDescription
sqlstring (required)SQL query to analyze
project_idstring (optional)GCP project ID
include_optimizationboolean (default: true)Include AI-powered optimization suggestions
optimization_modelstring (default: "claude")Model to use ("claude", "gpt-4")
create_pr_if_savingsboolean (default: false)Create GitHub PR if savings exceed threshold
Actions

Tool: detect_cost_anomalies

Use ML to detect cost spikes, anomalies, and early signs of overruns.

ParametersTypeDescription
daysnumber (default: 30)Historical days to analyze
sensitivitystring (default: "medium")Sensitivity (low, medium, high)
project_idstring (optional)GCP project ID
alert_thresholdnumber (default: 0.25)Alert threshold (e.g., 0.25 = 25% increase)
send_slack_alertboolean (default: false)Send alert to Slack
Actions

Tool: optimize_query

LLM-powered query optimization with cost-saving recommendations.

ParametersTypeDescription
sqlstring (required)SQL query to optimize
optimization_goalsarray (default: ["cost", "performance"])Objectives for optimization
preserve_resultsboolean (default: true)Ensure results are unchanged
include_explanationboolean (default: true)Include explanation of changes
target_savings_pctnumber (default: 30)Target savings percentage
dbt_model_pathstring (optional)Path to dbt model for context
Actions

Tool: create_optimization_pr

Auto-create GitHub PRs with optimized SQL and validation tests.

ParametersTypeDescription
optimization_idstring (required)Optimization analysis ID
repositorystring (default: "data-platform")GitHub repo name
base_branchstring (default: "main")Base branch for the PR
title_prefixstring (default: "🚀 Cost Optimization")Prefix for PR title
assign_reviewersboolean (default: true)Auto-assign reviewers
include_testsboolean (default: true)Generate validation tests
Actions

Tool: send_cost_alert

Send actionable cost alerts to Slack with rich context.

ParametersTypeDescription
alert_typestring (required)Type of alert (anomaly, budget_warning, optimization_opportunity)
cost_dataobject (required)Data to include in the alert
severitystring (default: "medium")Alert severity level
channelstring (default: "#data-ops-alerts")Slack channel for alert
mention_usersarray (default: [])Users to mention
include_remediationboolean (default: true)Include fix suggestions
Actions

Tool: get_dbt_model_costs

Analyze dbt model execution costs and optimization opportunities.

ParametersTypeDescription
model_pathstring (optional)Specific dbt model path
include_dependenciesboolean (default: true)Analyze downstream impacts
materialization_analysisboolean (default: true)Suggest materialization strategy improvements
daysnumber (default: 7)Time period for analysis
suggest_optimizationsboolean (default: true)Include cost-saving suggestions
Actions

Tool: monitor_sla_compliance

Monitor pipeline SLAs and correlate with cost-performance metrics.

ParametersTypeDescription
sla_typestring (default: "all")SLA type (latency, freshness, success_rate, all)
time_windowstring (default: "24h")Time window for analysis
include_cost_correlationboolean (default: true)Link SLA with cost data
alert_on_breachboolean (default: false)Send alerts for SLA breaches
optimization_suggestionsboolean (default: true)Suggest cost-aware fixes
Actions

Tool: forecast_costs

Forecast future GCP spend using ML and scenario modeling.

ParametersTypeDescription
forecast_daysnumber (default: 30)Days to forecast
include_confidence_intervalsboolean (default: true)Include prediction ranges
breakdown_byarray (default: ["service"])Forecast by (e.g., service, project)
scenario_analysisboolean (default: false)Include optimistic/pessimistic forecasts
budget_recommendationsboolean (default: true)Suggest budget allocations
Actions

Tool: slack_post_message

Post a message to a Slack channel.

ParametersTypeDescription
channel_idstringID of the Slack channel
textstringMessage text to post