Grafana MCP server
Manage dashboards, users, teams, alerts, data sources, and access control
31 stars155 downloads/wk
Reviews
Write oneNobody has reviewed Grafana yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Grafana tools (100, 35 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
assign_resource_permissionsAssign or update permissions for a resource (datasource, team, dashboard, folder, or service account) by specifying the resource type and ID along with the desired permission assignments.
assign_team_roleAssign a role to a team. Requires permission to delegate team roles within your organization.
cancel_snapshotwrite actionCancel an in-progress snapshot within a cloud migration session. This operation will halt the snapshot processing at any stage of its execution pipeline.
check_datasource_healthPerforms a health check on a plugin datasource to verify its connectivity and operational status. Returns the health status of the datasource identified by the provided UID.
configure_datasource_cacheConfigure caching behavior for a specific data source, including TTL settings for queries and resources. Use this to optimize performance by controlling how long cached data persists.
convert_prometheus_rule_groupConverts a Prometheus rule group into a Grafana-compatible rule group and creates or updates it within the specified namespace. Existing groups that were not originally imported from a Prometheus source will not be replaced and will return an error.
convert_prometheus_rule_group_configConverts a Prometheus rule group into a Grafana-compatible rule group and creates or updates it in the specified namespace. Existing groups that were not originally imported from Prometheus sources will not be replaced and will return an error.
convert_prometheus_rulesConverts Prometheus rule groups into Grafana-Managed Rules format, enabling centralized rule management within Grafana.
convert_prometheus_rules_to_grafanaConverts Prometheus or Cortex rule groups into Grafana-Managed Rules format for use within Grafana's alerting system.
create_annotationwrite actionCreates an annotation in Grafana that can be scoped to a specific dashboard and panel, or created as an organization-wide annotation. For region annotations spanning a time period, include both time and timeEnd properties.
create_correlationwrite actionCreate a correlation link between two data sources, enabling navigation from a field in the source to related data in a target source or query.
create_datasourcewrite actionCreate a new data source in Grafana. Sensitive credentials like passwords are automatically encrypted and stored securely in the database. Requires `datasources:create` permission in Grafana Enterprise with Fine-grained access control enabled.
create_graphite_annotationwrite actionCreates an annotation using Graphite-compatible event format. The annotation timestamp defaults to the current time if not specified, and tags can use either modern or pre-0.10.0 Graphite formats.
create_library_elementwrite actionCreates a new library element that can be reused across dashboards and other resources. Optionally specify a folder location and provide the element configuration as a JSON model.
create_license_tokenwrite actionGenerate a new license token for the specified instance. Requires licensing:write permission to perform this operation.
create_migration_sessionwrite actionInitiate a new cloud migration session to begin the migration process. This creates a session that can be used to manage and track migration activities.
create_migration_snapshotwrite actionInitiates the creation of an instance snapshot for a cloud migration session. Returns the snapshot UID upon successful initialization.
create_public_dashboardwrite actionCreate a public dashboard link for an existing dashboard, enabling external sharing with configurable access controls and features.
create_userwrite actionCreate a new user in Grafana. Requires the `users:create` permission in Grafana Enterprise with Fine-grained access control enabled. Optionally assign the user to a different organization using the OrgId parameter when `auto_assign_org` is enabled.
delete_annotationwrite actionPermanently deletes an annotation by its unique identifier. This action cannot be undone.
delete_annotationswrite actionDelete one or more annotations from dashboards. Specify either annotation IDs or a dashboard UID to remove annotations in bulk.
delete_correlationwrite actionRemove a correlation from a datasource. This permanently deletes the specified correlation relationship.
delete_datasourcewrite actionPermanently delete a data source by its unique identifier. Requires datasources:delete permission with appropriate scopes in Grafana Enterprise with Fine-grained access control enabled.
delete_library_elementwrite actionPermanently delete a library element by its unique identifier. This action cannot be undone and will fail if the library element is currently connected to other resources.
delete_migration_sessionwrite actionPermanently delete a cloud migration session by its unique identifier. This action removes the migration session and its associated data.
delete_prometheus_rule_groupwrite actionDeletes a specific rule group from Prometheus-compatible alerting rules. This operation only succeeds if the rule group was originally imported from a Prometheus-compatible source.
delete_prometheus_rule_group_configwrite actionDeletes a specific rule group from a Prometheus-compatible source. This operation only succeeds if the rule group was originally imported from Prometheus.
delete_prometheus_rules_by_namespacewrite actionPermanently deletes all rule groups that were imported from Prometheus-compatible sources within a specified namespace. This operation removes the entire namespace and its associated rules.
delete_prometheus_rules_namespacewrite actionDeletes all rule groups that were imported from Prometheus-compatible sources within a specified namespace. This operation removes the entire namespace and its associated rules.
delete_public_dashboardwrite actionRemove a public dashboard link from a dashboard, preventing public access to the dashboard's shared view.
delete_userwrite actionPermanently delete a global user from Grafana. Requires the `users:delete` permission with `global.users:*` scope in Grafana Enterprise with Fine-grained access control enabled.
disable_datasource_cacheDisable caching for a specific data source to ensure fresh data is fetched on subsequent queries. This operation clears the cache configuration for the specified data source.
disable_userDisable a user account in Grafana. Requires the `users:disable` permission with `global.users:1` scope in Grafana Enterprise with Fine-grained access control enabled.
enable_datasource_cacheEnable caching for a data source to improve query performance and reduce load on the underlying data source.
enable_userActivate a disabled user account in Grafana. Requires the `users:enable` permission with `global.users:1` scope in Grafana Enterprise with Fine-grained access control enabled.
fetch_cloud_migration_tokenRetrieve the cloud migration token if one has been previously generated. This token is required for authenticating cloud migration operations.
fetch_datasource_resourceRetrieve data from a specific data source resource by its unique identifier and proxy route. This operation allows you to access data source resources through their configured proxy endpoints.
get_annotationRetrieve a specific annotation by its unique identifier. Returns the full annotation details including metadata and content.
get_correlationRetrieves a specific correlation by its unique identifier from a data source. Use this to fetch detailed information about a correlation relationship between data elements.
get_datasourceRetrieve a single data source by its unique identifier. Requires datasources:read permission with appropriate scopes in Grafana Enterprise with Fine-grained access control enabled.
get_datasource_cache_configRetrieve the cache configuration settings for a specific data source. Returns caching policies and parameters that control how data from this source is cached.
get_library_elementRetrieve a specific library element by its unique identifier. Returns the complete library element details for the given UID.
get_library_element_by_nameRetrieve a library element by its name. Returns the library element matching the specified name.
get_migration_sessionRetrieve details of a cloud migration session by its unique identifier. Use this to check the status, configuration, and progress of a specific migration.
get_prometheus_alert_rulesRetrieves Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace (folder).
get_prometheus_rule_groupRetrieves a single rule group in Prometheus-compatible format from a namespace. This operation is available only for rule groups that were imported from a Prometheus-compatible source.
get_prometheus_rule_group_configRetrieves a single rule group in Prometheus-compatible format from a previously imported Prometheus-compatible source configuration.
get_public_dashboardRetrieve a publicly shared dashboard by its unique identifier. This endpoint allows access to dashboards that have been configured for public sharing.
get_roleRetrieve a specific role by its unique identifier. Requires `roles:read` permission with `roles:*` scope.
get_snapshotRetrieve detailed metadata about a migration snapshot, including its processing status and results. Use pagination and filtering options to navigate large result sets.
get_user_quotaRetrieve quota information for a specific user. Requires Fine-grained access control with `users.quotas:list` permission and `global.users:1` scope in Grafana Enterprise.
grant_resource_permissionGrant or update a user's permissions for a specific resource. Supports datasources, teams, dashboards, folders, and service accounts.
grant_team_resource_permissionsGrants or updates permissions for a team to access a specific resource. Supports permissions on datasources, teams, dashboards, folders, and service accounts.
import_dashboardImport a dashboard configuration into Grafana, optionally overwriting existing dashboards and placing them in a specified folder. Supports variable substitution through inputs for dynamic dashboard provisioning.
list_annotation_tagsRetrieve all event tags that have been created in annotations, with optional filtering and pagination support.
list_annotationsRetrieve annotations from your Grafana instance, optionally filtered by alert rule, dashboard, tags, or other criteria. Annotations can be scoped to specific dashboards or be organization-wide from annotation data sources.
list_correlationsRetrieves all correlations across datasources, with optional filtering and pagination. Use this to discover relationships between data sources.
list_correlations_by_sourceRetrieves all correlations that originate from a specified data source. Use this to discover relationships and dependencies associated with a particular data source.
list_dashboard_snapshotsRetrieve a list of dashboard snapshots. Use the limit parameter to control the number of results returned.
list_dashboardsRetrieve a list of all publicly accessible dashboards. Use this to discover and display available dashboards that don't require authentication.
list_data_sourcesRetrieve all configured data sources in Grafana. Requires the `datasources:read` permission with `datasources:*` scope when Fine-grained access control is enabled in Grafana Enterprise.
list_devicesRetrieves all devices that have been active or registered within the last 30 days. Use this to get a current inventory of devices in your system.
list_devices_searchRetrieves all devices that have been active or registered within the last 30 days. Useful for monitoring recent device activity and inventory.
list_group_rolesRetrieve all roles mapped to a specific group. This endpoint is experimental and requires the `groupAttributeSync` feature flag to be enabled.
list_library_element_connectionsRetrieve all connections associated with a specific library element. Returns a list of dashboards, panels, or other resources that reference the library element.
list_library_elementsRetrieve a paginated list of all library elements that the authenticated user has permission to view. Results can be filtered, searched, and sorted to find specific elements.
list_mapped_groupsRetrieve all groups that have attribute mappings configured. This endpoint is experimental and requires the groupAttributeSync feature flag to be enabled.
list_migration_sessionsRetrieve all cloud migration sessions that have been created, providing an overview of migration projects and their current state.
list_prometheus_alert_rulesRetrieves all Grafana-managed alert rules that were imported from Prometheus-compatible sources, organized by namespace for easy navigation and management.
list_prometheus_alert_rules_by_namespaceRetrieves Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace. This operation allows you to view rules organized within a particular folder or namespace.
list_prometheus_alert_rules_from_configRetrieves all Grafana-managed alert rules that were imported from Prometheus-compatible sources, organized by namespace for easy navigation and management.
list_resource_dependenciesRetrieve the dependency graph for all resources currently eligible for migration, showing how resources depend on each other.
list_role_assignmentsRetrieve all user and team assignments for a specific role. This returns direct role assignments only and excludes assignments inherited through group attribute synchronization.
list_rolesRetrieve all available roles for the signed-in user's organization, including both global and organization-local roles. Requires the `roles:read` permission with `roles:*` scope.
list_snapshotsRetrieve a list of snapshots for a cloud migration session. Results can be paginated and sorted by creation date.
list_team_rolesRetrieve all roles assigned to a team. Requires `teams.roles:read` permission scoped to the specified team.
list_team_roles_searchRetrieve all roles that have been directly assigned to specified teams. Requires `teams.roles:read` permission with `teams:id:*` scope.
list_user_auth_tokensRetrieve all active authentication tokens (devices) for a specific user. Requires Fine-grained access control permission `users.authtoken:list` with `global.users:*` scope in Grafana Enterprise.
list_user_rolesRetrieve all directly assigned roles for a specific user. This returns only explicitly assigned roles and excludes built-in roles (Viewer, Editor, Admin, Grafana Admin) and roles inherited from team membership.
lookup_ldap_userRetrieves LDAP user details by username to preview how the user will be mapped and synchronized in Grafana. Requires the `ldap.user:read` permission when Fine-grained access control is enabled in Grafana Enterprise.
query_metricswrite actionExecute metric queries against a data source with support for expressions and custom time ranges. Requires datasources:query permission in Grafana Enterprise with Fine-grained access control enabled.
remove_license_tokenwrite actionRemove the license token from the Grafana database. This operation permanently deletes the stored license and requires the `licensing:delete` permission. Available in Grafana Enterprise v7.4+.
remove_team_rolewrite actionRemove a role assignment from a team. Requires permission to delegate team roles.
revoke_cloud_migration_tokenRevokes and removes a cloud migration token, preventing further use for cloud migration operations. This action is permanent and cannot be undone.
revoke_user_auth_tokenRevoke an authentication token for a user, forcing them to re-authenticate on their next activity. This invalidates the specified device session and logs out the user from that device.
revoke_user_roleRevoke a role assignment from a user. Requires permission to remove user roles with delegate scope to prevent privilege escalation. For bulk role updates, use the set user role assignments operation instead.
revoke_user_sessionsRevokes all active authentication tokens and sessions for a user across all devices. The user will be logged out immediately and must re-authenticate on next access. Requires the `users.logout` permission with `global.users:*` scope in Grafana Enterprise with Fine-grained access control enabled.
search_user_rolesSearch for roles directly assigned to specified users. Returns custom roles only, excluding built-in roles (Viewer, Editor, Admin, Grafana Admin) and team-inherited roles. Requires `users.roles:read` permission with `users:id:*` scope.
set_folder_permissionsSets permissions for a folder by replacing all existing permissions with the ones specified in the request. Any permissions not included will be removed.
set_user_passwordSet or reset a user's password. Requires the `users.password:update` permission with `global.users:*` scope in Grafana Enterprise with Fine-grained access control enabled.
sync_ldap_userSynchronize a single Grafana user's account with LDAP directory. Requires the `ldap.user:sync` permission in Grafana Enterprise with Fine-grained access control enabled.
update_annotationwrite actionUpdate all properties of an annotation by its ID. Use this operation to replace the entire annotation; for partial updates, use the patch annotation operation instead.
update_annotation_partialwrite actionUpdate one or more properties of an annotation by its ID. Supports modifying text content, tags, start time, and end time. Available in Grafana 6.0.0-beta2 and later.
update_correlationwrite actionUpdates an existing correlation configuration for a data source, allowing you to modify the field attachment point, data transformations, description, and label.
update_datasourcewrite actionUpdate an existing data source configuration. Sensitive credentials like passwords should be provided in secureJsonData to ensure they are encrypted and stored securely in the database.
update_library_elementwrite actionUpdate an existing library element by modifying its properties, folder location, or model configuration. Specify the library element by its unique identifier and provide the fields you want to change.
update_public_dashboardwrite actionUpdate the configuration and sharing settings of a public dashboard, including visibility, annotation display, time selection controls, and access permissions.
update_team_roleswrite actionUpdate the roles assigned to a team. Requires permissions to both add and remove team roles with delegation scope.
update_user_quotawrite actionUpdate a user's quota limit for a specific quota target. Requires the `users.quotas:update` permission with global user scope in Grafana Enterprise with Fine-grained access control enabled.
upload_snapshotwrite actionUpload a snapshot to the Grafana Migration Service for processing. This operation ingests snapshot data associated with a migration session for analysis and migration preparation.
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan5 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 138 days ago8/15
- Maintainer identityregistry namespace matches repository owner7/10
How Grafana compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 80/100
- higher than 60% of 48,255 servers
- Tools
- 100
- the typical server has 7
- Tools that change things
- 35%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 31
- more than 92% of 28,688 servers
- Downloads a week
- 155
- more than 71% of 12,191 servers with a package
What its tools let an agent do: 51 read · 12 create · 18 change · 19 delete
Install Grafana in Claude Code, Cursor or VS Code
claude mcp add grafana -- uvx mcparmory-grafana
What the publisher says
From the Grafana repository's README, as published. We do not edit it. Read it on GitHub
MCP Armory Registry
Production-ready MCP servers for popular APIs, generated by MCP Blacksmith.
Servers · Install & Usage · Features · How it works · License
MCP servers that connect AI agents to real-world APIs. Each server is a standalone Python package — generated from the upstream OpenAPI spec using MCP Blacksmith and tested against the live API before release. Hosted on MCP Armory or run independently.
<!-- SERVERS:BEGIN -->
Servers
🧠 AI & Machine Learning   ElevenLabs · Linkup · Parallel · Perplexity AI · Ragie · Replicate
📊 Analytics   Ahrefs · Datadog · Google Analytics · Google Search Console · Linkly · Mixpanel · PostHog
⛓️ Blockchain & Crypto   Alchemy NFT
💼 CRM & Sales   Apollo
💬 Communication   Atlassian Confluence · Google Gmail · MailerSend · Mailtrap · Postmark · Resend · Slack
🗄️ Data & Databases   Enigma · Pinecone
🛠️ Developer Tools   AgentQL · Apify · Bitbucket · Bright Data · Browserbase · BuiltWith · Canvas · CircleCI · Codacy · Contentful Management · ConvertAPI · E2B · Firecrawl · GitHub · GitLab · LaunchDarkly · Postman · Scrapingant · Semrush AppCenter · Sentry
📄 Documents & Printing   PDF.co
🛒 E-commerce   Shopify Admin
💰 Finance   Alpha Vantage · Polygon · Ramp
👥 HR & Recruiting   BambooHR
☁️ Infrastructure   Globalping · Grafana · PagerDuty · Rootly · Runpod
⚖️ Legal & Compliance   NetLicensing
🗺️ Maps & Location   Google Maps Platform · IP2Location.io IP Geolocation · OpenCage Geocoding
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Grafana: common questions
- Is Grafana MCP server safe?
- Mostly: it is graded B (80/100). Read the Grafana safety report
- How do I install Grafana?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Grafana need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Grafana maintained?
- The last commit was 176 days ago (2026-05-12). The latest release is v1.0.3.
- How does Grafana compare with other MCP servers?
- safety score 80/100 (higher than 60% of 48,255 servers); tools 100 (the typical server has 7); tools that change things 35% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.