Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

com.mcparmory/grafana

PYPI · MCPARMORY-GRAFANA · 2 COMPONENTS · SCANNED SEP 20

Manage dashboards, users, teams, alerts, data sources, and access control

−15 this week 62 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security37
  • Malware scan not yet available for this package.Unverified
  • No known CVEs affecting this package version or its production dependencies.Pass
  • Install-script risk not yet assessed.Unverified
  • 2 of 41 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency32
Schema Quality & AI Usability79
  • AI-judged instruction clarity (excellent).Pass
  • Tool/resource definitions use about 20635 tokens (~94/item across 218 items; 218 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
  • Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety97
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 37 of 42 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "query_metrics" implies "execute" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Partial
  • An AI judge read all 218 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the com.mcparmory/grafana MCP server?

com.mcparmory/grafana runs locally as a PyPI package, launched with uvx mcparmory-grafana. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · mcparmory-grafana

# add to Claude Code
claude mcp add com-mcparmory-grafana -- uvx mcparmory-grafana
// .cursor/mcp.json
{
  "mcpServers": {
    "com-mcparmory-grafana": {
      "command": "uvx",
      "args": [
        "mcparmory-grafana"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-mcparmory-grafana": {
      "command": "uvx",
      "args": [
        "mcparmory-grafana"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add com-mcparmory-grafana -- uvx mcparmory-grafana
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-mcparmory-grafana": {
      "type": "local",
      "command": [
        "uvx",
        "mcparmory-grafana"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-mcparmory-grafana --command uvx --arg mcparmory-grafana
# ~/.hermes/config.yaml
mcp_servers:
  com-mcparmory-grafana:
    command: "uvx"
    args: ["mcparmory-grafana"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-mcparmory-grafana": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "mcparmory-grafana"
      ]
    }
  }
}
# add to Vellum
assistant mcp add com-mcparmory-grafana -t stdio -c uvx -a mcparmory-grafana
// mcp.json
{
  "mcpServers": {
    "com-mcparmory-grafana": {
      "command": "uvx",
      "args": [
        "mcparmory-grafana"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 17 Sept 26 +1
    • Stability: 0.97 → pass security
  • 15 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 14 Sept 26 −15
    • Malware scan: pass → unverified security
  • 13 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 12 Sept 26 +15
    • Malware scan: unverified → pass security
  • 11 Sept 26 −3
    • Stability: pass → 0.80 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed pypi/mcparmory-grafana@1.0.3

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem pypi

Background: How many MCP packages publish verified provenance →

Dependencies 41 packages
Packages resolved 41
Stale 1
No linked repository 1
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 218 exposed · ~20,635 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
delete_recording_write_target ~32

Remove the remote write target configuration for recording rules. This stops forwarding recorded metrics to the configured remote destination.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

delete_service_account ~60

Permanently delete a service account by its ID. Requires serviceaccounts:delete permission and serviceaccounts:id:{serviceAccountId} scope.

NameTypeReqDescription
serviceAccountIdstringyesThe unique identifier of the service account to delete. Must be a positive integer.

No output schema declared.

No examples provided.

delete_snapshot ~40

Permanently delete a dashboard snapshot by its unique key. This action cannot be undone.

NameTypeReqDescription
keystringyesThe unique identifier of the snapshot to delete.

No output schema declared.

No examples provided.

delete_snapshot_by_delete_key ~65

Delete a snapshot using its unique delete key. Requires either public snapshot mode to be enabled or valid authentication credentials.

NameTypeReqDescription
deleteKeystringyesThe unique delete key that identifies the snapshot to be deleted. This key is typically provided when the snapshot is created or shared.

No output schema declared.

No examples provided.

delete_team ~43

Permanently delete a team by its ID. This action removes the team and all associated data.

NameTypeReqDescription
team_idstringyesThe unique identifier of the team to delete.

No output schema declared.

No examples provided.

delete_user ~69

Permanently delete a global user from Grafana. Requires the `users:delete` permission with `global.users:*` scope in Grafana Enterprise with Fine-grained access control enabled.

NameTypeReqDescription
user_idstringyesThe unique identifier of the user to delete, specified as a 64-bit integer.

No output schema declared.

No examples provided.

disable_datasource_cache ~89

Disable 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.

NameTypeReqDescription
dataSourceTypestringThe type or category of the data source, used to provide additional context for the cache disabling operation.
dataSourceUIDstringyesThe unique identifier of the data source for which caching should be disabled.

No output schema declared.

No examples provided.

disable_user ~67

Disable a user account in Grafana. Requires the `users:disable` permission with `global.users:1` scope in Grafana Enterprise with Fine-grained access control enabled.

NameTypeReqDescription
user_idstringyesThe unique identifier of the user to disable, specified as a 64-bit integer.

No output schema declared.

No examples provided.

download_csv_report ~77

Download a CSV-formatted report. Available to all users with a valid license.

NameTypeReqDescription
dashboardsstringComma-separated list of dashboard identifiers to include in the report. If omitted, the report includes all available dashboards.
titlestringCustom title for the generated CSV report. If omitted, a default title is used.

No output schema declared.

No examples provided.

enable_datasource_cache ~86

Enable caching for a data source to improve query performance and reduce load on the underlying data source.

NameTypeReqDescription
dataSourceTypestringThe type of data source (e.g., Prometheus, Graphite, Elasticsearch). Used to apply type-specific cache configuration if needed.
dataSourceUIDstringyesThe unique identifier of the data source for which caching should be enabled.

No output schema declared.

No examples provided.

enable_help_flag ~44

Enable a specific help flag for the user to control which help features or guidance are displayed.

NameTypeReqDescription
flag_idstringyesThe unique identifier of the help flag to enable.

No output schema declared.

No examples provided.

enable_user ~69

Activate 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.

NameTypeReqDescription
user_idstringyesThe unique identifier of the user to enable, specified as a 64-bit integer.

No output schema declared.

No examples provided.

export_alert_rule ~83

Export an alert rule in provisioning file format (YAML, JSON, or HCL) for use in infrastructure-as-code workflows.

NameTypeReqDescription
UIDstringyesThe unique identifier of the alert rule to export.
formatstringThe file format for the exported alert rule. Choose from YAML, JSON, or HCL. Defaults to YAML if not specified.

No output schema declared.

No examples provided.

export_alert_rule_group ~110

Export an alert rule group in provisioning file format (YAML, JSON, or HCL) for backup, version control, or migration purposes.

NameTypeReqDescription
FolderUIDstringyesThe unique identifier of the folder containing the alert rule group to export.
GroupstringyesThe name or identifier of the alert rule group to export.
formatstringThe file format for the exported provisioning file. Supports YAML, JSON, or HCL formats. Defaults to YAML if not specified.

No output schema declared.

No examples provided.

export_alert_rules ~193

Export all alert rules or a filtered subset in provisioning file format (YAML, JSON, or HCL). Useful for backing up, version controlling, or migrating alert rule configurations.

NameTypeReqDescription
folderUidarrayFilter export to specific folders by their UIDs. Provide one or more folder UIDs to limit the rules exported to those folders only.
formatstringFile format for the exported rules. Choose from YAML, JSON, or HCL. Defaults to YAML if not specified. The query parameter takes precedence over the Accept header.
groupstringFilter export to a specific rule group by name. Can only be used together with a single folder UID. Ignored if multiple folders or no folder is specified.
ruleUidstringExport a single alert rule by its UID. When specified, folderUid and group parameters must be empty. Takes precedence over folder and group filters.

No output schema declared.

No examples provided.

export_contact_points ~106

Export all provisioned contact points in your preferred format (YAML, JSON, or HCL). Optionally decrypt secure settings if you have org admin permissions.

NameTypeReqDescription
decryptbooleanWhether to decrypt sensitive settings in the export. When false (default), secure settings are redacted. Only org admins can view decrypted values.
formatstringFile format for the exported contact points. Choose from YAML, JSON, or HCL. Defaults to YAML if not specified.

No output schema declared.

No examples provided.

export_mute_timing ~84

Export a mute timing configuration in the specified provisioning format (YAML, JSON, or HCL) for use in infrastructure-as-code workflows.

NameTypeReqDescription
formatstringThe format for the exported file. Choose from YAML, JSON, or HCL. Defaults to YAML if not specified.
namestringyesThe name of the mute timing to export.

No output schema declared.

No examples provided.

export_mute_timings ~66

Export all configured mute timings in provisioning format. Returns mute timing definitions that can be used for infrastructure-as-code deployment.

NameTypeReqDescription
formatstringFile format for the exported mute timings. Choose from YAML, JSON, or HCL formats. Defaults to YAML if not specified.

No output schema declared.

No examples provided.

fetch_cloud_migration_token ~34

Retrieve the cloud migration token if one has been previously generated. This token is required for authenticating cloud migration operations.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

fetch_datasource_resource ~81

Retrieve 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.

NameTypeReqDescription
datasource_proxy_routestringyesThe unique identifier of the data source to query.
uidstringyesThe proxy route path that specifies which resource endpoint within the data source to access.

No output schema declared.

No examples provided.

get_annotation ~43

Retrieve a specific annotation by its unique identifier. Returns the full annotation details including metadata and content.

NameTypeReqDescription
annotation_idstringyesThe unique identifier of the annotation to retrieve.

No output schema declared.

No examples provided.

get_correlation ~70

Retrieves a specific correlation by its unique identifier from a data source. Use this to fetch detailed information about a correlation relationship between data elements.

NameTypeReqDescription
correlationUIDstringyesThe unique identifier of the correlation to retrieve.
sourceUIDstringyesThe unique identifier of the data source containing the correlation.

No output schema declared.

No examples provided.

get_current_user ~27

Retrieve the profile and details of the currently authenticated user. This operation requires valid authentication credentials.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_datasource ~56

Retrieve a single data source by its unique identifier. Requires datasources:read permission with appropriate scopes in Grafana Enterprise with Fine-grained access control enabled.

NameTypeReqDescription
uidstringyesThe unique identifier of the data source to retrieve.

No output schema declared.

No examples provided.

get_datasource_cache_config ~85

Retrieve the cache configuration settings for a specific data source. Returns caching policies and parameters that control how data from this source is cached.

NameTypeReqDescription
dataSourceTypestringOptional type identifier for the data source, used to filter or validate the cache configuration retrieval.
dataSourceUIDstringyesThe unique identifier of the data source for which to retrieve cache configuration.

No output schema declared.

No examples provided.

get_library_element ~48

Retrieve a specific library element by its unique identifier. Returns the complete library element details for the given UID.

NameTypeReqDescription
library_element_uidstringyesThe unique identifier of the library element to retrieve.

No output schema declared.

No examples provided.

get_library_element_by_name ~58

Retrieve a library element by its name. Returns the library element matching the specified name.

NameTypeReqDescription
library_element_namestringyesThe name of the library element to retrieve. This is the unique identifier used to look up the library element.

No output schema declared.

No examples provided.

get_migration_session ~54

Retrieve details of a cloud migration session by its unique identifier. Use this to check the status, configuration, and progress of a specific migration.

NameTypeReqDescription
uidstringyesThe unique identifier of the migration session to retrieve.

No output schema declared.

No examples provided.

get_mute_timing ~48

Retrieve a specific mute timing configuration by name. Mute timings define periods when alerts and notifications are suppressed.

NameTypeReqDescription
namestringyesThe unique identifier of the mute timing to retrieve.

No output schema declared.

No examples provided.

get_notification_template ~43

Retrieve a notification template group by name. Returns the template configuration for the specified template group.

NameTypeReqDescription
namestringyesThe name of the notification template group to retrieve.

No output schema declared.

No examples provided.

get_organization ~32

Retrieve the current organization's details and configuration. This returns metadata about the organization associated with the authenticated user or API key.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_organization_by_id ~53

Retrieve a specific organization by its unique identifier. Returns detailed organization information including metadata and configuration.

NameTypeReqDescription
org_idstringyesThe unique identifier of the organization to retrieve, provided as a 64-bit integer.

No output schema declared.

No examples provided.

get_organization_by_name ~63

Retrieve a specific organization by its name. Use this operation to look up organization details when you know the organization's name.

NameTypeReqDescription
org_namestringyesThe name of the organization to retrieve. This should be the exact organization name as it exists in the system.

No output schema declared.

No examples provided.

get_organization_quota ~46

Retrieve the current quota limits and usage for your organization. Requires the `orgs.quotas:read` permission in Grafana Enterprise with Fine-grained access control enabled.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_organization_quota_by_id ~79

Retrieve the quota limits and usage for a specific organization. Requires the `orgs.quotas:read` permission with the appropriate organization scope in Grafana Enterprise with Fine-grained access control enabled.

NameTypeReqDescription
org_idstringyesThe unique identifier of the organization whose quota information should be retrieved. Must be a positive integer.

No output schema declared.

No examples provided.

get_prometheus_alert_rules ~58

Retrieves Grafana-managed alert rules that were imported from Prometheus-compatible sources for a specified namespace (folder).

NameTypeReqDescription
NamespaceTitlestringyesThe name of the namespace (folder) containing the Prometheus-imported alert rules to retrieve.

No output schema declared.

No examples provided.

get_prometheus_rule_group ~100

Retrieves 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.

NameTypeReqDescription
GroupstringyesThe name of the rule group to retrieve. This identifies the specific group of Prometheus rules within the namespace.
NamespaceTitlestringyesThe name of the namespace containing the rule group. This identifies the organizational container where the rule group is stored.

No output schema declared.

No examples provided.

get_prometheus_rule_group_config ~66

Retrieves a single rule group in Prometheus-compatible format from a previously imported Prometheus-compatible source configuration.

NameTypeReqDescription
GroupstringyesThe name of the rule group to retrieve.
NamespaceTitlestringyesThe title or identifier of the namespace containing the rule group.

No output schema declared.

No examples provided.

get_public_dashboard ~63

Retrieve a publicly shared dashboard by its unique identifier. This endpoint allows access to dashboards that have been configured for public sharing.

NameTypeReqDescription
dashboardUidstringyesThe unique identifier of the dashboard to retrieve. This is the dashboard's UID that has been configured for public access.

No output schema declared.

No examples provided.

get_public_dashboard_access ~65

Retrieve a publicly shared dashboard using its access token. This allows viewing dashboards that have been made publicly available without requiring authentication.

NameTypeReqDescription
accessTokenstringyesThe unique access token that grants permission to view the public dashboard. This token is provided when a dashboard is shared publicly.

No output schema declared.

No examples provided.

get_role ~47

Retrieve a specific role by its unique identifier. Requires `roles:read` permission with `roles:*` scope.

NameTypeReqDescription
roleUIDstringyesThe unique identifier of the role to retrieve.

No output schema declared.

No examples provided.

get_service_account ~57

Retrieve a specific service account by its ID. Requires serviceaccounts:read permission with scope limited to the requested service account.

NameTypeReqDescription
serviceAccountIdstringyesThe unique identifier of the service account to retrieve. Must be a positive integer.

No output schema declared.

No examples provided.

get_snapshot ~241

Retrieve detailed metadata about a migration snapshot, including its processing status and results. Use pagination and filtering options to navigate large result sets.

NameTypeReqDescription
errorsOnlybooleanWhen enabled, returns only resources with error statuses, filtering out successful results. Defaults to false (all results returned).
resultLimitstringMaximum number of snapshot results to return per page, up to 100 results. Defaults to 100 if not specified.
resultPagestringPage number for paginating through snapshot results, starting from page 1. Use with resultLimit to control result sets.
resultSortColumnstringColumn to sort results by. Valid options are 'name' (resource name), 'resource_type' (type of resource), or 'status' (processing status). Defaults to system-defined sorting if not specified.
resultSortOrderstringSort direction for results: 'ASC' for ascending or 'DESC' for descending order. Defaults to ascending.
snapshotUidstringyesThe unique identifier of the snapshot to retrieve metadata for.
uidstringyesThe unique identifier of the migration session containing the snapshot.

No output schema declared.

No examples provided.

get_snapshot_by_key ~44

Retrieve a dashboard snapshot by its unique identifier. Returns the snapshot data associated with the provided key.

NameTypeReqDescription
keystringyesThe unique identifier of the snapshot to retrieve.

No output schema declared.

No examples provided.

get_team ~45

Retrieve a specific team by its unique identifier. Returns the team's details including name, members, and configuration.

NameTypeReqDescription
team_idstringyesThe unique identifier of the team to retrieve.

No output schema declared.

No examples provided.

get_team_preferences ~53

Retrieve the preferences and settings configured for a specific team, including notification defaults, display options, and other team-level configurations.

NameTypeReqDescription
team_idstringyesThe unique identifier of the team whose preferences you want to retrieve.

No output schema declared.

No examples provided.

get_user ~49

Retrieve a specific user by their unique identifier. Returns the user's profile information and details.

NameTypeReqDescription
user_idstringyesThe unique identifier of the user to retrieve, specified as a 64-bit integer.

No output schema declared.

No examples provided.

get_user_preferences ~28

Retrieve the current user's preference settings, including display options, notification settings, and other personalization choices.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_user_quota ~72

Retrieve quota information for a specific user. Requires Fine-grained access control with `users.quotas:list` permission and `global.users:1` scope in Grafana Enterprise.

NameTypeReqDescription
user_idstringyesThe unique identifier of the user whose quota information should be retrieved. Must be a positive integer.

No output schema declared.

No examples provided.

grant_resource_permission ~144

Grant or update a user's permissions for a specific resource. Supports datasources, teams, dashboards, folders, and service accounts.

NameTypeReqDescription
permissionstringThe permission level to assign. Refer to the resource-specific permissions endpoint for valid permission values for the chosen resource type.
resourcestringyesThe type of resource to grant permissions for. Must be one of: datasources, teams, dashboards, folders, or serviceaccounts.
resourceIDstringyesThe unique identifier of the resource instance for which permissions are being granted.
userIDstringyesThe numeric ID of the user or service account to grant permissions to. Must be a positive integer.

No output schema declared.

No examples provided.

Common questions

What is the com.mcparmory/grafana MCP server?

com.mcparmory/grafana is an MCP server listed in the public MCP registry as com.mcparmory/grafana. Manage dashboards, users, teams, alerts, data sources, and access control. This page covers its PyPI package (mcparmory-grafana).

Is the com.mcparmory/grafana MCP server safe to use?

com.mcparmory/grafana scores 62 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the com.mcparmory/grafana MCP server expose?

com.mcparmory/grafana exposes 218 tools: list_roles, get_role, list_role_assignments, list_team_roles_search, list_team_roles, and 213 more. Their descriptions and schemas cost roughly 20,635 tokens of context every time the server is loaded.

Is the com.mcparmory/grafana MCP server still maintained?

com.mcparmory/grafana is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.