Grafana Cloud MCP server
Note
Grafana Cloud MCP server is currently in public preview. Grafana Labs offers limited support, and breaking changes might occur prior to the feature being made generally available.
The Grafana Cloud MCP server is a remotely hosted Model Context Protocol (MCP) server that lets external AI agents connect directly to your Grafana Cloud data. MCP-compatible clients, for example, Cursor, Claude Desktop, Windsurf, and Goose, can query metrics, logs, and other observability data from your Grafana environment without any local installation.
Unlike the open source Grafana MCP server, which runs locally and requires manual service account token configuration, the Grafana Cloud MCP server is fully hosted and uses OAuth 2.1 authorization. You point your AI agent at the Grafana Cloud MCP endpoint, authorize in your browser, and your agent connects.
How Grafana Cloud MCP differs from the local OSS server
The following table compares the Grafana Cloud MCP server with the local OSS MCP server.
| Aspect | Grafana Cloud MCP server | Local OSS MCP server |
|---|---|---|
| Installation | None required. Fully hosted. | Requires local installation and configuration. |
| Authentication | OAuth 2.1 authorization flow. | Manual authentication (user/password or service account token). |
| Access scope | User-scoped. The agent has only the permissions your Grafana RBAC grants you. | Service account-scoped. Access is determined by the service account token. |
| Deployment | Grafana Cloud only. | Any Grafana instance (Cloud or self-hosted). |
Before you begin
Ensure you have the following:
- Grafana Cloud: The Grafana Cloud MCP server works only with hosted Grafana Cloud environments. Self-hosted Grafana users should use the local OSS MCP server
- Terms and conditions: An administrator must accept the Grafana Assistant terms and conditions
- Permissions: You need the Assistant Cloud MCP User role or the
grafana-assistant-app.cloud-mcp:accesspermission. Users with the Editor role or higher have this permission by default. Refer to Manage Assistant access with RBAC for details - MCP client: You need an MCP-compatible client, for example, Cursor, Claude Desktop, Windsurf, or Goose
Connect your AI agent
The following steps connect your AI agent to the Grafana Cloud MCP server.
Configure your MCP client to connect to the Grafana Cloud MCP endpoint:
https://mcp.grafana.com/mcpUse the Streamable HTTP transport type. SSE transport isn’t supported.
Run a prompt in your AI agent that requires Grafana data.
When prompted, enter your Grafana Cloud URL.
Authorize the connection in your browser.
Your AI agent is now connected to your Grafana data.
Cursor
To configure Cursor as an MCP client:
Open Settings > Features > MCP.
Click + Add New MCP Server.
Use the following configuration:
JSON{ "mcpServers": { "grafana": { "url": "https://mcp.grafana.com/mcp" } } }Save and start chatting.
Claude Desktop
To configure Claude Desktop as an MCP client, add the following to your Claude Desktop MCP configuration:
{
"mcpServers": {
"grafana": {
"url": "https://mcp.grafana.com/mcp"
}
}
}Other MCP clients
To configure any other MCP-compatible client:
- Add a new server in your client’s MCP configuration.
- Set the endpoint to
https://mcp.grafana.com/mcp. - Set the transport type to Streamable HTTP.
Configure read and write access
When you authorize a Grafana Cloud MCP connection, the consent page shows the permissions the client is requesting. You can choose which permissions to grant:
- Read access: View dashboards, alerts, incidents, and query data sources. Always available
- Write access: Create and modify dashboards, alerts, and incidents. You can uncheck this to grant read-only access
If you don’t check Write access, the agent can only query and browse your Grafana data. Write tools, for example, update_dashboard and create_incident, aren’t available.
Organization Admins can grant write access by default. If the Write access checkbox is disabled on the consent page, ask your administrator to assign you the Assistant Admin role. Refer to Manage Assistant access with RBAC for details.
Explore available tools
The Grafana Cloud MCP server exposes the same tool categories as the open source Grafana MCP server, plus Assistant-native tools, for example, infrastructure memory. Tools marked Write require the grafana:write scope.
Search and navigation
Use these tools to find dashboards, folders, and generate links to Grafana resources.
| Tool | Description |
|---|---|
search_dashboards | Search for dashboards by query string. |
search_folders | Search for folders by query string. |
generate_deeplink | Generate deeplink URLs for dashboards, panels, and Explore queries. |
Dashboards and folders
Use these tools to view and manage dashboards and folders.
| Tool | Description | Access |
|---|---|---|
get_dashboard_by_uid | Retrieve the complete dashboard JSON by UID. | Read |
get_dashboard_summary | Get a compact summary of a dashboard without the full JSON. | Read |
get_dashboard_property | Extract specific parts of a dashboard using JSONPath expressions. | Read |
get_dashboard_panel_queries | Retrieve panel queries with template variable substitution. | Read |
update_dashboard | Create or update a dashboard using full JSON or targeted patch operations. | Write |
create_folder | Create a Grafana folder. | Write |
Datasources
Use these tools to list and inspect configured datasources.
| Tool | Description |
|---|---|
list_datasources | List all configured datasources. Supports filtering by type and pagination. |
get_datasource | Get detailed information about a datasource by UID or name. |
Prometheus
Use these tools to discover metrics and execute PromQL queries.
| Tool | Description |
|---|---|
list_prometheus_metric_names | Discover available metrics with regex filtering and pagination. |
list_prometheus_metric_metadata | List metadata about currently scraped metrics. |
list_prometheus_label_names | List label names with optional series selector and time range filtering. |
list_prometheus_label_values | Get values for a specific label. |
query_prometheus | Execute PromQL instant or range queries. |
query_prometheus_histogram | Query histogram percentiles. |
Loki
Use these tools to query logs and discover label metadata.
| Tool | Description |
|---|---|
list_loki_label_names | List available label names in logs. |
list_loki_label_values | Get unique values for a specific label. |
query_loki_logs | Execute LogQL queries for log entries or metric values. |
query_loki_stats | Get statistics about log streams. |
query_loki_patterns | Detect and analyze common log patterns. |
Tempo
If you have Tempo data sources in your Grafana Cloud stack, the Grafana Cloud MCP server will proxy any tools offered by that Tempo data source.
Pyroscope
Use these tools to query profiling data.
| Tool | Description |
|---|---|
list_pyroscope_label_names | List available label names in profiles. |
list_pyroscope_label_values | List values for a specific label. |
list_pyroscope_profile_types | List available profile types. |
query_pyroscope | Query profiles or metrics from Pyroscope. |
ClickHouse
Use these tools to query ClickHouse datasources.
| Tool | Description |
|---|---|
list_clickhouse_tables | List available tables with metadata. |
describe_clickhouse_table | Get column schema for a table. |
query_clickhouse | Execute SQL queries against ClickHouse datasources. |
CloudWatch
Use these tools to query AWS CloudWatch metrics.
| Tool | Description |
|---|---|
list_cloudwatch_namespaces | List available AWS namespaces. |
list_cloudwatch_metrics | List metrics for a namespace. |
list_cloudwatch_dimensions | List dimension keys for a metric. |
query_cloudwatch | Query AWS CloudWatch metrics. |
Elasticsearch
Use this tool to search Elasticsearch datasources.
| Tool | Description |
|---|---|
query_elasticsearch | Execute Lucene or Query DSL searches against Elasticsearch datasources. |
Alerting
Use these tools to view and manage alert rules and routing configuration.
| Tool | Description | Access |
|---|---|---|
alerting_manage_rules | List, filter, and manage alert rules. With write scope, supports creating and updating rules. | Read / Write |
alerting_manage_routing | View alerting routing configuration, notification policies, contact points, and time intervals. | Read |
Annotations
Use these tools to view and create annotations on dashboards.
| Tool | Description | Access |
|---|---|---|
get_annotations | Fetch annotations filtered by dashboard UID, time range, or tags. | Read |
get_annotation_tags | Get annotation tags with optional filtering. | Read |
create_annotation | Create a new annotation on a dashboard or panel. | Write |
update_annotation | Update properties of an existing annotation. | Write |
Incidents
Use these tools to view and manage incidents.
| Tool | Description | Access |
|---|---|---|
list_incidents | List incidents with optional status filtering. | Read |
get_incident | Get full incident details by ID. | Read |
create_incident | Create a new incident. | Write |
add_activity_to_incident | Add a note to an incident’s timeline. | Write |
OnCall
Use these tools to view on-call schedules, shifts, teams, and alert groups.
| Tool | Description |
|---|---|
list_oncall_schedules | List OnCall schedules with optional team filtering. |
get_oncall_shift | Get detailed shift information. |
get_current_oncall_users | Get users currently on-call for a schedule. |
list_oncall_teams | List OnCall teams. |
list_oncall_users | List OnCall users with optional filtering. |
list_alert_groups | List alert groups with filtering by state, team, time range, and labels. |
get_alert_group | Get a specific alert group by ID. |
Sift
Use these tools to list and retrieve Sift investigations and analyses.
| Tool | Description | Access |
|---|---|---|
list_sift_investigations | List Sift investigations. | Read |
get_sift_investigation | Retrieve a Sift investigation by UUID. | Read |
get_sift_analysis | Retrieve a specific analysis from an investigation. | Read |
find_error_pattern_logs | Search Loki logs for elevated error patterns. | Write |
find_slow_requests | Search Tempo datasources for slow requests. | Write |
Other tools
Use these tools for additional Grafana tasks, including panel rendering and infrastructure summaries.
| Tool | Description |
|---|---|
get_assertions | Get assertion summary for an entity. |
get_panel_image | Render a dashboard panel as a PNG image. |
describe_infrastructure | Retrieve pre-built summaries of service groups including topology, metrics, and dependencies. |
search_logs | Search for log entries matching a text pattern across datasources. |
get_query_examples | Get example queries for datasource types. |
Manage connections
Manage your Grafana Cloud MCP connections from the Grafana Assistant Settings page in your Grafana Cloud stack.
Revoke access
To revoke a Grafana Cloud MCP connection before it expires, go to the Grafana Assistant Settings page and find the connection under MCP connections.
Session lifetime
Your OAuth token is valid for 1 hour and refreshes automatically for 30 days. After 30 days, you’re prompted to log in and re-authorize.
Data privacy
Grafana securely routes your MCP queries via proxy. Grafana doesn’t train AI models on your PromQL, LogQL queries, or prompt payload data. Refer to Privacy and security for more information.
Known limitations
- Grafana Cloud only: The Grafana Cloud MCP server doesn’t support self-hosted Grafana instances. Self-hosted users should use the local OSS MCP server
- Transport: Only Streamable HTTP is supported. SSE transport isn’t supported
Next steps
Was this page helpful?
Related resources from Grafana Labs


