Skip to main content
Glama
666,932 tools. Updated 2026-10-16 21:57

"Google Cloud Platform (GCP)" matching MCP tools:

  • Stage campaign changes for review. Does NOT execute anything. Each operation: {"platform": "google_ads"|"meta_ads", "level": "campaign"|"ad_set"|"ad" (default campaign; ad_set = Google ad group), "object_id": "<id of that object>", "set": {"daily_budget": <number, MAJOR account-currency units>, "status": "ACTIVE"|"PAUSED"}, "account_id": optional, for multi-account companies}. daily_budget: Meta campaign or ad set, Google campaign only (Google ad group spend is governed by the campaign budget). Ads take status only. Returns proposal_id + a current→new diff preview. Show the preview to the user; call apply_change(proposal_id) only after they confirm. Proposals expire in 1h.
    ConnectorAPI key
  • List BigQuery dataset IDs and BigLake namespaces in a Google Cloud project. Supports pagination. Use `page_size` to limit results and `page_token` to retrieve next page.
    ConnectorNo auth
  • INSPECTION: Inspect GCP infrastructure for a deployed project ⚠️ **PREREQUISITE**: This tool requires a prior deployment ATTEMPT (successful or failed). Check convostatus for hasDeployAttempt=true before calling. Works even after failed deploys to inspect orphaned resources. Inspect deployed GCP resources after a deployment attempt. Use this tool when the user asks about the status or details of their deployed GCP infrastructure. It fetches temporary read-only credentials securely and queries the GCP API directly. RESPONSE TIERS (default is summary for token efficiency): - Summary (default): Key fields only (~500 tokens). Set detail=false, raw=false or omit both. - Detail: Full metadata for a specific resource. Set detail=true + resource filter. - Raw: Complete unprocessed API response. Set raw=true. REQUIRES: session_id from convoopen response (format: sess_v2_...). Supported services: apigateway, bastion, billing, certificatemanager, cloudarmor, cloudbuild, cloudcdn, clouddeploy, clouddns, cloudfunctions, cloudkms, cloudlogging, cloudmonitoring, cloudrun, cloudsql, compute, firestore, gcs, gke, iam, identityplatform, loadbalancer, memorystore, pubsub, secretmanager, vertexai, vpc For a specific service's actions, call with action="list-actions". METRICS: Use list-metrics to see available Cloud Monitoring metrics for any service (no credentials needed — progressive disclosure). Use get-metrics to retrieve time-series data. Optional filters JSON: {"hours":6,"period":300}. Label breakdowns: Cloud Functions (by status), Load Balancer/API Gateway (by response_code_class), Cloud CDN (by cache_result). Secret Manager get-metrics returns operational health (version count, replication, create time) — no time-series. Bastion is an alias for Compute Engine metrics (SSH connection count not available as a GCP metric). BILLING: Use service=billing to inspect GCP billing. Actions: get-billing-info (check if billing enabled, which billing account), get-budgets (list budget alerts for the project — auto-fetches billing account). Requires roles/billing.viewer IAM role. Required IAM roles: Monitoring Viewer (roles/monitoring.viewer) for metrics, Secret Manager Viewer (roles/secretmanager.viewer) for secret health, Billing Viewer (roles/billing.viewer) for billing. EXAMPLES: - gcpinspect(session_id=..., service="compute", action="list-instances") - gcpinspect(session_id=..., service="gke", action="list-clusters") - gcpinspect(session_id=..., service="cloudsql", action="get-metrics", filters="{\"hours\":6}") - gcpinspect(session_id=..., service="billing", action="get-billing-info")
    ConnectorNo auth
  • INSPECTION: Inspect GCP infrastructure for a deployed project ⚠️ **PREREQUISITE**: This tool requires a prior deployment ATTEMPT (successful or failed). Check convostatus for hasDeployAttempt=true before calling. Works even after failed deploys to inspect orphaned resources. Inspect deployed GCP resources after a deployment attempt. Use this tool when the user asks about the status or details of their deployed GCP infrastructure. It fetches temporary read-only credentials securely and queries the GCP API directly. RESPONSE TIERS (default is summary for token efficiency): - Summary (default): Key fields only (~500 tokens). Set detail=false, raw=false or omit both. - Detail: Full metadata for a specific resource. Set detail=true + resource filter. - Raw: Complete unprocessed API response. Set raw=true. REQUIRES: session_id from convoopen response (format: sess_v2_...). Supported services: apigateway, bastion, billing, certificatemanager, cloudarmor, cloudbuild, cloudcdn, clouddeploy, clouddns, cloudfunctions, cloudkms, cloudlogging, cloudmonitoring, cloudrun, cloudsql, compute, firestore, gcs, gke, iam, identityplatform, loadbalancer, memorystore, pubsub, secretmanager, vertexai, vpc For a specific service's actions, call with action="list-actions". METRICS: Use list-metrics to see available Cloud Monitoring metrics for any service (no credentials needed — progressive disclosure). Use get-metrics to retrieve time-series data. Optional filters JSON: {"hours":6,"period":300}. Label breakdowns: Cloud Functions (by status), Load Balancer/API Gateway (by response_code_class), Cloud CDN (by cache_result). Secret Manager get-metrics returns operational health (version count, replication, create time) — no time-series. Bastion is an alias for Compute Engine metrics (SSH connection count not available as a GCP metric). BILLING: Use service=billing to inspect GCP billing. Actions: get-billing-info (check if billing enabled, which billing account), get-budgets (list budget alerts for the project — auto-fetches billing account). Requires roles/billing.viewer IAM role. Required IAM roles: Monitoring Viewer (roles/monitoring.viewer) for metrics, Secret Manager Viewer (roles/secretmanager.viewer) for secret health, Billing Viewer (roles/billing.viewer) for billing. EXAMPLES: - gcpinspect(session_id=..., service="compute", action="list-instances") - gcpinspect(session_id=..., service="gke", action="list-clusters") - gcpinspect(session_id=..., service="cloudsql", action="get-metrics", filters="{\"hours\":6}") - gcpinspect(session_id=..., service="billing", action="get-billing-info")
    ConnectorNo auth
  • PERMANENT deploy: promote a published version to a PERMANENT public URL at <service>.supero.live (managed Cloud Run) — unlike build_deploy(target='cloud_ephemeral'), which is a ~30-min throwaway. If version_uuid/file_id are omitted, the latest published version for the project is used. Returns public_url + poll_url; poll with build_deploy_status until live, then build_smoke_test the public_url. build_teardown removes it. Requires a domain- or project-admin API key + platform cloud-deploy enablement.
    Connector
    Destructive
    No auth
  • Duplicate (copy) a negative keyword list from one search channel to the other: Google Ads to Microsoft Ads (Bing), or Microsoft Ads to Google Ads. KEYWORDS: duplicate, copy, clone, replicate, negative keywords, Bing, Microsoft Ads, Google Ads PURPOSE: Users who run the same campaigns on Google and Bing keep the two negative keyword libraries in sync by hand. This tool copies an existing negative keyword list to the other search channel in one call: the platform reads the source list's keywords, adapts match types for the target channel, and creates a new list there. WHAT IT DOES (server-side, automatic): - Reads every keyword in the source list. - Remaps match types for the target: Microsoft Ads does not support BROAD negative keywords, so BROAD (and untyped) keywords become PHRASE when the target is Microsoft Ads. EXACT and PHRASE are kept as-is. Google-bound copies keep all match types unchanged. - Creates a NEW list on the target channel. The source list is never modified. DRY RUN (preview): Call with dryRun=true first when the source list may contain BROAD keywords. Nothing is created; the response reports keywordsCopied and broadRemappedToPhrase so you can tell the user "N broad keywords will become phrase match on Microsoft" and let them confirm. Then repeat the call with dryRun=false to actually create. PARAMETERS: - sourceListId: Required. The id of the negative keyword list to copy, as returned by list_negative_keywords_list. - sourceChannel: Channel the source list lives on. Default GOOGLE_ADS. - targetChannel: Channel to create the copy on. Default MICROSOFT_ADS. Must differ from sourceChannel - only cross-channel copies are supported. - name: Optional name for the new list. When omitted the platform derives "<source name> (<target>)", e.g. "Competitor Brands (Microsoft)". - dryRun: Optional, default false. When true, preview without creating. RESPONSE FORMAT: { "id": 456, // new list id on the target channel; null on dry run "name": "Competitor Brands (Microsoft)", "keywordsCopied": 32, "broadRemappedToPhrase": 5, // 0 when target is Google Ads "dryRun": false } WORKFLOW: 1. Find the source list id with list_negative_keywords_list (or ask the user). 2. Optional: duplicate_negative_keywords_list(sourceListId=..., dryRun=true) to preview the match-type conversion and confirm with the user. 3. duplicate_negative_keywords_list(sourceListId=...) to create the copy. 4. The new list exists on the target channel; attach it to campaigns like any other negative keyword list. ERROR CASES: - Source list not found (or empty) on the source channel: the platform rejects the copy with a not-found error - re-check the id and sourceChannel. - Same source and target channel: rejected; use the platform UI's same-channel duplicate instead. - Accounts are capped at 20 negative keyword lists per channel; if the target channel is at the cap the creation fails - delete a list there first. EXAMPLES: - "Copy my Google negative list to Bing": duplicate_negative_keywords_list(sourceListId=123) - Preview first: duplicate_negative_keywords_list(sourceListId=123, dryRun=true) - Custom name, Microsoft to Google: duplicate_negative_keywords_list(sourceListId=77, sourceChannel="MICROSOFT_ADS", targetChannel="GOOGLE_ADS", name="Brand Safety (Google)") RELATED TOOLS: - list_negative_keywords_list / get_negative_keywords_list_details: find the source list and inspect its keywords (currently Google Ads only). - create_negative_keywords_list: build a brand-new list from scratch instead.
    ConnectorAPI key

Matching MCP Servers

Matching MCP Connectors

  • Execute a previously previewed change. IMPORTANT: Defaults to dry_run=True (validate only). Only an explicit dry_run=false applies the change to the ad account (Google Ads or Reddit Ads — the plan knows which platform it targets). Forced dry runs: when real changes are switched off (live changes off for the workspace in AdLoop Cloud, or safety.require_dry_run in a self-hosted config), dry_run=false is IGNORED and the result is still DRY_RUN_SUCCESS, with 'dry_run_forced_by' and 'remediation' fields. 'remediation' says how the user switches that setting; until it is changed, repeated calls with dry_run=false change nothing. Two-phase apply: if 'safety.two_phase_apply: true' is set (always on for AdLoop Cloud tenants), dry_run=false is REFUSED with status DRY_RUN_REQUIRED until this plan_id has completed one dry_run=true pass. The sequence is: dry run, review of its result, then the real apply. Google Ads plans: the dry run sends the exact mutates to Google with validate_only=True, so Google checks the change and executes nothing (`checks` counts the validated calls). Steps that build on an object an earlier step would create cannot be validated and are counted as skipped. Reddit plans: Reddit has no validate-only mode, so the dry run re-reads the target entity and re-checks the safety caps (returned as `checks`). A DRY_RUN_FAILED result means the change does not go through as previewed. The real apply fails the same way, unless Google rejected only part of the request: then it carries out the rest and reports those operations again. Returns a status with the plan_id and operation: DRY_RUN_SUCCESS, DRY_RUN_FAILED, DRY_RUN_REQUIRED, APPLIED, PARTIAL_UPLOAD or APPLY_IN_PROGRESS. APPLIED results carry the created or changed resource names under 'result'. PARTIAL_UPLOAD belongs to the upload tools: the batches it lists are already in the account, so the plan is retired. 'sent_total', 'accepted_total', 'rejected_total' and 'resume_from_line' say how far the upload got and at which CSV line a new draft continues; when a batch's fate is unknown, 'unknown_status', 'uncertain_lines' and 'row_errors' name the rows whose outcome has to be checked first. APPLY_IN_PROGRESS means an earlier call claimed this plan first, so this call executed nothing. Approval cards: in AI apps that show AdLoop's approval card with the preview, dry_run=false is REFUSED with status APPROVE_ON_CARD, because only the user's click on the card applies the change. Dry runs still work. The workspace owner can allow approval in chat as well. Google Ads API: https://developers.google.com/google-ads/api/docs/start, Google Analytics Data API: https://developers.google.com/analytics/devguides/reporting/data/v1 and Reddit Ads API: https://ads-api.reddit.com/docs/v3/
    Connector
    Destructive
    API key
  • List supported Google Maps place type values for search filters. Returns place_types as a string array. Use a value with place_type on google-maps.search or google-maps.nearby_search. Cost = 1 token.
    ConnectorNo auth
  • List all Google Trends category and subcategory labels you can pass to other Google Trends tools in the category field. Returns cat (array of category names, including All categories) and msg. Use this before interest-over-time or interest-by-region calls when filtering by category. Cost = 5 tokens.
    ConnectorNo auth
  • List all countries and subregions you can pass to other Google Trends tools in the country and region fields. Returns geo.countries: each country name maps to country (label) and regions (array of subregion names). Also returns msg. Use this before interest-over-time or interest-by-region calls when filtering by geography. Pair with google-trends.categories when filtering by category. Cost = 5 tokens.
    ConnectorNo auth
  • Checks whether a task can be handled by a local model instead of a cloud API. Call this BEFORE your agent routes any task to a cloud model — at the moment a task is ready to be sent and the model has not yet been selected. Use this when your agent is about to make a cloud inference call and wants to determine whether a local model could handle it at lower cost. Returns LOCAL/CLOUD/EITHER verdict with recommended model. If verdict is LOCAL, skip the cloud call entirely — saves cost on every routable inference call. Pass data_sensitivity=CONFIDENTIAL to force LOCAL verdict for tasks that must not leave the machine. Do not route to cloud without checking local viability first.
    ConnectorNo auth
  • List saved Costory business metrics and, optionally, matching live external metrics from connected integrations (e.g. Tsuga, BigQuery, Datadog, CloudWatch, Google Cloud Monitoring). Saved metrics return id/name/type for { type: "metric", metricId: "..." } in query. Set includeExternal: true with a specific search term to return externalMetrics with provider, integrationId, integrationName, metricName, unit, capabilities, and attributes. That catalog is enough to build { type: "externalMetric", provider, integrationId, metricName, aggregator, groupByFields, conditions } for Tsuga, Datadog (attributes are tag keys; metricName is the Datadog metric name), CloudWatch (metricName is Namespace/MetricName such as AWS/EC2/CPUUtilization; attributes are dimension names), Google Cloud Monitoring (provider "cloudmonitoring"; metricName is the metric type such as compute.googleapis.com/instance/cpu/utilization; attributes are fully-qualified group-by fields such as metric.label.state or resource.label.project_id, and conditions is an optional Monitoring filter), or Amplitude. For BigQuery or S3, the same hit also includes `schema` (typed columns: DATE / NUMERIC / STRING). Pick dateColumn from the first DATE field, metricColumn from the first NUMERIC field, and groupByFields from STRING fields (also listed in attributes). gapFillingMethod is not in the catalog — default FORWARD_FILL unless the user specifies ZERO, LINEAR_INTERPOLATION, or SPREAD. Those three fields are required on both query and a new virtual-dimension telemetry allocation. Do not call includeExternal without search; external catalogs can be large, and the tool will ask for a search term instead of listing everything. externalLimit (default 50, max 50) caps matching external results. New virtual-dimension telemetry reallocations use includeExternal + an inline `externalMetric` (same fields as a query series, plus exactly one groupByFields entry as the series key). Pass `datasourceId` only to inspect a leftover saved usage-metric datasource's `groupByDimensions` — not for new reallocations. Then call `query` (`type: "metric"`, `metricId`, `groupBy`) to inspect the values for that leftover datasource. The `datasourceId` is the same `metricsDatasource` id this tool returns as a saved-metric `id` (strip any `::metricName` suffix). Does **not** return values (use `query`). EXAMPLES: • "What business metrics do we have?" → {} • "Find Tsuga metrics about requests" → { includeExternal: true, search: "request" } • "Find BigQuery tables about revenue" → { includeExternal: true, search: "revenue" } • "Find Datadog metrics about CPU" → { includeExternal: true, search: "cpu" } • "Find CloudWatch metrics about CPU" → { includeExternal: true, search: "CPUUtilization" } • "Find GCP Monitoring metrics about CPU" → { includeExternal: true, search: "cpu/utilization" } (Cloud Monitoring search matches the metric type, not its display name) • "What live metrics can I reallocate shared cost by?" → { includeExternal: true, search: "cpu" } • "What can I split a leftover saved-metric datasource by?" → { datasourceId: "clx…" }
    ConnectorOAuth
  • Deletes a file or an empty folder from the synced Google Drive folder — Google Drive for Desktop syncs the deletion to the cloud (the item lands in Drive's trash). Deleting a .gdoc/.gsheet/.gslides pointer removes the real Google Doc/Sheet/Slides. Never deletes a folder that still has contents. First call returns a preview of what was actually found at that path; pass confirm=true to delete.
    Connector
    Destructive
    OAuth
  • List Search Console properties for this account. Returns Vee3-managed domains plus sites added with google-search-console.add_site. Call this to discover sites, then omit site_url on later calls to use the default property, or pass an exact site_url from this response. If no properties appear, add a site with google-search-console.add_site or register a domain with domains.register. Cost = 5 tokens.
    ConnectorNo auth
  • Turn product rows into a platform-valid product feed: Meta (Facebook and Instagram) RSS 2.0, Google Merchant RSS 2.0, Atom 1.0 or generic RSS 2.0, using the g: namespace where the platform expects it. Each row is validated (required fields, price as 12.99 GBP, availability and condition values, http links, unique ids); rows that fail are skipped and listed. Returns the XML, counts and errors. Source: https://hopi.co.uk/product-feed-generator/
    ConnectorNo auth
  • Use this when the user asks how the DocuWriter.ai platform works or requests its published product instructions. Read-only: searches DocuWriter Platform Docs and returns relevant page excerpts with source URLs. It does not search the user's Spaces or the separate API Docs, and it cannot change documentation.
    ConnectorOAuth
  • Post a public reply to a comment on its originating platform. The reply is published immediately. Platform length limits: Instagram 2200, Facebook 8000, LinkedIn 1250, Google Business 4096 characters. Cannot reply to hidden comments. On success, the parent comment's `brandReplied` flag is set to true. For LinkedIn, pass the raw URN as platformCommentId, without URL encoding.
    ConnectorOAuth
  • Query comprehensive IP intelligence: reverse DNS, ASN + holder name + country inline (RIPE Stat, Phase 1), open ports, hostnames, vulnerabilities (Shodan InternetDB enriched with severity + cvss_v3 from local cve.db — Phase 2 v1.16.0 BREAKING; vulns is now list[VulnInfo] {cve_id, severity, cvss_v3} dicts, pre-1.16 it was list[str] of CVE IDs; unknown CVEs emit severity='UNKNOWN' / cvss_v3=null — do NOT infer benign), cloud provider, Tor exit status, and reputation. cloud_provider uses two-tier detection: published cloud CIDR ranges (AWS/GCP/Cloudflare) first, then an ASN-to-provider fallback map for anycast/public-service IPs outside published ranges (e.g. 8.8.8.8 → AS15169 → 'Google'). Reputation: FireHOL level1 blocklist on Free tier; +AbuseIPDB + Shodan on Pro (Phase 4). Use for IP investigation; for orchestrated IP+reputation use threat_report. Response is null-explicit: every field is always present (cloud_provider=null when neither tier matches; tor_exit=false when not listed or upstream fetch failed — check verdict.sources_unavailable to disambiguate fetch failure from genuine absence). Response carries next_calls (conditional) — asn_lookup when ASN is populated, ioc_lookup when reputation is FireHOL-listed or AbuseIPDB confidence>50, threat_report on Pro tier for orchestrated profile. Free: 30/hr, Pro: 500/hr. Returns {ip, ptr, geo, asn, asn_name, country, ports, hostnames, vulns, cloud_provider, tor_exit, reputation, risk_score, verdict, next_calls}.
    ConnectorNo auth
  • Wait for the user to securely connect their cloud account and subscribe to Luther Systems. Polls until credentials appear on the session. 🎯 USE THIS TOOL WHEN: tfdeploy returns an 'auth_required', 'no_credentials', or 'credentials_expired' error. The user needs to visit the connect URL to: 1. Connect their cloud credentials (AWS or GCP) 2. Sign up and subscribe to a Luther Systems plan (required for deployment) This secure connection allows InsideOut to deploy and manage infrastructure in the user's cloud account on their behalf. Credentials are handled securely and only used for deployment and management sessions. WORKFLOW: 1. FIRST: Present the connect URL and explanation to the user (from the tfdeploy error response) 2. THEN: Call this tool to begin polling for credentials 3. The user opens the URL in their browser to subscribe and add credentials 4. When credentials are found, inform the user and call tfdeploy to deploy IMPORTANT: Do NOT call this tool without first showing the connect URL to the user. The user needs to see the URL to complete the process. REQUIRES: session_id from convoopen response (format: sess_v2_...). OPTIONAL: cloud ('aws' or 'gcp'), timeout (integer, seconds to wait, default 300, max 600).
    ConnectorNo auth
  • Search the official Redpanda documentation and return the most relevant sections from it for a user query. Each returned section includes the url and its actual content in markdown. Use this tool for all queries that require Redpanda knowledge. Results are ordered by relevance, with the most relevant result returned first. If you know the user's deployment platform, pass "platform" so results from the other platform's docs are excluded. Note that "platform" filters the sections already retrieved rather than re-running the search, so it can return substantially fewer sections: on a broker-level question where most matches come from the other platform's docs, it can cut a 15-section response to 1 or 2. Omit "platform" if you would rather have more context and judge platform relevance yourself from each section's url. If you know which Redpanda version the user runs, pass "version" (use 'current' for the latest release; its release number is also accepted). Unlike "platform", "version" is applied during retrieval, so it does not shrink the result set: it stops the same page being returned once per indexed version, which is otherwise most of the response. Version-neutral docs (Cloud, Connect, Agentic Data Plane, API reference) are always included. Omitting "version" searches the latest release.
    ConnectorOAuth
  • Search Redpanda API reference documentation by keyword. Returns up to 20 matching endpoints, schemas, or topics with URL, title, and text excerpts. SCOPING (important for accurate results): - api="all" or omit: Search across ALL APIs at once - useful when unsure which API contains the endpoint - api="admin": Search only cluster management (brokers, partitions, configs, users, maintenance) - api="cloud-controlplane": Search only Cloud resource management (clusters, networks, namespaces) - api="cloud-dataplane": Search only Cloud data operations (topics, ACLs, connectors) - api="http-proxy": Search only HTTP Proxy (produce, consume, offsets over HTTP) - api="schema-registry": Search only Schema Registry (register, retrieve, compatibility) WHEN TO USE WHICH: - User asks "broker endpoints" → api="admin" (brokers are cluster management) - User asks "create topic API" → api="all" (topics exist in admin AND cloud-dataplane) - User asks "Cloud cluster API" → api="cloud-controlplane" - User asks about Redpanda APIs generally → api="all" or omit For general Redpanda questions (not API-specific), use ask_redpanda_question instead.
    ConnectorOAuth