MCP App Store
by KeenEthics
Cloudaware Service Graph icon

Cloudaware Service Graph

By Cloudaware

Get New App Alerts

Overview

Cloudaware Service Graph connects ChatGPT to a live inventory of the organization's infrastructure: every resource across AWS, Azure, Google Cloud, Oracle Cloud, Kubernetes, VMware and Nutanix, with its configuration, configuration history, cost, vulnerabilities, and the monitoring and security agents installed on it. Cloudaware discovers it through the providers' APIs and the systems already in place, keeps it current as resources change, and maps each resource to the application it serves. With the connector enabled, ChatGPT answers questions about inventory, configuration, changes, security coverage and cost across every cloud and data center from a single source. The connector is read-only and replaces a separate integration for every cloud and tool, so a single answer can draw on all of them.

Tools

analyze_field

ChatGPT
Analyzed the data in a specific field of a specific type. Whenever you want to filter by a field value, you MUST call this tool before. You can not make assumptions that 'true' is 'true' and not 'TRUE', 'Enabled' or 'On' Input: - typeApiName: string (required) - The API name of the type holding the field to analyze - fieldApiName: string (required) - The API name of the field to analyze - exportProjectOverride: string (optional) - Overrides the name of the export project; if not set, the default export project is used - sObjectsDatasetOverride: string (optional) - Overrides the name of the sObjects dataset; if not set, the default sObjects dataset is used Output: - stats: object - Statistics about the values of the field, which depending on the type of the field might include: - rowCount: int - Total number of rows in the table. - distinctValues: int - Number of distinct values of the field - nullValues: object - count: int - Number of rows where the field is NULL - exampleId: string - Id of the example object where the field is NULL - emptyValues: object - For text types - count: int - Number of rows where the field is an empty string - exampleId: string - Id of the example object where the field is empty string - shortest: object - The shortest values of the field - len: int - the length of the value - value: string - the value itself - exampleId: string - Id of the example object with the shortest value of the field - longest: object - The longest values of the field - len: int - the length of the value - value: string - the value itself - exampleId: string - Id of the example object with the longest value of the field - sortedFirstRow: object - First row when sorted ASC by the field (NULLs excluded) - value: type depends on the field type - Value of the field in the row - id: string - Id of the object in the row - sortedLastRow: object - First row when sorted DESC by the field - value: type depends on the field type - Value of the field in the row - id: string - Id of the object in the row - topValues: array of objects - Top values, when GROUP BY the field - value: type depends on the field type - The value of the field - count: int - Number of row with this value - exampleId: string - Id of the example object with this value of the field - minValue: object - For number types, minimal value of the field (NULLs excluded) - value: number - The value of the field - exampleId: string - Id of the example object with this value of the field - maxValue: object - For number types, maximum value of the field - value: number - The value of the field - exampleId: string - Id of the example object with this value of the field - histogram: array of objects - For number types, the values of the field split into buckets - bucket: int - Bucket number - minBucketValue: numebr - Bucket lower border - maxBucketValue: number - Bucket higher border - count: int - Number of rows captured by this bucket - exampleId: string - Id of the example object from this bucket - series: array of objects - For date and time fields, time-series data for the field - time: string - Formatted string representing a point in time in the series - count: int - Number of rows at that point in time - exampleId: string - Id of the example object at that point in time - granularity: string - The granularity of the 'series', possible values: SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, YEAR

execute_query

ChatGPT
Executes a BigQuery SQL query on the CloudAware dataset. Use this tool only after discovering types and fields with 'search_types' and 'search_fields'. Results are paginated. Always incorporate these rules in your queries: - Filter out deleted objects by adding 'WHERE ${disappearanceTimeField} IS NULL' (replace ${disappearanceTimeField} with the actual field name from 'search_types'); - Handle null or empty values with 'TRIM(COALESCE(field, '')) = ''' to check for absent values and 'TRIM(COALESCE(field, '')) != ''' to check for present values; - Use exact API names discovered from previous tools. For relationships and joins, first use the 'get_relationship_graph' tool. Input: - sql: string (required) - The standard BigQuery SQL query to execute. - exportProjectOverride: string (optional) - Overrides the name of the export project; if not set, the default export project is used - cursor: string (optional) - An opaque token used to represent a cursor for pagination. Output: - rows: array of objects (optional) - The query execution results, where each object represents a row with column names as keys. - nextCursor: string (optional) - An opaque token representing the pagination position after the last returned result. If present, there may be more results available.

get_relationship_graph

ChatGPT
Retrieves a subgraph of relationships (foreign keys or lookups) starting from a specified type. This returns a simple graph to help reason about table joins. Input: - startTypeApiName: string (required) - The API name of the starting type. - exportProjectOverride: string (optional) - Overrides the name of the export project; if not set, the default export project is used - sObjectsDatasetOverride: string (optional) - Overrides the name of the sObjects dataset; if not set, the default sObjects dataset is used Output: - edges: array of objects (optional) - List of relationship edges. Each edge includes: - fromType: string (required) - The type containing the lookup field. - toType: string (required) - The type the lookup field references (also the parent type with the related list of fromType objects). - lookupFieldApiName: string (required) - The API name of the lookup field on fromType pointing to toType. - lookupFieldLabel: string (required) - The human-readable label of the lookup field. - relatedListApiName: string (optional) - The API name of a related list on toType pointing to fromType.

search_fields

ChatGPT
Retrieves field metadata for a specific typeApiName, filtered by keywords matched against field names, labels, help text, descriptions, and explanations. Use this after 'search_types' to discover exact fieldApiName, data types, descriptions, and relationships (via lookupToType). For a full relationship graph, use 'get_relationship_graph'. Input: - typeApiName: string (required) - The API name of the type to search fields in. - query: array of strings (required) - List of search terms or synonyms (e.g., ['state', 'status', 'condition']), each searched separately and matched case-insensitively (word order does not matter). - exportProjectOverride: string (optional) - Overrides the name of the export project; if not set, the default export project is used - sObjectsDatasetOverride: string (optional) - Overrides the name of the sObjects dataset; if not set, the default sObjects dataset is used Output: - fields: array of objects (optional) - List of matching fields. Each field includes: - fieldLabel: string (required) - Human-readable name of the field. - fieldApiName: string (required) - API name matching the Salesforce field and BigQuery column. - fieldType: string (required) - Data type using the Salesforce type system. - lookupToType: string (optional) - For lookup or master-detail fields, the referenced typeApiName. - relatedListApiName: string (optional) - For lookup or master-detail fields, the API name of the related list of typeApiName type type on lookupToType type. - fieldInlineHelp: string (optional) - Inline help text for the field. - fieldSourceDescription: string (optional) - Description of the field from the data source. - fieldSourceExplanation: string (optional) - Explanation of how CloudAware converts and stores the source data. - fieldSourceReferenceCall: string (optional) - Name of the API call in the source used by CloudAware to retrieve the data. - fieldSourceReferenceCallDocUrl: string (optional) - URL for the API call documentation.

search_types

ChatGPT
Searches for object types by matching keywords against typeApiName and typeLabel. This is the first discovery step to find the exact typeApiName and corresponding BigQuery tableId (e.g., 'project.dataset.TypeApiName'). Input: - query: array of strings (required) - List of search terms or synonyms, each searched separately and matched case-insensitively (word order does not matter). Use specific phrases for precision, e.g., 'ec2 instance' instead of broad terms like 'ec2'. Include possible synonyms in your query for broad questions, e.g. ['instance', 'virtual machine', 'server']. - exportProjectOverride: string (optional) - Overrides the name of the export project; if not set, the default export project is used - sObjectsDatasetOverride: string (optional) - Overrides the name of the sObjects dataset; if not set, the default sObjects dataset is used Output: - types: array of objects (optional) - List of matching types. Each type includes: - typeLabel: string (required) - Human-readable singular name of the type. - typeApiName: string (required) - API name matching the Salesforce SObject name. - tableId: string (required) - Full BigQuery table ID, e.g., 'project.dataset.TypeApiName'. - disappearanceTimeField: string (optional) - Field storing the object's deletion time; if present, always add '${disappearanceTimeField} IS NULL' to queries unless the user explicitly requests otherwise. - externalIdFields: array of strings (optional) - Fields storing globally unique IDs, useful for queries listing objects.

Example Prompts

Click any prompt to copy it.

Similar Apps