Server data from the Official MCP Registry
Grafana dashboards, datasources, Prometheus, Loki, and alerts from your MCP client.
About
Grafana dashboards, datasources, Prometheus, Loki, and alerts from your MCP client.
Security Report
dashmetrics is a read-oriented Grafana MCP server that authenticates with a bearer service account token from environment variables and exposes dashboard, datasource, Prometheus/Loki query, and alert rule tools. No malicious patterns, shell execution, hardcoded secrets, or data exfiltration were found; network access to the configured Grafana instance matches its purpose. Minor observations concern the legacy API key fallback and the lack of a regex complexity guard, which do not meaningfully affect the score. Supply chain analysis found 4 known vulnerabilities in dependencies (0 critical, 2 high severity). Package verification found 1 issue.
8 files analyzed · 10 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
What You'll Need
Set these up before or after installing:
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-cloudcorprecords-dashmetrics": {
"env": {
"GRAFANA_URL": "your-grafana-url-here",
"GRAFANA_SERVICE_ACCOUNT_TOKEN": "your-grafana-service-account-token-here"
},
"args": [
"-y",
"@reneturcios/dashmetrics"
],
"command": "npx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
dashmetrics
dashmetrics gives an MCP client or a terminal read access to a Grafana instance: dashboard search and retrieval, datasource inspection, Prometheus range queries with metric and label discovery, Loki log queries with label discovery, and the provisioned alert rules and contact points. It is a clean-room rebuild of the documented core of Grafana's MCP tool surface, built from Grafana's public HTTP API documentation.
Point it at an instance with GRAFANA_URL (default
http://localhost:3000) and authenticate with a service account token
in GRAFANA_SERVICE_ACCOUNT_TOKEN, sent as a Bearer token. The legacy
GRAFANA_API_KEY variable is accepted as a fallback when the primary
variable is unset. When no token is set, every call fails with an
error that names GRAFANA_SERVICE_ACCOUNT_TOKEN; when the instance is
unreachable, the error names the base URL it tried.
Install
npx @reneturcios/dashmetrics list_datasources
Or run the container image:
docker run -i -e GRAFANA_URL -e GRAFANA_SERVICE_ACCOUNT_TOKEN ghcr.io/cloudcorprecords/dashmetrics
The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.
CLI
Every MCP tool is also a CLI subcommand. Tool arguments are passed as
one JSON object with --json:
export GRAFANA_URL=http://localhost:3000
export GRAFANA_SERVICE_ACCOUNT_TOKEN=<redacted>
dashmetrics search_dashboards --json '{"query": "api", "limit": 5}'
dashmetrics get_dashboard_by_uid --json '{"uid": "dash-1"}'
dashmetrics list_datasources
dashmetrics query_prometheus --json '{"datasourceUid": "prom1", "expr": "up", "start": "now-1h", "end": "now", "step": "15s"}'
dashmetrics query_loki_logs --json '{"datasourceUid": "loki1", "query": "{job=\"api\"}"}'
dashmetrics list_alert_rules
dashmetrics --version
Results print as JSON. Exit codes: 0 on success, 1 when an API
call fails (including a missing token), 2 for usage errors.
MCP server
One bin serves both faces. The mcp subcommand starts a stdio MCP
server:
npx -y @reneturcios/dashmetrics mcp
MCP client configuration:
{
"mcpServers": {
"dashmetrics": {
"command": "npx",
"args": ["-y", "@reneturcios/dashmetrics", "mcp"],
"env": {
"GRAFANA_URL": "http://localhost:3000",
"GRAFANA_SERVICE_ACCOUNT_TOKEN": "your Grafana service account token"
}
}
}
}
Tools
| Tool | Input (required in bold) | What it does |
|---|---|---|
search_dashboards | query, limit, type | Searches dashboards/folders (/api/search). |
get_dashboard_by_uid | uid | Returns one dashboard by uid. |
list_datasources | — | Lists configured datasources. |
get_datasource_by_uid | uid | Returns one datasource by uid. |
query_prometheus | datasourceUid, expr, start, end, step | Prometheus range query via the datasource proxy. |
list_prometheus_metric_names | datasourceUid, regex | Lists metric names, regex-filtered. |
list_prometheus_label_names | datasourceUid, metric | Lists label names. |
list_prometheus_label_values | datasourceUid, label, metric | Lists one label's values. |
query_loki_logs | datasourceUid, query, start, end, limit | Loki LogQL range query via the proxy. |
list_loki_label_names | datasourceUid | Lists Loki label names. |
list_loki_label_values | datasourceUid, label | Lists one Loki label's values. |
list_alert_rules | limit | Lists provisioned alert rules. |
get_alert_rule_by_uid | uid | Returns one provisioned alert rule. |
list_contact_points | limit | Lists provisioned contact points. |
Prometheus and Loki calls go through Grafana's documented datasource
proxy paths (/api/datasources/proxy/uid/{uid}/...). Out of scope:
incident creation/update, on-call schedules, Sift/Asserts, and
admin/user management — see BUILD-REPORT.md.
Development
npm install
npm run build # tsc -> dist/
npm test # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev # run the CLI from source via tsx
License
MIT — see LICENSE.
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Rea
Freeby Morluto · Developer Tools
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Paperclip
Freeby Paperclipai · Developer Tools
Trending hip-hop artist momentum scores across four cultural dimensions.
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Lharries · Communication
Read, search, and send WhatsApp messages through your AI assistant
