Skip to main content
Glama
longngo192

Google Cloud Docs MCP Server

by longngo192

list_google_cloud_products

Discover available Google Cloud products and their documentation paths to explore services or find correct product IDs for further research.

Instructions

List all available Google Cloud products with their documentation paths.

WHEN TO USE: Use this tool when:

  • User wants to see what GCP services are available

  • User is exploring GCP products

  • You need to find the correct product ID for other tools

  • User asks "what GCP services are there?" or similar

OUTPUT: Returns JSON with:

  • totalProducts: Number of products listed

  • products: Array of products with id, name, docsPath, docsUrl, description

PRODUCTS INCLUDED (20+):

  • Compute: compute, kubernetes, functions, run, appengine

  • Storage: storage, firestore, spanner

  • Database: sql, bigquery

  • AI/ML: ai (Vertex AI), vision, speech, translate

  • Networking: vpc, loadbalancing, cdn, dns

  • Security: iam, kms

  • Messaging: pubsub

  • Monitoring: logging, monitoring

TIP: Use the returned 'docsPath' with 'fetch_google_cloud_doc' to get detailed documentation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The main handler function for the 'list_google_cloud_products' tool. It transforms the GOOGLE_CLOUD_PRODUCTS mapping into a JSON response listing all products with their IDs, names, documentation paths, URLs, and descriptions.
    function listGoogleCloudProducts(): string {
      const products = Object.entries(GOOGLE_CLOUD_PRODUCTS).map(
        ([key, value]) => ({
          id: key,
          name: value.name,
          docsPath: value.docsPath,
          docsUrl: `https://cloud.google.com/${value.docsPath}`,
          description: value.description,
        })
      );
    
      return JSON.stringify({
        totalProducts: products.length,
        products: products,
        usage:
          'Use "fetch_google_cloud_doc" with the docsPath to get documentation content.',
      });
    }
  • src/index.ts:124-154 (registration)
    Tool registration in the MCP tools array, defining the name, comprehensive description, and empty input schema (no parameters required).
      {
        name: "list_google_cloud_products",
        description: `List all available Google Cloud products with their documentation paths.
    
    **WHEN TO USE**: Use this tool when:
    - User wants to see what GCP services are available
    - User is exploring GCP products
    - You need to find the correct product ID for other tools
    - User asks "what GCP services are there?" or similar
    
    **OUTPUT**: Returns JSON with:
    - totalProducts: Number of products listed
    - products: Array of products with id, name, docsPath, docsUrl, description
    
    **PRODUCTS INCLUDED** (20+):
    - Compute: compute, kubernetes, functions, run, appengine
    - Storage: storage, firestore, spanner
    - Database: sql, bigquery
    - AI/ML: ai (Vertex AI), vision, speech, translate
    - Networking: vpc, loadbalancing, cdn, dns
    - Security: iam, kms
    - Messaging: pubsub
    - Monitoring: logging, monitoring
    
    **TIP**: Use the returned 'docsPath' with 'fetch_google_cloud_doc' to get detailed documentation.`,
        inputSchema: {
          type: "object" as const,
          properties: {},
          required: [],
        },
      },
  • Constant mapping of Google Cloud product IDs to their display names, documentation paths, and descriptions. This data is used by the listGoogleCloudProducts handler to generate the tool response.
    const GOOGLE_CLOUD_PRODUCTS: Record<
      string,
      { name: string; docsPath: string; description: string }
    > = {
      compute: {
        name: "Compute Engine",
        docsPath: "compute/docs",
        description: "Virtual machines and infrastructure",
      },
      storage: {
        name: "Cloud Storage",
        docsPath: "storage/docs",
        description: "Object storage service",
      },
      bigquery: {
        name: "BigQuery",
        docsPath: "bigquery/docs",
        description: "Data warehouse and analytics",
      },
      kubernetes: {
        name: "Google Kubernetes Engine",
        docsPath: "kubernetes-engine/docs",
        description: "Managed Kubernetes service",
      },
      functions: {
        name: "Cloud Functions",
        docsPath: "functions/docs",
        description: "Serverless compute platform",
      },
      run: {
        name: "Cloud Run",
        docsPath: "run/docs",
        description: "Serverless containers",
      },
      pubsub: {
        name: "Pub/Sub",
        docsPath: "pubsub/docs",
        description: "Messaging and event ingestion",
      },
      sql: {
        name: "Cloud SQL",
        docsPath: "sql/docs",
        description: "Managed relational databases",
      },
      firestore: {
        name: "Firestore",
        docsPath: "firestore/docs",
        description: "NoSQL document database",
      },
      spanner: {
        name: "Cloud Spanner",
        docsPath: "spanner/docs",
        description: "Globally distributed database",
      },
      ai: {
        name: "Vertex AI",
        docsPath: "vertex-ai/docs",
        description: "Machine learning platform",
      },
      vision: {
        name: "Cloud Vision",
        docsPath: "vision/docs",
        description: "Image analysis API",
      },
      speech: {
        name: "Cloud Speech-to-Text",
        docsPath: "speech-to-text/docs",
        description: "Speech recognition API",
      },
      translate: {
        name: "Cloud Translation",
        docsPath: "translate/docs",
        description: "Translation API",
      },
      iam: {
        name: "IAM",
        docsPath: "iam/docs",
        description: "Identity and Access Management",
      },
      vpc: {
        name: "VPC",
        docsPath: "vpc/docs",
        description: "Virtual Private Cloud networking",
      },
      loadbalancing: {
        name: "Cloud Load Balancing",
        docsPath: "load-balancing/docs",
        description: "Global load balancing",
      },
      cdn: {
        name: "Cloud CDN",
        docsPath: "cdn/docs",
        description: "Content delivery network",
      },
      logging: {
        name: "Cloud Logging",
        docsPath: "logging/docs",
        description: "Log management and analysis",
      },
      monitoring: {
        name: "Cloud Monitoring",
        docsPath: "monitoring/docs",
        description: "Infrastructure monitoring",
      },
    };
  • Dispatch case in the MCP server tool call handler that invokes the listGoogleCloudProducts function and returns its result as tool content.
    case "list_google_cloud_products": {
      const result = listGoogleCloudProducts();
      return {
        content: [{ type: "text", text: result }],
      };
    }
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses behavioral traits such as the output format (JSON with specific fields) and the scope of products included (listing 20+ categories). However, it lacks details on potential limitations like rate limits, pagination, or freshness of data, which would be helpful for a comprehensive list tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections (purpose, usage, output, products included, tip), making it easy to scan. Each sentence adds value, such as explaining the output format, listing product categories, and linking to sibling tools. There is no redundant or verbose content, and the information is front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (listing products with no parameters) and lack of annotations or output schema, the description is complete. It covers purpose, usage guidelines, output details, product scope, and integration with other tools. This provides sufficient context for an AI agent to understand when and how to use this tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately does not discuss parameters, maintaining focus on the tool's purpose and usage. A baseline of 4 is applied as it compensates well for the lack of parameters by providing rich context elsewhere.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('List') and resource ('all available Google Cloud products with their documentation paths'), making the purpose specific. It distinguishes from sibling tools like 'fetch_google_cloud_doc' by focusing on listing products rather than fetching documentation, and from 'search_google_cloud_docs' by being comprehensive rather than filtered.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'WHEN TO USE' section provides explicit guidance with multiple scenarios (e.g., user wants to see GCP services, exploring products, finding product IDs). It also mentions an alternative tool ('fetch_google_cloud_doc') in the TIP, clarifying when to use this vs. others. The examples of user queries further reinforce appropriate contexts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/longngo192/gcpdoc-mcp'

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