manage_applications
Unified Instana application resource manager for metrics, alerts, configurations, and catalog.
Resource Types:
- "metrics": Query application metrics, services, and endpoints
- "alert_config": Manage application-specific alert configurations
- "global_alert_config": Manage global application alert configurations
- "settings": Manage application configurations
- "catalog": Access application tag and metric catalog information
- "resources": Query application resources, services, endpoints
- "analyze": Analyze application traces and calls
CRITICAL WORKFLOW - ALWAYS FOLLOW THIS ORDER:
- FIRST: Call get_metric_catalog to get valid metrics
- resource_type="catalog", operation="get_metric_catalog"
- Returns: Available metrics with metricId, aggregations, and data sources
- SECOND: Call get_tag_catalog to get valid tag names
- resource_type="catalog", operation="get_tag_catalog"
- params: {"use_case": "GROUPING", "data_source": "CALLS"}
- THIRD: Use ONLY the tag names and metrics returned from catalog operations
- Metric names must match those from get_metric_catalog
- Tag names must match those from get_tag_catalog
- NEVER guess or invent tag names or metric names
- FOURTH: Call metrics operations with validated tag names and metrics
- Example invalid: "calls.error.count" (not in catalog)
- Example valid: "calls" with aggregation "SUM"
METRICS (resource_type="metrics"): operation: get_grouped_calls_metrics params: {time_frame, metrics, tag_filter_expression, group, order, pagination, include_internal, include_synthetic}
Aggregations: SUM, MEAN, MAX, MIN, P25, P50, P75, P90, P95, P98, P99, DISTINCT_COUNT, SUM_POSITIVE Operators: EQUALS, NOT_EQUAL, CONTAINS, NOT_CONTAIN, STARTS_WITH, ENDS_WITH, GREATER_THAN, GREATER_OR_EQUAL_THAN, LESS_THAN, LESS_OR_EQUAL_THAN, NOT_EMPTY, IS_EMPTY
time_frame: {"to": <timestamp_or_datetime>, "windowSize": <milliseconds>}
- to: Unix timestamp (ms) OR datetime string (e.g., "19 March 2026, 2:47 PM|IST")
- windowSize: Duration in milliseconds (default: 3600000 = 1 hour)
tag_filter_expression: CRITICAL - Entity field is REQUIRED for ALL tag filters
ENTITY FIELD VALUES:
"SOURCE" or "DESTINATION" → Tag identifies an infrastructure/service component (what/where: hosts, services, containers, databases, endpoints) (catalog hint: canApplyToSource/canApplyToDestination = true)
"NOT_APPLICABLE" → Tag describes call behavior or metadata (how/what happened: call metrics, trace properties, geo data, business context) (catalog hint: canApplyToSource/canApplyToDestination = false)
Never omit entity field or set to null - it is MANDATORY.
Examples:
- Entity component: {"type": "TAG_FILTER", "name": "service.name", "entity": "DESTINATION", ...}
- Call metadata: {"type": "TAG_FILTER", "name": "call.latency", "entity": "NOT_APPLICABLE", ...}
- Geographic: {"type": "TAG_FILTER", "name": "geo.country", "entity": "NOT_APPLICABLE", ...}
ALERT_CONFIG (resource_type="alert_config"): operations: find_active, find_versions, find, create, update, delete, enable, disable, restore, update_baseline params: {application_id OR application_name, id, alert_ids, valid_on, created, payload}
GLOBAL_ALERT_CONFIG (resource_type="global_alert_config"): operations: find_active, find_versions, find, create, update, delete, enable, disable, restore params: {application_id OR application_name, id, alert_ids, valid_on, created, payload}
SETTINGS (resource_type="settings"): operations: get_all, get, create, update, delete params: {resource_subtype, id, application_name, service_name, service_id, payload, request_body} resource_subtypes: "application"
Creating application (resource_subtype="application", operation="create"): REQUIRED: label | OPTIONAL: scope, boundaryScope, accessRules, tagFilterExpression Minimal: params={"resource_subtype": "application", "payload": {"label": "My App"}}
RESOURCES (resource_type="resources"): operations: get_applications, get_services, get_application_services, get_application_endpoints params: {application_id, service_id, endpoint_id, name_filter, types, technologies, application_boundary_scope, include_snapshot_ids}
get_applications - Get application perspectives params: {name_filter, application_boundary_scope} Returns: Paginated list of applications with their configurations and metadata
get_services - Get all services for application monitoring params: {name_filter, include_snapshot_ids} Returns: Paginated list of services across all applications
get_application_services - Get services for a specific application perspective params: {application_id, service_id, name_filter, application_boundary_scope, include_snapshot_ids} Returns: Paginated services filtered by application context
get_application_endpoints - Get endpoints for an application service params: {application_id, service_id, endpoint_id, name_filter, types, technologies, application_boundary_scope} Returns: Paginated endpoints with type and technology metadata
CATALOG (resource_type="catalog"): operations: get_tag_catalog, get_metric_catalog params: {use_case, data_source, var_from}
get_metric_catalog - Get application metrics catalog with metadata (metricId, label, aggregations, beaconTypes) get_tag_catalog - Get valid tag names for use_case and data_source Valid use_case: "GROUPING", "FILTERING", "SERVICE_MAPPING", "SMART_ALERTS" Valid data_source: "CALLS", "TRACES"
ANALYZE (resource_type="analyze"): operations: get_all_traces, get_trace_details, get_trace_groups
time_frame: {"to": <timestamp_or_datetime>, "windowSize": <milliseconds>}
- to: Unix timestamp in milliseconds OR datetime string (e.g., "19 March 2026, 2:47 PM|IST")
- If timezone not specified in datetime string, defaults to UTC
- windowSize: Duration in milliseconds (default: 3600000 = 1 hour)
get_all_traces - params: {payload} payload: {timeFrame, includeInternal, includeSynthetic, tagFilterExpression, pagination, order} timeFrame.to: Unix timestamp (ms) OR datetime string with timezone
get_trace_details - params: {id, retrievalSize, offset, ingestionTime} Returns: items, itemCount, canLoadMore, cursor for pagination
get_trace_groups - params: {payload} payload: {group, metrics, timeFrame, tagFilterExpression, pagination, order, includeInternal, includeSynthetic} NOTE: 'group' and 'metrics' are mandatory payload fields. The 'group' object must include 'groupbyTag' and 'groupbyTagEntity'. Supported groupbyTag values are 'trace.endpoint.name' and 'trace.service.name'. Allowed groupbyTagEntity values are 'NOT_APPLICABLE', 'DESTINATION', and 'SOURCE'.
CRITICAL: The "calls" metric is NOT supported for trace operations. Use "traces" or other trace-specific metrics. Use get_metric_catalog first to look up valid metric names and aggregations as described in the critical workflow.
Args: resource_type: "metrics", "alert_config", "global_alert_config", "settings", "catalog", "resources", or "analyze" operation: Specific operation for the resource type params: Operation-specific parameters (optional) ctx: MCP context (internal)
Returns: Dictionary with results from the appropriate tool
Examples: # CATALOG operations resource_type="catalog", operation="get_metric_catalog" resource_type="catalog", operation="get_tag_catalog", params={"use_case": "GROUPING", "data_source": "CALLS", "var_from": 1710658800000}
# METRICS operations resource_type="metrics", operation="get_grouped_calls_metrics", params={"metrics": [{"metric": "calls", "aggregation": "SUM"}, {"metric": "latency", "aggregation": "MEAN"}], "tag_filter_expression": {"type": "TAG_FILTER", "name": "application.name", "operator": "EQUALS", "entity": "DESTINATION", "value": "All Services"}, "group": {"groupbyTag": "service.name", "groupbyTagEntity": "DESTINATION"}, "time_frame": {"to": 1710658800000, "windowSize": 3600000}, "order": {"by": "calls", "direction": "DESC"}, "pagination": {"page": 1, "pageSize": 50}, "include_internal": False, "include_synthetic": False}
# ALERT_CONFIG operations resource_type="alert_config", operation="find_active", params={"application_name": "All Services", "alert_ids": ["alert-1", "alert-2"]} resource_type="alert_config", operation="find_versions", params={"application_id": "app-123", "id": "alert-456"} resource_type="alert_config", operation="find", params={"application_id": "app-123", "id": "alert-456", "valid_on": 1710658800000} resource_type="alert_config", operation="create", params={"application_id": "app-123", "payload": {"name": "High Error Rate", "severity": 5}} resource_type="alert_config", operation="update", params={"application_id": "app-123", "id": "alert-456", "payload": {"name": "Updated Alert"}} resource_type="alert_config", operation="delete", params={"application_id": "app-123", "id": "alert-456"} resource_type="alert_config", operation="enable", params={"application_id": "app-123", "id": "alert-456"} resource_type="alert_config", operation="disable", params={"application_id": "app-123", "id": "alert-456"} resource_type="alert_config", operation="restore", params={"application_id": "app-123", "id": "alert-456", "created": 1710658800000} resource_type="alert_config", operation="update_baseline", params={"application_id": "app-123", "id": "alert-456"}
# GLOBAL_ALERT_CONFIG operations resource_type="global_alert_config", operation="find_active", params={"application_name": "All Services"} resource_type="global_alert_config", operation="find_versions", params={"application_id": "app-123", "id": "alert-789"} resource_type="global_alert_config", operation="find", params={"application_id": "app-123", "id": "alert-789", "valid_on": 1710658800000} resource_type="global_alert_config", operation="create", params={"application_id": "app-123", "payload": {"name": "Global Alert"}} resource_type="global_alert_config", operation="update", params={"application_id": "app-123", "id": "alert-789", "payload": {"name": "Updated Global Alert"}} resource_type="global_alert_config", operation="delete", params={"application_id": "app-123", "id": "alert-789"} resource_type="global_alert_config", operation="enable", params={"application_id": "app-123", "id": "alert-789"} resource_type="global_alert_config", operation="disable", params={"application_id": "app-123", "id": "alert-789"} resource_type="global_alert_config", operation="restore", params={"application_id": "app-123", "id": "alert-789", "created": 1710658800000}
# SETTINGS operations resource_type="settings", operation="get_all", params={"resource_subtype": "application"} resource_type="settings", operation="get", params={"resource_subtype": "application", "application_name": "My App"} resource_type="settings", operation="create", params={"resource_subtype": "application", "payload": {"label": "My App", "scope": "INCLUDE_ALL_DOWNSTREAM", "boundaryScope": "ALL"}} resource_type="settings", operation="update", params={"resource_subtype": "application", "id": "config-123", "payload": {"label": "Updated App"}} resource_type="settings", operation="delete", params={"resource_subtype": "application", "id": "config-123"} resource_type="settings", operation="order", params={"resource_subtype": "application", "request_body": ["config-1", "config-2", "config-3"]}
# RESOURCES operations resource_type="resources", operation="get_applications", params={"name_filter": "My App"} resource_type="resources", operation="get_services", params={"name_filter": "My Service", "include_snapshot_ids": True} resource_type="resources", operation="get_application_services", params={"application_id": "app-123", "service_id": "svc-456", "name_filter": "API"} resource_type="resources", operation="get_application_endpoints", params={"application_id": "app-123", "service_id": "svc-456", "endpoint_id": "ep-789", "name_filter": "/api/users", "types": ["HTTP"], "technologies": ["Java"]}
# ANALYZE operations resource_type="analyze", operation="get_all_traces", params={"payload": {"timeFrame": {"windowSize": 3600000, "to": 1710658800000}, "includeInternal": False, "includeSynthetic": False, "pagination": {"retrievalSize": 200}}} resource_type="analyze", operation="get_trace_details", params={"id": "trace-123", "retrievalSize": 100, "offset": 0, "ingestionTime": 1725519793} resource_type="analyze", operation="get_trace_groups", params={"payload": {"group": {"groupbyTag": "trace.service.name", "groupbyTagEntity": "DESTINATION"}, "metrics": [{"metric": "traces", "aggregation": "SUM"}], "timeFrame": {"to": 1710658800000, "windowSize": 3600000}}}