⚠️ This snapshot is over 30 days old — treat the grade as stale until the next refresh. Re-scan locally to verify.
Trust Card · Static snapshot
grafana__mcp-grafana U
Ungraded — insufficient static coverage · 2 findings (1 critical) · scope excessive · Not ranked: insufficient static coverage.
Scanned 2026-10-19 · engine v0.1.3 (8 regex rules, OWASP-mapped) · upstream grafana/mcp-grafana @ e3be835 (2026-10-19)
Score breakdown
No numeric score or breakdown: insufficient static coverage. Findings remain actionable; absence of findings is not evidence of safety.
Insufficient static coverage: Unsupported source present. Findings remain actionable; absence of findings is not evidence of safety.
Coverage: limited
Static-heuristic scope: 199 analyzed / 588 discovered files; 316 unsupported source files; 390 excluded; 0 read errors; 0 truncations. This is not a semantic coverage percentage or proof of safety.
- Unsupported source present
- Coverage describes the files read and regex rules applied, not semantic, runtime, or dependency coverage.
- Supported code is JavaScript, TypeScript, and Python; JSON/YAML receive only the credential rule.
- Skill instructions and other prose are not code-analyzed; declared controls are not verified enforcement.
- Ignored directories, declarations, and non-implementation assets are outside rule scope.
File coverage, applied rules and scan limits
{
"mode": "static-heuristic",
"status": "limited",
"reasons": [
"Unsupported source present"
],
"limitations": [
"Coverage describes the files read and regex rules applied, not semantic, runtime, or dependency coverage.",
"Supported code is JavaScript, TypeScript, and Python; JSON/YAML receive only the credential rule.",
"Skill instructions and other prose are not code-analyzed; declared controls are not verified enforcement.",
"Ignored directories, declarations, and non-implementation assets are outside rule scope."
],
"discoveredFiles": 588,
"analyzedFiles": [
{
"path": ".claude-plugin/install-binary.mjs",
"scope": "code",
"bytes": 6922,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": ".claude-plugin/plugin.json",
"scope": "data",
"bytes": 519,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/ISSUE_TEMPLATE/bug-report.yml",
"scope": "data",
"bytes": 3357,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/ISSUE_TEMPLATE/config.yml",
"scope": "data",
"bytes": 595,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/ISSUE_TEMPLATE/feature-request.yml",
"scope": "data",
"bytes": 1431,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/ISSUE_TEMPLATE/new-tool-proposal.yml",
"scope": "data",
"bytes": 4484,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/actions/sign-image/action.yml",
"scope": "data",
"bytes": 2287,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/auto-tag.yml",
"scope": "data",
"bytes": 1731,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/cla-label.yml",
"scope": "data",
"bytes": 1707,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/docker.yml",
"scope": "data",
"bytes": 6813,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/docksec.yml",
"scope": "data",
"bytes": 2115,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/e2e.yml",
"scope": "data",
"bytes": 3069,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/integration.yml",
"scope": "data",
"bytes": 5457,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/mcpb.yml",
"scope": "data",
"bytes": 1831,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/release.yml",
"scope": "data",
"bytes": 5001,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/test-install-scripts.yml",
"scope": "data",
"bytes": 4763,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/token-check.yml",
"scope": "data",
"bytes": 7935,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/unit.yml",
"scope": "data",
"bytes": 3347,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".golangci.yaml",
"scope": "data",
"bytes": 872,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".goreleaser.yaml",
"scope": "data",
"bytes": 4500,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "docker-compose.yaml",
"scope": "data",
"bytes": 12173,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "docs/docs.agent/links.py",
"scope": "code",
"bytes": 2524,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "gemini-extension.json",
"scope": "data",
"bytes": 714,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "mcpb/manifest.template.json",
"scope": "data",
"bytes": 2943,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "renovate.json",
"scope": "data",
"bytes": 1722,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "scripts/build-mcpb.mjs",
"scope": "code",
"bytes": 10307,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "server.json",
"scope": "data",
"bytes": 2759,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/alertmanager.yml",
"scope": "data",
"bytes": 685,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/dashboards/demo.json",
"scope": "data",
"bytes": 3083,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/loki-config.yml",
"scope": "data",
"bytes": 1007,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/loki-rules.yml",
"scope": "data",
"bytes": 732,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/prometheus-seed.yml",
"scope": "data",
"bytes": 1159,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/prometheus.yml",
"scope": "data",
"bytes": 261,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/promtail-config.yml",
"scope": "data",
"bytes": 550,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/provisioning/alerting/alert_rules.yaml",
"scope": "data",
"bytes": 5489,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/provisioning/alerting/contact_points.yaml",
"scope": "data",
"bytes": 447,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/provisioning/alerting/routing.yaml",
"scope": "data",
"bytes": 418,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/provisioning/dashboards/dashboards.yaml",
"scope": "data",
"bytes": 631,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/provisioning/datasources/datasources.yaml",
"scope": "data",
"bytes": 4115,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/provisioning-repo/extra/broken-dashboard.json",
"scope": "data",
"bytes": 1498,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/provisioning-repo/extra/extra-dashboard.json",
"scope": "data",
"bytes": 3256,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/provisioning-repo/main/sample-dashboard.json",
"scope": "data",
"bytes": 3365,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "testdata/tempo-config.yaml",
"scope": "data",
"bytes": 674,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tests/admin_test.py",
"scope": "code",
"bytes": 4423,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/alerting_test.py",
"scope": "code",
"bytes": 15645,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/clickhouse_test.py",
"scope": "code",
"bytes": 3223,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/cloudwatch_test.py",
"scope": "code",
"bytes": 3059,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/conftest.py",
"scope": "code",
"bytes": 4760,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/dashboards_test.py",
"scope": "code",
"bytes": 2865,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/datasources_test.py",
"scope": "code",
"bytes": 2926,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/disable_write_test.py",
"scope": "code",
"bytes": 5929,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/elasticsearch_test.py",
"scope": "code",
"bytes": 4269,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/health_test.py",
"scope": "code",
"bytes": 379,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/list_tools_result_test.py",
"scope": "code",
"bytes": 3069,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/loki_test.py",
"scope": "code",
"bytes": 2317,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/mysql_test.py",
"scope": "code",
"bytes": 3111,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/navigation_test.py",
"scope": "code",
"bytes": 7660,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/postgres_test.py",
"scope": "code",
"bytes": 3119,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/rendering_test.py",
"scope": "code",
"bytes": 1781,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/tempo_test.py",
"scope": "code",
"bytes": 8835,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/utils.py",
"scope": "code",
"bytes": 6661,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tests/utils_test.py",
"scope": "code",
"bytes": 2732,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "tools/datasource_schemas/alertmanager_schema.json",
"scope": "data",
"bytes": 2023,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/cloudwatch_schema.json",
"scope": "data",
"bytes": 12758,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/elasticsearch_schema.json",
"scope": "data",
"bytes": 9369,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-amazonprometheus-datasource_schema.json",
"scope": "data",
"bytes": 5086,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-appdynamics-datasource_schema.json",
"scope": "data",
"bytes": 4235,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-astradb-datasource_schema.json",
"scope": "data",
"bytes": 3324,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-athena-datasource_schema.json",
"scope": "data",
"bytes": 4741,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-azure-data-explorer-datasource_schema.json",
"scope": "data",
"bytes": 6256,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-azure-monitor-datasource_schema.json",
"scope": "data",
"bytes": 6538,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-azuredevops-datasource_schema.json",
"scope": "data",
"bytes": 2667,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-azureprometheus-datasource_schema.json",
"scope": "data",
"bytes": 3671,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-bigquery-datasource_schema.json",
"scope": "data",
"bytes": 5034,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-clickhouse-datasource_schema.json",
"scope": "data",
"bytes": 43186,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-cockroachdb-datasource_schema.json",
"scope": "data",
"bytes": 9376,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-databricks-datasource_schema.json",
"scope": "data",
"bytes": 9055,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-datadog-datasource_schema.json",
"scope": "data",
"bytes": 4430,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-dynatrace-datasource_schema.json",
"scope": "data",
"bytes": 5144,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-falconlogscale-datasource_schema.json",
"scope": "data",
"bytes": 4098,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-github-datasource_schema.json",
"scope": "data",
"bytes": 4780,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-gitlab-datasource_schema.json",
"scope": "data",
"bytes": 2140,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-googlesheets-datasource_schema.json",
"scope": "data",
"bytes": 8061,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-honeycomb-datasource_schema.json",
"scope": "data",
"bytes": 2169,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-iot-sitewise-datasource_schema.json",
"scope": "data",
"bytes": 4841,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-jira-datasource_schema.json",
"scope": "data",
"bytes": 5499,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-looker-datasource_schema.json",
"scope": "data",
"bytes": 2102,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-mongodb-datasource_schema.json",
"scope": "data",
"bytes": 8914,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-mqtt-datasource_schema.json",
"scope": "data",
"bytes": 4883,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-newrelic-datasource_schema.json",
"scope": "data",
"bytes": 3650,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-odbc-datasource_schema.json",
"scope": "data",
"bytes": 1284,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-opensearch-datasource_schema.json",
"scope": "data",
"bytes": 6306,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-oracle-datasource_schema.json",
"scope": "data",
"bytes": 5615,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-pagerduty-datasource_schema.json",
"scope": "data",
"bytes": 2104,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-postgresql-datasource_schema.json",
"scope": "data",
"bytes": 14760,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-pyroscope-datasource_schema.json",
"scope": "data",
"bytes": 892,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-redshift-datasource_schema.json",
"scope": "data",
"bytes": 6243,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-salesforce-datasource_schema.json",
"scope": "data",
"bytes": 5983,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-saphana-datasource_schema.json",
"scope": "data",
"bytes": 5993,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-sentry-datasource_schema.json",
"scope": "data",
"bytes": 2402,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-servicenow-datasource_schema.json",
"scope": "data",
"bytes": 5369,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-snowflake-datasource_schema.json",
"scope": "data",
"bytes": 9535,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-splunk-datasource_schema.json",
"scope": "data",
"bytes": 10167,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-splunkobservability-datasource_schema.json",
"scope": "data",
"bytes": 2446,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-strava-datasource_schema.json",
"scope": "data",
"bytes": 1863,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-sumologic-datasource_schema.json",
"scope": "data",
"bytes": 2683,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-surrealdb-datasource_schema.json",
"scope": "data",
"bytes": 2350,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-timestream-datasource_schema.json",
"scope": "data",
"bytes": 4379,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-wavefront-datasource_schema.json",
"scope": "data",
"bytes": 1989,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-x-ray-datasource_schema.json",
"scope": "data",
"bytes": 3258,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/grafana-yugabyte-datasource_schema.json",
"scope": "data",
"bytes": 2133,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/graphite_schema.json",
"scope": "data",
"bytes": 3166,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/influxdb_schema.json",
"scope": "data",
"bytes": 25028,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/jaeger_schema.json",
"scope": "data",
"bytes": 1464,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/loki_schema.json",
"scope": "data",
"bytes": 19739,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/marcusolsson-csv-datasource_schema.json",
"scope": "data",
"bytes": 967,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/marcusolsson-json-datasource_schema.json",
"scope": "data",
"bytes": 684,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/mssql_schema.json",
"scope": "data",
"bytes": 9187,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/mysql_schema.json",
"scope": "data",
"bytes": 3924,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/opentsdb_schema.json",
"scope": "data",
"bytes": 3014,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/prometheus_schema.json",
"scope": "data",
"bytes": 27766,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/stackdriver_schema.json",
"scope": "data",
"bytes": 4199,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/tempo_schema.json",
"scope": "data",
"bytes": 21099,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/yesoreyeram-infinity-datasource_schema.json",
"scope": "data",
"bytes": 12472,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/datasource_schemas/zipkin_schema.json",
"scope": "data",
"bytes": 787,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/testdata/legacy_rows_dashboard.json",
"scope": "data",
"bytes": 2207,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "tools/testdata/v2beta1_dashboard.json",
"scope": "data",
"bytes": 3419,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "ui/mcp-apps/app/AppErrorBoundary.tsx",
"scope": "code",
"bytes": 1166,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app/MetricsApplication.tsx",
"scope": "code",
"bytes": 1989,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app/TraceApplication.tsx",
"scope": "code",
"bytes": 4083,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app/hostContext.ts",
"scope": "code",
"bytes": 1078,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app/metrics.tsx",
"scope": "code",
"bytes": 612,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app/metricsHostState.ts",
"scope": "code",
"bytes": 8254,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app/parsePrometheusResult.ts",
"scope": "code",
"bytes": 6377,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app/parseTraceResult.ts",
"scope": "code",
"bytes": 1911,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app/trace.tsx",
"scope": "code",
"bytes": 308,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/app.vite.config.ts",
"scope": "code",
"bytes": 911,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/localhost.vite.config.ts",
"scope": "code",
"bytes": 562,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/metrics.vite.config.ts",
"scope": "code",
"bytes": 100,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/package-lock.json",
"scope": "data",
"bytes": 101135,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "ui/mcp-apps/package.json",
"scope": "data",
"bytes": 1596,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "ui/mcp-apps/preview/Preview.styles.ts",
"scope": "code",
"bytes": 1618,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/preview/host.ts",
"scope": "code",
"bytes": 2500,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/preview/localhost.ts",
"scope": "code",
"bytes": 11498,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/preview/main.tsx",
"scope": "code",
"bytes": 5439,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/preview/trace.tsx",
"scope": "code",
"bytes": 1500,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/preview/traceFixture.ts",
"scope": "code",
"bytes": 2303,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/preview/vite.config.ts",
"scope": "code",
"bytes": 290,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/McpAppSection.styles.ts",
"scope": "code",
"bytes": 2088,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/McpAppSection.tsx",
"scope": "code",
"bytes": 1326,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/McpAppShell.styles.ts",
"scope": "code",
"bytes": 7111,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/McpAppShell.tsx",
"scope": "code",
"bytes": 7826,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/design.tsx",
"scope": "code",
"bytes": 6311,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/grafanaLink.ts",
"scope": "code",
"bytes": 1051,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/index.ts",
"scope": "code",
"bytes": 1808,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/metrics/IconButton.tsx",
"scope": "code",
"bytes": 962,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/metrics/RenderMetricsApp.styles.ts",
"scope": "code",
"bytes": 4725,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/metrics/RenderMetricsApp.tsx",
"scope": "code",
"bytes": 9312,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/metrics/VizPicker.tsx",
"scope": "code",
"bytes": 3415,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/metrics/pickViz.ts",
"scope": "code",
"bytes": 5134,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/trace/RenderTraceApp.tsx",
"scope": "code",
"bytes": 1747,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/trace/TraceViewer.styles.ts",
"scope": "code",
"bytes": 10730,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/trace/TraceViewer.tsx",
"scope": "code",
"bytes": 23394,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/trace/types.ts",
"scope": "code",
"bytes": 795,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/BarChart.tsx",
"scope": "code",
"bytes": 3602,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/Bullet.tsx",
"scope": "code",
"bytes": 5491,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/Heatmap.tsx",
"scope": "code",
"bytes": 8486,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/Stat.tsx",
"scope": "code",
"bytes": 2528,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/Table.tsx",
"scope": "code",
"bytes": 5451,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/TimeSeriesChart.tsx",
"scope": "code",
"bytes": 4293,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/Viz.styles.ts",
"scope": "code",
"bytes": 4832,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/echartsSetup.ts",
"scope": "code",
"bytes": 1360,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/format.ts",
"scope": "code",
"bytes": 8519,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/sparkline.ts",
"scope": "code",
"bytes": 1011,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/theme.ts",
"scope": "code",
"bytes": 6116,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/types.ts",
"scope": "code",
"bytes": 3357,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/src/viz/useEChart.ts",
"scope": "code",
"bytes": 2590,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/McpAppShell.test.tsx",
"scope": "code",
"bytes": 6849,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/TraceApplication.test.tsx",
"scope": "code",
"bytes": 5682,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/metrics-app.test.tsx",
"scope": "code",
"bytes": 7717,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/metrics-bullet.test.tsx",
"scope": "code",
"bytes": 3126,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/metrics-heatmap.test.tsx",
"scope": "code",
"bytes": 1236,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/metrics-host-state.test.ts",
"scope": "code",
"bytes": 2975,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/metrics-parse.test.ts",
"scope": "code",
"bytes": 6815,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/metrics-viz.test.ts",
"scope": "code",
"bytes": 17285,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/metricsFixtures.ts",
"scope": "code",
"bytes": 3968,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/timeseries-brush.test.tsx",
"scope": "code",
"bytes": 2101,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/trace-viewer.test.tsx",
"scope": "code",
"bytes": 9545,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/test/useEChart.test.tsx",
"scope": "code",
"bytes": 1282,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/trace.vite.config.ts",
"scope": "code",
"bytes": 98,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/tsconfig.build.json",
"scope": "data",
"bytes": 207,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "ui/mcp-apps/tsconfig.json",
"scope": "data",
"bytes": 410,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "ui/mcp-apps/vite.config.ts",
"scope": "code",
"bytes": 421,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/mcp-apps/vitest.config.ts",
"scope": "code",
"bytes": 279,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/panel-viewer/package-lock.json",
"scope": "data",
"bytes": 47435,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "ui/panel-viewer/package.json",
"scope": "data",
"bytes": 379,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "ui/panel-viewer/src/mcp-app.ts",
"scope": "code",
"bytes": 2957,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "ui/panel-viewer/tsconfig.json",
"scope": "data",
"bytes": 210,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "ui/panel-viewer/vite.config.ts",
"scope": "code",
"bytes": 258,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
}
],
"unsupportedSourceFiles": [
"CODEOWNERS",
"Dockerfile",
"Dockerfile.alpine",
"Makefile",
"caller_auth.go",
"caller_auth_integration_test.go",
"caller_auth_test.go",
"client_cache.go",
"client_cache_test.go",
"cmd/linters/jsonschema/main.go",
"cmd/linters/openapi/main.go",
"cmd/mcp-grafana/annotations_test.go",
"cmd/mcp-grafana/grafana_url_override_test.go",
"cmd/mcp-grafana/main.go",
"cmd/mcp-grafana/main_test.go",
"cmd/mcp-grafana/mcp_apps_test.go",
"cmd/mcp-grafana/rbac_test.go",
"cmd/mcp-grafana/readme_test.go",
"cmd/mcp-grafana/redirect_guard_test.go",
"cmd/mcp-grafana/tool_descriptions_test.go",
"docs/Makefile",
"docs/docs.mk",
"docs/make-docs",
"docs/variables.mk",
"examples/tls_example.go",
"go.mod",
"go.sum",
"grafana_url_override.go",
"grafana_url_override_test.go",
"http_security.go",
"http_security_test.go",
"image-tag",
"internal/linter/jsonschema/jsonschema_lint.go",
"internal/linter/jsonschema/jsonschema_lint_test.go",
"internal/linter/openapi/analyzer.go",
"internal/linter/openapi/analyzer_test.go",
"internal/linter/openapi/testdata/src/github.com/grafana/grafana-openapi-client-go/client/datasources/fake.go",
"internal/linter/openapi/testdata/src/testpkg/usage.go",
"internal/linter/openapi/testdata/src/testpkg/usage_test.go",
"k8s_client.go",
"k8s_client_test.go",
"k8s_resource.go",
"k8s_resource_test.go",
"mcpb/launch.sh",
"mcpgrafana.go",
"mcpgrafana_test.go",
"observability/logs.go",
"observability/logs_test.go",
"observability/observability.go",
"observability/observability_test.go",
"observability/propagation_test.go",
"observability/semconv.go",
"orgid.go",
"orgid_test.go",
"permissions.go",
"permissions_test.go",
"redirect_guard.go",
"redirect_guard_test.go",
"socks5_proxy.go",
"testdata/clickhouse-init.sql",
"testdata/clickhouse-users.xml",
"testdata/elasticsearch-seed.sh",
"testdata/gitserver/Dockerfile",
"testdata/gitserver/entrypoint.sh",
"testdata/gitserver/httpd.conf",
"testdata/graphite-seed.sh",
"testdata/influxdb-seed.sh",
"testdata/localstack-init.sh",
"testdata/mysql-init.sql",
"testdata/opensearch-seed.sh",
"testdata/orgs-seed.sh",
"testdata/postgres-init.sql",
"testdata/prometheus-entrypoint.sh",
"testdata/provisioning-repo-seed.sh",
"testdata/quickwit-seed.sh",
"tls_test.go",
"tools/admin.go",
"tools/admin_integration_test.go",
"tools/admin_test.go",
"tools/agento11y.go",
"tools/agento11y_agents.go",
"tools/agento11y_agents_test.go",
"tools/agento11y_cloud_test.go",
"tools/agento11y_eval_collections_handlers.go",
"tools/agento11y_eval_collections_test.go",
"tools/agento11y_eval_collections_types.go",
"tools/agento11y_eval_handlers.go",
"tools/agento11y_eval_test.go",
"tools/agento11y_eval_types.go",
"tools/agento11y_experiments_handlers.go",
"tools/agento11y_experiments_test.go",
"tools/agento11y_experiments_types.go",
"tools/agento11y_test.go",
"tools/agento11y_test_suites_handlers.go",
"tools/agento11y_test_suites_test.go",
"tools/agento11y_test_suites_types.go",
"tools/alerting.go",
"tools/alerting_client.go",
"tools/alerting_client_test.go",
"tools/alerting_contact_points.go",
"tools/alerting_contact_points_write_integration_test.go",
"tools/alerting_contact_points_write_test.go",
"tools/alerting_manage_rules_datasource.go",
"tools/alerting_manage_rules_datasource_test.go",
"tools/alerting_manage_rules_handlers.go",
"tools/alerting_manage_rules_test.go",
"tools/alerting_manage_rules_types.go",
"tools/alerting_manage_rules_unit_test.go",
"tools/alerting_routing.go",
"tools/alerting_routing_test.go",
"tools/alerting_routing_unit_test.go",
"tools/alerting_silences.go",
"tools/alerting_silences_test.go",
"tools/alerting_silences_unit_test.go",
"tools/annotations.go",
"tools/annotations_integration_test.go",
"tools/annotations_unit_test.go",
"tools/api.go",
"tools/api_unit_test.go",
"tools/asserts.go",
"tools/asserts_cloud_test.go",
"tools/asserts_test.go",
"tools/assistant.go",
"tools/assistant_test.go",
"tools/cloud_testing_utils.go",
"tools/cloudlogging.go",
"tools/cloudlogging_integration_test.go",
"tools/cloudlogging_test.go",
"tools/cloudmonitoring_cloud_test.go",
"tools/cloudwatch.go",
"tools/cloudwatch_integration_test.go",
"tools/cloudwatch_test.go",
"tools/config.go",
"tools/dashboard.go",
"tools/dashboard_deeplink_test.go",
"tools/dashboard_helpers.go",
"tools/dashboard_helpers_test.go",
"tools/dashboard_k8s_test.go",
"tools/dashboard_test.go",
"tools/dashboard_unit_test.go",
"tools/dashboard_v2.go",
"tools/dashboard_v2_integration_test.go",
"tools/dashboard_v2_test.go",
"tools/dashboard_versions.go",
"tools/dashboard_versions_unit_test.go",
"tools/datasource_schemas/datasource_schemas_utils.go",
"tools/datasource_schemas/datasource_schemas_utils_test.go",
"tools/datasources.go",
"tools/datasources_fallback.go",
"tools/datasources_fallback_behavior_unit_test.go",
"tools/datasources_fallback_unit_test.go",
"tools/datasources_test.go",
"tools/datasources_unit_test.go",
"tools/docs.go",
"tools/docs_unit_test.go",
"tools/ds_query.go",
"tools/elasticsearch.go",
"tools/elasticsearch_test.go",
"tools/es_backend.go",
"tools/es_backend_opensearch.go",
"tools/es_backend_opensearch_unit_test.go",
"tools/es_backend_test.go",
"tools/examples.go",
"tools/examples_test.go",
"tools/fallback_transport.go",
"tools/fallback_transport_test.go",
"tools/folder.go",
"tools/graphite.go",
"tools/graphite_integration_test.go",
"tools/graphite_unit_test.go",
"tools/hints.go",
"tools/hints_test.go",
"tools/http_redirect.go",
"tools/http_redirect_test.go",
"tools/incident.go",
"tools/incident_custom_fields.go",
"tools/incident_custom_fields_test.go",
"tools/incident_integration_test.go",
"tools/incident_test.go",
"tools/influxdb.go",
"tools/influxdb_integration_test.go",
"tools/influxdb_test.go",
"tools/legacy_grafana_integration_test.go",
"tools/loki.go",
"tools/loki_backend.go",
"tools/loki_backend_victorialogs.go",
"tools/loki_backend_victorialogs_test.go",
"tools/loki_client_unit_test.go",
"tools/loki_enforce.go",
"tools/loki_enforce_integration_test.go",
"tools/loki_enforce_test.go",
"tools/loki_guardrail.go",
"tools/loki_guardrail_metrics.go",
"tools/loki_guardrail_metrics_test.go",
"tools/loki_guardrail_unit_test.go",
"tools/loki_label_analyzer.go",
"tools/loki_label_analyzer_test.go",
"tools/loki_label_analyzer_unit_test.go",
"tools/loki_parse_test.go",
"tools/loki_test.go",
"tools/loki_unit_test.go",
"tools/navigation.go",
"tools/navigation_test.go",
"tools/oncall.go",
"tools/oncall_cloud_test.go",
"tools/oncall_proxy.go",
"tools/oncall_proxy_test.go",
"tools/oncall_test.go",
"tools/oncall_types.go",
"tools/oncall_unit_test.go",
"tools/orgid_integration_test.go",
"tools/plugins.go",
"tools/plugins_integration_test.go",
"tools/plugins_unit_test.go",
"tools/prom_backend.go",
"tools/prom_backend_cloudmonitoring.go",
"tools/prom_backend_cloudmonitoring_test.go",
"tools/prom_backend_test.go",
"tools/prom_backend_victoriametrics.go",
"tools/prom_backend_victoriametrics_test.go",
"tools/prometheus.go",
"tools/prometheus_metric_names_unit_test.go",
"tools/prometheus_metrics.go",
"tools/prometheus_metrics_test.go",
"tools/prometheus_response_limit.go",
"tools/prometheus_response_limit_test.go",
"tools/prometheus_test.go",
"tools/prometheus_ui_test.go",
"tools/prometheus_unit_test.go",
"tools/provisioning.go",
"tools/provisioning_integration_test.go",
"tools/provisioning_unit_test.go",
"tools/pyroscope.go",
"tools/pyroscope_test.go",
"tools/pyroscope_unit_test.go",
"tools/quickwit.go",
"tools/quickwit_integration_test.go",
"tools/quickwit_test.go",
"tools/rbac.go",
"tools/rendering.go",
"tools/rendering_integration_test.go",
"tools/rendering_test.go",
"tools/response_utils.go",
"tools/response_utils_test.go",
"tools/run_panel_query.go",
"tools/run_panel_query_enforce_unit_test.go",
"tools/run_panel_query_integration_test.go",
"tools/run_panel_query_postgres_test.go",
"tools/run_panel_query_test.go",
"tools/search.go",
"tools/search_test.go",
"tools/search_unit_test.go",
"tools/snapshot.go",
"tools/snapshot_unit_test.go",
"tools/sql/athena.go",
"tools/sql/athena_test.go",
"tools/sql/clickhouse.go",
"tools/sql/clickhouse_test.go",
"tools/sql/dialect.go",
"tools/sql/mssql.go",
"tools/sql/mysql.go",
"tools/sql/postgres.go",
"tools/sql/snowflake.go",
"tools/sql/snowflake_test.go",
"tools/sql/sql_test.go",
"tools/sql_cloud_test.go",
"tools/sql_integration_test.go",
"tools/sql_tools.go",
"tools/telemetry_dims_unit_test.go",
"tools/tempo.go",
"tools/tempo_integration_test.go",
"tools/tempo_trace_llm.go",
"tools/tempo_trace_view.go",
"tools/tempo_trace_view_test.go",
"tools/tempo_transport_test.go",
"tools/tempo_unit_test.go",
"tools/testcontext_test.go",
"tools/testhelpers_test.go",
"tools/time_helpers.go",
"tools/time_helpers_test.go",
"tools/url_helpers.go",
"tools/url_helpers_test.go",
"tools/user.go",
"tools/user_integration_test.go",
"tools/user_test.go",
"tools.go",
"tools_param_validation.go",
"tools_param_validation_test.go",
"tools_string_to_int_test.go",
"tools_test.go",
"trace_propagation_test.go",
"ui/mcp-apps/app/metrics.html",
"ui/mcp-apps/app/trace.html",
"ui/mcp-apps/dist/metrics.html",
"ui/mcp-apps/dist/trace.html",
"ui/mcp-apps/preview/host.html",
"ui/mcp-apps/preview/index.html",
"ui/mcp-apps/preview/localhost.html",
"ui/mcp-apps/preview/trace.html",
"ui/panel-viewer/dist/mcp-app.html",
"ui/panel-viewer/mcp-app.html",
"ui_apps.go",
"ui_embed.go",
"ui_mcp_apps_test.go",
"ui_metrics.go",
"ui_trace.go",
"usagestats/event.go",
"usagestats/mode.go",
"usagestats/mode_test.go",
"usagestats/reporter.go",
"usagestats/reporter_fields_test.go",
"usagestats/reporter_notice_test.go",
"usagestats/reporter_test.go",
"usagestats/wire_fields_test.go",
"validate_url.go",
"validate_url_test.go"
],
"excludedFiles": [
{
"path": ".git",
"reason": "ignored-directory"
},
{
"path": ".claude/skills/draft-release/SKILL.md",
"reason": "skill-instructions-not-code-analyzed"
},
{
"path": ".dockerignore",
"reason": "outside-rule-scope"
},
{
"path": ".gitattributes",
"reason": "outside-rule-scope"
},
{
"path": ".github/PULL_REQUEST_TEMPLATE.md",
"reason": "outside-rule-scope"
},
{
"path": ".gitignore",
"reason": "outside-rule-scope"
},
{
"path": "CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "CODEOWNERS",
"reason": "unsupported-implementation"
},
{
"path": "CONTRIBUTING.md",
"reason": "outside-rule-scope"
},
{
"path": "DEVELOPING.md",
"reason": "outside-rule-scope"
},
{
"path": "Dockerfile",
"reason": "unsupported-implementation"
},
{
"path": "Dockerfile.alpine",
"reason": "unsupported-implementation"
},
{
"path": "LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "Makefile",
"reason": "unsupported-implementation"
},
{
"path": "README.md",
"reason": "outside-rule-scope"
},
{
"path": "assets/icon.png",
"reason": "outside-rule-scope"
},
{
"path": "caller_auth.go",
"reason": "unsupported-implementation"
},
{
"path": "caller_auth_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "caller_auth_test.go",
"reason": "unsupported-implementation"
},
{
"path": "client_cache.go",
"reason": "unsupported-implementation"
},
{
"path": "client_cache_test.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/linters/jsonschema/main.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/linters/openapi/main.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/annotations_test.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/grafana_url_override_test.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/main.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/main_test.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/mcp_apps_test.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/rbac_test.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/readme_test.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/redirect_guard_test.go",
"reason": "unsupported-implementation"
},
{
"path": "cmd/mcp-grafana/tool_descriptions_test.go",
"reason": "unsupported-implementation"
},
{
"path": "docs/Makefile",
"reason": "unsupported-implementation"
},
{
"path": "docs/docs.agent/README.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/docs.agent/context.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/docs.agent/rules.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/docs.mk",
"reason": "unsupported-implementation"
},
{
"path": "docs/make-docs",
"reason": "unsupported-implementation"
},
{
"path": "docs/mcp-apps.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/_index.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/anonymous-usage-statistics.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/_index.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/claude-code.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/claude-desktop.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/codex.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/cursor.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/gemini-cli.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/vscode-copilot.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/windsurf.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/clients/zed.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/_index.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/authentication.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/client-tls-grafana-connection.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/command-line-flags.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/enable-and-disable-tools.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/health-check-endpoint.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/multi-organization-and-headers.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/server-tls-streamable-http.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/configure/transports-and-addresses.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/developer/_index.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/developer/build-and-test.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/developer/go-sdk.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/developer/observability-metrics-and-tracing.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/_index.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/generate-deeplinks-to-grafana.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/manage-alert-rules.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/query-logs-with-loki.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/query-metrics-with-influxdb.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/query-metrics-with-prometheus.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/run-a-dashboard-panel-query.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/search-and-inspect-dashboards.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/guides/use-grafana-incident.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/introduction.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/reference/_index.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/reference/mcp-tools-table.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/set-up/_index.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/set-up/client-configuration-examples.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/set-up/deploy-with-helm.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/set-up/install-the-binary.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/set-up/install-with-docker.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/set-up/install-with-uvx.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/troubleshooting/_index.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/sources/troubleshooting/grafana-version-compatibility.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/troubleshooting.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/variables.mk",
"reason": "unsupported-implementation"
},
{
"path": "examples/tls_example.go",
"reason": "unsupported-implementation"
},
{
"path": "go.mod",
"reason": "unsupported-implementation"
},
{
"path": "go.sum",
"reason": "unsupported-implementation"
},
{
"path": "grafana_url_override.go",
"reason": "unsupported-implementation"
},
{
"path": "grafana_url_override_test.go",
"reason": "unsupported-implementation"
},
{
"path": "http_security.go",
"reason": "unsupported-implementation"
},
{
"path": "http_security_test.go",
"reason": "unsupported-implementation"
},
{
"path": "image-tag",
"reason": "unsupported-implementation"
},
{
"path": "internal/linter/jsonschema/README.md",
"reason": "outside-rule-scope"
},
{
"path": "internal/linter/jsonschema/jsonschema_lint.go",
"reason": "unsupported-implementation"
},
{
"path": "internal/linter/jsonschema/jsonschema_lint_test.go",
"reason": "unsupported-implementation"
},
{
"path": "internal/linter/openapi/analyzer.go",
"reason": "unsupported-implementation"
},
{
"path": "internal/linter/openapi/analyzer_test.go",
"reason": "unsupported-implementation"
},
{
"path": "internal/linter/openapi/testdata/src/github.com/grafana/grafana-openapi-client-go/client/datasources/fake.go",
"reason": "unsupported-implementation"
},
{
"path": "internal/linter/openapi/testdata/src/testpkg/usage.go",
"reason": "unsupported-implementation"
},
{
"path": "internal/linter/openapi/testdata/src/testpkg/usage_test.go",
"reason": "unsupported-implementation"
},
{
"path": "k8s_client.go",
"reason": "unsupported-implementation"
},
{
"path": "k8s_client_test.go",
"reason": "unsupported-implementation"
},
{
"path": "k8s_resource.go",
"reason": "unsupported-implementation"
},
{
"path": "k8s_resource_test.go",
"reason": "unsupported-implementation"
},
{
"path": "mcpb/README.md",
"reason": "outside-rule-scope"
},
{
"path": "mcpb/icon.png",
"reason": "outside-rule-scope"
},
{
"path": "mcpb/icon.svg",
"reason": "outside-rule-scope"
},
{
"path": "mcpb/launch.sh",
"reason": "unsupported-implementation"
},
{
"path": "mcpgrafana.go",
"reason": "unsupported-implementation"
},
{
"path": "mcpgrafana_test.go",
"reason": "unsupported-implementation"
},
{
"path": "observability/logs.go",
"reason": "unsupported-implementation"
},
{
"path": "observability/logs_test.go",
"reason": "unsupported-implementation"
},
{
"path": "observability/observability.go",
"reason": "unsupported-implementation"
},
{
"path": "observability/observability_test.go",
"reason": "unsupported-implementation"
},
{
"path": "observability/propagation_test.go",
"reason": "unsupported-implementation"
},
{
"path": "observability/semconv.go",
"reason": "unsupported-implementation"
},
{
"path": "orgid.go",
"reason": "unsupported-implementation"
},
{
"path": "orgid_test.go",
"reason": "unsupported-implementation"
},
{
"path": "permissions.go",
"reason": "unsupported-implementation"
},
{
"path": "permissions_test.go",
"reason": "unsupported-implementation"
},
{
"path": "redirect_guard.go",
"reason": "unsupported-implementation"
},
{
"path": "redirect_guard_test.go",
"reason": "unsupported-implementation"
},
{
"path": "socks5_proxy.go",
"reason": "unsupported-implementation"
},
{
"path": "testdata/clickhouse-init.sql",
"reason": "unsupported-implementation"
},
{
"path": "testdata/clickhouse-users.xml",
"reason": "unsupported-implementation"
},
{
"path": "testdata/elasticsearch-seed.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/gitserver/Dockerfile",
"reason": "unsupported-implementation"
},
{
"path": "testdata/gitserver/entrypoint.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/gitserver/httpd.conf",
"reason": "unsupported-implementation"
},
{
"path": "testdata/graphite-seed.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/influxdb-seed.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/localstack-init.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/mysql-init.sql",
"reason": "unsupported-implementation"
},
{
"path": "testdata/opensearch-seed.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/orgs-seed.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/postgres-init.sql",
"reason": "unsupported-implementation"
},
{
"path": "testdata/prometheus-entrypoint.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/provisioning-repo-seed.sh",
"reason": "unsupported-implementation"
},
{
"path": "testdata/quickwit-seed.sh",
"reason": "unsupported-implementation"
},
{
"path": "tests/.gitignore",
"reason": "outside-rule-scope"
},
{
"path": "tests/.python-version",
"reason": "outside-rule-scope"
},
{
"path": "tests/README.md",
"reason": "outside-rule-scope"
},
{
"path": "tests/pyproject.toml",
"reason": "outside-rule-scope"
},
{
"path": "tests/uv.lock",
"reason": "outside-rule-scope"
},
{
"path": "tls_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/admin.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/admin_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/admin_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_agents.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_agents_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_cloud_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_eval_collections_handlers.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_eval_collections_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_eval_collections_types.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_eval_handlers.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_eval_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_eval_types.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_experiments_handlers.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_experiments_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_experiments_types.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_test_suites_handlers.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_test_suites_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/agento11y_test_suites_types.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_client.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_client_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_contact_points.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_contact_points_write_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_contact_points_write_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_manage_rules_datasource.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_manage_rules_datasource_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_manage_rules_handlers.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_manage_rules_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_manage_rules_types.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_manage_rules_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_routing.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_routing_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_routing_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_silences.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_silences_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/alerting_silences_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/annotations.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/annotations_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/annotations_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/api.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/api_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/asserts.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/asserts_cloud_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/asserts_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/assistant.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/assistant_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/cloud_testing_utils.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/cloudlogging.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/cloudlogging_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/cloudlogging_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/cloudmonitoring_cloud_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/cloudwatch.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/cloudwatch_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/cloudwatch_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/config.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_deeplink_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_helpers.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_helpers_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_k8s_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_v2.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_v2_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_v2_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_versions.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/dashboard_versions_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/datasource_schemas/datasource_schemas_utils.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/datasource_schemas/datasource_schemas_utils_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/datasources.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/datasources_fallback.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/datasources_fallback_behavior_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/datasources_fallback_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/datasources_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/datasources_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/docs.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/docs_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/ds_query.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/elasticsearch.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/elasticsearch_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/es_backend.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/es_backend_opensearch.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/es_backend_opensearch_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/es_backend_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/examples.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/examples_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/fallback_transport.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/fallback_transport_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/folder.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/graphite.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/graphite_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/graphite_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/hints.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/hints_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/http_redirect.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/http_redirect_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/incident.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/incident_custom_fields.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/incident_custom_fields_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/incident_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/incident_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/influxdb.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/influxdb_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/influxdb_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/legacy_grafana_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_backend.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_backend_victorialogs.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_backend_victorialogs_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_client_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_enforce.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_enforce_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_enforce_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_guardrail.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_guardrail_metrics.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_guardrail_metrics_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_guardrail_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_label_analyzer.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_label_analyzer_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_label_analyzer_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_parse_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/loki_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/navigation.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/navigation_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/oncall.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/oncall_cloud_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/oncall_proxy.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/oncall_proxy_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/oncall_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/oncall_types.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/oncall_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/orgid_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/plugins.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/plugins_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/plugins_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prom_backend.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prom_backend_cloudmonitoring.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prom_backend_cloudmonitoring_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prom_backend_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prom_backend_victoriametrics.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prom_backend_victoriametrics_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus_metric_names_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus_metrics.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus_metrics_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus_response_limit.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus_response_limit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus_ui_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/prometheus_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/provisioning.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/provisioning_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/provisioning_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/pyroscope.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/pyroscope_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/pyroscope_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/quickwit.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/quickwit_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/quickwit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/rbac.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/rendering.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/rendering_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/rendering_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/response_utils.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/response_utils_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/run_panel_query.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/run_panel_query_enforce_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/run_panel_query_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/run_panel_query_postgres_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/run_panel_query_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/search.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/search_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/search_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/snapshot.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/snapshot_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/athena.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/athena_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/clickhouse.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/clickhouse_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/dialect.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/mssql.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/mysql.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/postgres.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/snowflake.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/snowflake_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql/sql_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql_cloud_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/sql_tools.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/telemetry_dims_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/tempo.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/tempo_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/tempo_trace_llm.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/tempo_trace_view.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/tempo_trace_view_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/tempo_transport_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/tempo_unit_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/testcontext_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/testhelpers_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/time_helpers.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/time_helpers_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/url_helpers.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/url_helpers_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/user.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/user_integration_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools/user_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools.go",
"reason": "unsupported-implementation"
},
{
"path": "tools_param_validation.go",
"reason": "unsupported-implementation"
},
{
"path": "tools_param_validation_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools_string_to_int_test.go",
"reason": "unsupported-implementation"
},
{
"path": "tools_test.go",
"reason": "unsupported-implementation"
},
{
"path": "trace_propagation_test.go",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/.gitignore",
"reason": "outside-rule-scope"
},
{
"path": "ui/mcp-apps/README.md",
"reason": "outside-rule-scope"
},
{
"path": "ui/mcp-apps/app/metrics.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/app/trace.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/dist/metrics.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/dist/trace.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/preview/host.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/preview/index.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/preview/localhost.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/preview/trace.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/mcp-apps/src/grafana.svg",
"reason": "outside-rule-scope"
},
{
"path": "ui/mcp-apps/styles.css",
"reason": "outside-rule-scope"
},
{
"path": "ui/panel-viewer/dist/mcp-app.html",
"reason": "unsupported-implementation"
},
{
"path": "ui/panel-viewer/mcp-app.html",
"reason": "unsupported-implementation"
},
{
"path": "ui_apps.go",
"reason": "unsupported-implementation"
},
{
"path": "ui_embed.go",
"reason": "unsupported-implementation"
},
{
"path": "ui_mcp_apps_test.go",
"reason": "unsupported-implementation"
},
{
"path": "ui_metrics.go",
"reason": "unsupported-implementation"
},
{
"path": "ui_trace.go",
"reason": "unsupported-implementation"
},
{
"path": "usagestats/event.go",
"reason": "unsupported-implementation"
},
{
"path": "usagestats/mode.go",
"reason": "unsupported-implementation"
},
{
"path": "usagestats/mode_test.go",
"reason": "unsupported-implementation"
},
{
"path": "usagestats/reporter.go",
"reason": "unsupported-implementation"
},
{
"path": "usagestats/reporter_fields_test.go",
"reason": "unsupported-implementation"
},
{
"path": "usagestats/reporter_notice_test.go",
"reason": "unsupported-implementation"
},
{
"path": "usagestats/reporter_test.go",
"reason": "unsupported-implementation"
},
{
"path": "usagestats/wire_fields_test.go",
"reason": "unsupported-implementation"
},
{
"path": "validate_url.go",
"reason": "unsupported-implementation"
},
{
"path": "validate_url_test.go",
"reason": "unsupported-implementation"
}
],
"readErrors": [],
"truncation": [],
"limits": {
"maxFiles": 4000,
"maxDepth": 12,
"maxFileBytes": 1048576
}
}Fix first (2 critical/high)
| Severity | Rule | Finding | Remediation |
|---|---|---|---|
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionscripts/build-mcpb.mjs:203Evidence: const child = spawn(command, args, { stdio: "inherit", ...options }); | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egress.claude-plugin/install-binary.mjs:83Evidence: const response = await fetch(url); | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
Permissions
Scope: excessive · Shell: enabled · Network egress: yes · File deletion: enabled · Human approval: none
Provenance
License: none detected · Lockfile: no · Security policy: no · Signals: unverified origin
Independently scanned by the OpenTrustBench registry (not self-reported by the project). Static analysis only — no code executed, findings need human triage, counts may include test/example code. Static snapshot; re-scan before relying on it: npx @opentrustbench/cli scan https://github.com/grafana/mcp-grafana. Scores move with every upstream commit; pages refresh weekly. How scoring works.