This page lists every tool the Mission Control MCP server exposes,
grouped by family. For each tool, it describes what the tool does, its inputs, and its output.
For setup instructions, see Configure Mission Control MCP.
Conventions
A few conventions apply across the catalog:
- All tools are read-only. They observe and triage infrastructure. None of them create,
update, or delete resources.
- Many observability tools require a
datasourceUid. Discover datasources and their UIDs with
list_datasources. To find which datasource a dashboard panel uses, call
get_dashboard_panel_queries.
- Time formats vary by tool and are noted in each tool’s inputs. Metric query tools accept
RFC3339 timestamps or expressions relative to now, such as
now, now-1h, or now-2h45m. Log
query tools accept RFC3339 timestamps. ClickHouse tools and search_logs accept relative
expressions, RFC3339 timestamps, or Unix milliseconds.
- Every tool also accepts an optional
user_prompt string. It carries the prompt that led to
the call and is used only for server-side observability. It does not affect results and is
omitted from the tables below.
- One tool takes no parameters.
cw_cluster_get notes this in prose in
place of an input table.
The catalog is organized into eight families. Each section below describes its tools in detail.
| Family | Tools |
|---|
| Datasources | list_datasources, get_datasource |
| Metrics | list_metric_names, list_metric_metadata, list_metric_label_names, list_metric_label_values, query_metrics, query_metric_histogram |
| Logs | list_logs_label_names, list_logs_label_values, query_logs_stats, query_logs_patterns, query_logs, list_clickhouse_tables, describe_clickhouse_table, query_clickhouse, search_logs |
| Dashboards and folders | search_dashboards, get_dashboard_summary, get_dashboard_property, get_dashboard_panel_queries, get_dashboard_by_uid, search_folders, generate_deeplink |
| Documentation | search_coreweave_docs, query_filesystem_coreweave_docs |
| Clusters and nodes | cw_cluster_get, cw_cluster_describe, cw_node_list, cw_node_describe, cw_node_view |
| CoreWeave SUNK | cw_sunk_describe, cw_sunk_view |
| CoreWeave AI Object Storage | cw_cwobject_list, cw_cwobject_bucket_describe |
Datasources
Use these tools to discover the datasources available to your organization and the UIDs that the
metrics, logs, and dashboard tools need.
list_datasources
List all configured datasources in Grafana. Use it to discover available datasources and their
UIDs. Supports filtering by type and pagination.
| Parameter | Type | Required | Description |
|---|
type | string | No | Filter by datasource type. |
limit | integer | No | Maximum number of datasources to return. Default 50, maximum 100. |
offset | integer | No | Number of datasources to skip, for pagination. Default 0. |
Output: a list of datasources, each with its name, type, and UID.
get_datasource
Retrieve detailed information about a single datasource by UID or name. Provide either uid or
name. If both are given, uid takes priority.
| Parameter | Type | Required | Description |
|---|
uid | string | No | The UID of the datasource. Takes priority over name if both are provided. |
name | string | No | The name of the datasource. Used if uid is not provided. |
Output: the full datasource model, including name, type, URL, access settings, JSON data, and
secure field status.
Metrics
Query metric datasources. The typical workflow is to discover metric names, narrow with label
values, then query: run
list_metric_names, then list_metric_label_values, then query_metrics.
list_metric_names
List metric names in a metric datasource, filtered by a regular expression. Call this first to find
available metrics before querying. Supports pagination.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
regex | string | No | Regular expression to match against metric names. |
limit | integer | No | Maximum number of results to return. Default 10. |
page | integer | No | Page number to return. Default 1. |
Output: a list of metric names that match the regular expression.
List metadata about metrics currently scraped from targets, such as type, help text, and unit.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
metric | string | No | The metric to query metadata for. |
limit | integer | No | Maximum number of metrics to return. Default 10. |
limitPerMetric | integer | No | Maximum number of metadata entries to return per metric. |
Output: metric metadata entries.
list_metric_label_names
List label names in a metric datasource. Supports filtering by series selectors and a time range.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
matches | array | No | Label matchers to filter results. Each entry holds a list of filters, where a filter has a name, a value, and a type of =, !=, =~, or !~. |
startRfc3339 | string | No | Start of the time range to filter by, in RFC3339. |
endRfc3339 | string | No | End of the time range to filter by, in RFC3339. |
limit | integer | No | Maximum number of results to return. Default 100. |
Output: a list of label names.
list_metric_label_values
Get the values for a specific label name in a metric datasource. Use it after
list_metric_names to find values for filtering queries. Supports filtering by series
selectors and a time range.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
labelName | string | Yes | The name of the label to query values for. |
matches | array | No | Selectors to filter results, in the same shape as list_metric_label_names. |
startRfc3339 | string | No | Start of the time range, in RFC3339. |
endRfc3339 | string | No | End of the time range, in RFC3339. |
limit | integer | No | Maximum number of results to return. Default 100. |
Output: a list of values for the requested label.
query_metrics
Run a PromQL (Prometheus Query Language) query against a metric datasource. Supports instant
queries, which return a single point, and range queries, which return a series over a time range.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
expr | string | Yes | The expression to query. |
endTime | string | Yes | End time. RFC3339 or relative to now, such as now, now-1.5h, or now-2h45m. |
queryType | string | No | range or instant. Default range. |
startTime | string | No | Start time. Required when queryType is range, ignored when instant. |
stepSeconds | integer | No | Step size in seconds. Required when queryType is range, ignored when instant. |
Output: the query result, either a single value for an instant query or a time series for a
range query.
query_metric_histogram
Compute histogram percentiles for a histogram metric. The tool generates the histogram_quantile
expression for you. Discover histograms first by running list_metric_names with the regex
.*_bucket$.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the metric datasource. |
metric | string | Yes | Base histogram metric name, without the _bucket suffix. |
percentile | number | Yes | Percentile to calculate, such as 50, 90, 95, or 99. |
labels | string | No | Label selector, such as job="api", service="gateway". |
startTime | string | No | Start time. RFC3339, relative, or Unix milliseconds. Default now-1h. |
endTime | string | No | End time. RFC3339, relative, or Unix milliseconds. Default now. |
stepSeconds | integer | No | Step size in seconds for a range query. Default 60. |
rateInterval | string | No | Rate interval for the query. Default 5m. |
Output: the percentile time series produced by the generated histogram_quantile query.
Logs
Mission Control MCP reads logs from multiple backends. ClickHouse tools use SQL over
OpenTelemetry-style log tables. The search_logs tool works across either backend and generates
the right query for you.
list_logs_label_names
List all label names found in logs within a log datasource and time range.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
startRfc3339 | string | No | Start of the time range, in RFC3339. Default one hour ago. |
endRfc3339 | string | No | End of the time range, in RFC3339. Default now. |
Output: a list of unique label names, such as ["app", "env", "pod"].
list_logs_label_values
Get all unique values for a specific label within a log datasource and time range. Useful for
discovering filter options.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
labelName | string | Yes | The name of the label to retrieve values for, such as app, env, or pod. |
startRfc3339 | string | No | Start of the time range, in RFC3339. Default one hour ago. |
endRfc3339 | string | No | End of the time range, in RFC3339. Default now. |
Output: a list of values for the requested label.
query_logs_stats
Retrieve statistics about the log streams matching a selector. Use it to check stream size
before pulling logs. The selector must be a simple label matcher, such as
{app="nginx", env="prod"}. It does not support line filters, parsers, or aggregations.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
logql | string | Yes | A label-matcher selector. Line filters and aggregations are not supported. |
startRfc3339 | string | No | Start of the time range, in RFC3339. Default one hour ago. |
endRfc3339 | string | No | End of the time range, in RFC3339. Default now. |
Output: an object with the count of streams, chunks, entries, and total bytes, such as
{"streams": 5, "chunks": 50, "entries": 10000, "bytes": 512000}.
query_logs_patterns
Retrieve detected log patterns for a stream selector and time range. Patterns help identify
common log structures and anomalies. The selector must be a stream selector, such as {job="nginx"},
and does not support line filters or aggregations.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
logql | string | Yes | A stream selector, such as {job="foo", namespace="bar"}. |
startRfc3339 | string | No | Start of the time range, in RFC3339. Default one hour ago. |
endRfc3339 | string | No | End of the time range, in RFC3339. Default now. |
step | string | No | Query resolution step, such as 5m. |
Output: a list of patterns, each with a pattern string and a total count of occurrences.
query_logs
Run a LogQL (Loki’s Query Language) query against a log datasource to retrieve log entries or metric
values. Supports label matchers, line filters, parsers, and pipeline
operations. Check stream size with query_logs_stats and verify labels with the label tools first.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the datasource to query. |
logql | string | Yes | The query to execute, such as {app="foo"} |= "error" or rate({app="bar"}[1m]). |
queryType | string | No | range (default) or instant. Use instant for the current value of a metric query. |
startRfc3339 | string | No | Start of the time range, in RFC3339. |
endRfc3339 | string | No | End of the time range, in RFC3339. |
limit | integer | No | Maximum number of log lines to return. Default 10, maximum 100. |
direction | string | No | forward for oldest first, or backward for newest first. Default backward. |
stepSeconds | integer | No | Resolution step in seconds for range metric queries. |
Output: a list of results, each with a timestamp, labels, and either a log line (line) or a
numeric metric value (value).
list_clickhouse_tables
List the available tables in a ClickHouse datasource. Start here for ClickHouse, then use
describe_clickhouse_table to see column schemas.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the ClickHouse datasource. |
database | string | No | Database name to filter tables. Lists all non-system databases if not specified. |
Output: a list of tables, each with its name, database, engine, row count, and size.
describe_clickhouse_table
Get the column schema for a ClickHouse table. Pass the database from list_clickhouse_tables. Then
query with query_clickhouse using the discovered column names.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the ClickHouse datasource. |
table | string | Yes | The table to describe. |
database | string | No | Database name. Default default. |
Output: the column schema for the table.
query_clickhouse
Run a SQL query against a ClickHouse datasource through Grafana. Discover tables and schemas first
with list_clickhouse_tables and describe_clickhouse_table. Supports ClickHouse macros, including
$__timeFilter(column), $__from, $__to, $__interval, and ${varname}.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of the ClickHouse datasource to query. |
query | string | Yes | Raw SQL query. Supports ClickHouse macros for time filtering and variable substitution. |
start | string | No | Start time. Relative, RFC3339, or Unix milliseconds. Default one hour ago. |
end | string | No | End time. Relative, RFC3339, or Unix milliseconds. Default now. |
limit | integer | No | Maximum number of rows to return. Default 100, maximum 1000. A LIMIT is appended if the query does not contain one. |
variables | object | No | Template variable substitutions as key-value pairs, referenced as ${varname} or $varname. |
Output: the result rows from the SQL query.
search_logs
Search for log entries matching a text pattern across ClickHouse and log datasources. The tool
generates a backend-specific query based on the datasource type. For ClickHouse, run list_clickhouse_tables
first, because the default table may not exist, and the tool expects an OpenTelemetry log schema
with Timestamp and Body columns.
| Parameter | Type | Required | Description |
|---|
datasourceUid | string | Yes | The UID of a ClickHouse or log datasource. |
pattern | string | Yes | Text pattern or regular expression to search for in log messages. |
start | string | No | Start time. Relative, RFC3339, or Unix milliseconds. Default now-1h. |
end | string | No | End time. Relative, RFC3339, or Unix milliseconds. Default now. |
limit | integer | No | Maximum number of log entries to return. Default 100, maximum 1000. |
table | string | No | Table name for ClickHouse queries. Ignored for log datasources. |
Output: a list of matching log entries.
Dashboards and folders
Find dashboards, inspect them without pulling the full JSON, read the queries behind their panels,
and build shareable links.
search_dashboards
Search for Grafana dashboards by a query string.
| Parameter | Type | Required | Description |
|---|
query | string | No | The query to search for. |
limit | integer | No | Maximum number of results to return. Default 50, maximum 100. |
page | integer | No | Page number, 1-indexed. Default 1. |
Output: a list of matching dashboards, each with its title, UID, folder, tags, and URL.
get_dashboard_summary
Get a compact summary of a dashboard without the full JSON. Use it for an overview and to plan
follow-up calls without consuming large amounts of context.
| Parameter | Type | Required | Description |
|---|
uid | string | Yes | The UID of the dashboard. |
Output: a summary including the title, panel count, panel types, variables, and other metadata.
get_dashboard_property
Get specific parts of a dashboard using a JSONPath expression, to minimize context usage. Common
paths include $.title, $.panels[*].title, $.templating.list, and $.panels[*].targets[*].expr.
| Parameter | Type | Required | Description |
|---|
uid | string | Yes | The UID of the dashboard. |
jsonPath | string | Yes | JSONPath expression to extract specific data. |
Output: the values extracted by the JSONPath expression.
get_dashboard_panel_queries
Retrieve the queries behind a dashboard’s panels. Supports all datasource types and row-nested
panels. Optionally filter to one panel, and optionally substitute template variables.
| Parameter | Type | Required | Description |
|---|
uid | string | Yes | The UID of the dashboard. |
panelId | integer | No | Filter to a specific panel by ID. |
variables | object | No | Template variable substitutions, such as {"job": "api-server"}. Populates processedQuery and requiredVariables. |
Output: an array of objects with title, query (the raw expression), and datasource (an
object with uid and type). When variables are provided, each object also includes
processedQuery, refId, and requiredVariables.
get_dashboard_by_uid
Retrieve the complete dashboard, including panels, variables, and settings, by UID.
Large dashboards can consume significant context. Prefer get_dashboard_summary for an overview
or get_dashboard_property for specific data.
| Parameter | Type | Required | Description |
|---|
uid | string | Yes | The UID of the dashboard. |
Output: the full dashboard JSON.
search_folders
Search for Grafana folders by a query string.
| Parameter | Type | Required | Description |
|---|
query | string | No | The query to search for. |
Output: a list of matching folders, each with its title, UID, and URL.
generate_deeplink
Generate a deeplink URL for a Grafana resource. Supports dashboards, panels, and Explore queries.
| Parameter | Type | Required | Description |
|---|
resourceType | string | Yes | The type of resource: dashboard, panel, or explore. |
dashboardUid | string | No | Dashboard UID. Required for dashboard and panel types. |
panelId | integer | No | Panel ID. Required for the panel type. |
datasourceUid | string | No | Datasource UID. Required for the explore type. |
queries | array | No | Query objects for Explore links, such as [{"refId":"A","expr":"up"}]. |
queryParams | object | No | Additional URL query parameters, for dashboard and panel types. |
timeRange | object | No | Time range with from and to fields, such as {"from": "now-1h", "to": "now"}. |
Output: the deeplink URL.
Documentation
Search and read CoreWeave public documentation so an agent answers product and API questions from
current docs.
search_coreweave_docs
Search the CoreWeave Docs knowledge base for relevant information, code examples, API references,
and guides. Start here for broad or conceptual questions. To read a specific page in full, pass its
path to query_filesystem_coreweave_docs.
| Parameter | Type | Required | Description |
|---|
query | string | Yes | The query to search the documentation with. |
Output: contextual content with titles and direct links to the documentation pages.
query_filesystem_coreweave_docs
Run a read-only, shell-like query against a virtual, in-memory filesystem that contains the
CoreWeave Docs pages and OpenAPI specs. This is a sandbox, not a real shell. It is how you read a
page in full: pass a page’s .mdx path to head or cat. Supported commands include rg, grep,
find, tree, ls, cat, head, tail, stat, wc, sort, uniq, cut, sed, awk, and
jq. Each call is stateless and starts at the root path.
| Parameter | Type | Required | Description |
|---|
command | string | Yes | A shell-like command to run against the documentation filesystem, such as rg -il "keyword" /, tree / -L 2, or head -80 /path/file.mdx. |
Output: the command output, truncated to 30 KB per call.
Clusters and nodes
Inspect CoreWeave Kubernetes Service (CKS) clusters and their nodes. These tools are scoped to what
your CoreWeave API token can access.
cw_cluster_get
List all CoreWeave clusters the caller can see.
This tool takes no parameters.
Output: a tabular list of clusters.
cw_cluster_describe
Describe a CoreWeave (CKS) cluster, including its nodes, node pools, data-plane components,
networking, and observability.
| Parameter | Type | Required | Description |
|---|
cluster_name | string | Yes | The CKS cluster name. |
Output: the cluster description, as tabular text.
cw_node_list
List the nodes in a CoreWeave (CKS) cluster.
| Parameter | Type | Required | Description |
|---|
cluster_name | string | Yes | The CKS cluster name. |
Output: a tabular list of nodes.
cw_node_describe
Describe a node in a CoreWeave (CKS) cluster, including its instance type, GPU information,
conditions, HPC-verification status, and events.
| Parameter | Type | Required | Description |
|---|
cluster_name | string | Yes | The CKS cluster name. |
node_id | string | Yes | The node identifier. |
Output: the node description, as tabular text.
cw_node_view
Return the Grafana dashboard URL for a node in a CoreWeave (CKS) cluster.
| Parameter | Type | Required | Description |
|---|
cluster_name | string | Yes | The CKS cluster name. |
node_id | string | Yes | The node identifier. |
Output: the dashboard URL, as plain text.
CoreWeave SUNK
Inspect CoreWeave SUNK clusters, which run Slurm on Kubernetes on top of a CKS cluster.
cw_sunk_describe
Describe a SUNK cluster running on top of a CoreWeave (CKS) cluster.
| Parameter | Type | Required | Description |
|---|
cluster_name | string | Yes | The underlying CKS cluster name, used to select the right access. |
sunk_cluster | string | Yes | The SUNK cluster name. |
Output: the SUNK cluster description, as tabular text.
cw_sunk_view
Return the Grafana dashboard URL for a SUNK cluster.
| Parameter | Type | Required | Description |
|---|
cluster_name | string | Yes | The underlying CKS cluster name, used to select the right access. |
sunk_cluster | string | Yes | The SUNK cluster name. |
Output: the dashboard URL, as plain text.
CoreWeave AI Object Storage
Inspect CoreWeave AI Object Storage buckets and the objects within them.
cw_cwobject_list
List CoreWeave AI Object Storage buckets, or list the objects under an s3:// path.
| Parameter | Type | Required | Description |
|---|
s3_path | string | No | An s3://bucket/prefix path to list under. Omit to list buckets. |
Output: a tabular list of buckets, or of objects under the given path.
cw_cwobject_bucket_describe
Describe a CoreWeave AI Object Storage bucket, including its organization, location, usage, and
audit-logging status.
| Parameter | Type | Required | Description |
|---|
bucket_name | string | Yes | The bucket name. |
Output: the bucket description, as tabular text.