mrkeyoor.com_
Sun 20 Sept 03:40 UTC
Dev Toolsevaluationupdated 20 Sept 2026

gcx review

gcx is Grafana's Go command-line client for querying observability data and managing dashboards, alerts, and other Grafana resources. It gives people and coding agents the same structured commands, with extra product commands when the target is Grafana Cloud.

Verdict

Our gcx run installed 57 packages in 20 seconds and built in 4, but it exposed no test target and pip-audit found 1 known vulnerability. Use it if Grafana is already your operating console and you can give each human or agent a narrowly scoped role. Stay with Terraform for declarative ownership, or use the Grafana MCP server when an AI client is the only interface you need.

We ran it

Lab card: what happened when we ran gcxScreenshot of gcx (grafana.com)
Install✓ · 20s57 packages · 149 MB
Build✓ · 4s
Testsn/ano test script
Known vulns1(pip-audit)
Repo2545 files~336,348 lines of source · 15.7 MB · 7 CI workflows

Answers from our run

Does gcx build from source?

Dependencies installed in 20 seconds (57 packages), and the build succeeded in 4 seconds. We cloned commit ddfcca8 into a clean Debian container with 3 CPUs and no project-specific setup.

Does gcx have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Does gcx have known vulnerabilities in its dependencies?

pip-audit flagged 1 known advisory in the dependency tree at the time of our run.

Who should not use gcx?

Operators on Grafana 11 or older: gcx detects versions below 12 and exits, while Grafana 12 is no longer actively supported.

What are the alternatives to gcx?

Grafana MCP server, Terraform Provider for Grafana. Our gcx run installed 57 packages in 20 seconds and built in 4, but it exposed no test target and pip-audit found 1 known vulnerability.

Setup4/520-second install; credentials and version gates add work
Docs5/5Clear matrices cover versions, auth, Cloud limits, and deletion
Community4/5707 stars and 169 open issues with September 2026 activity
Maturity4/5GA release, active fixes, and explicit compatibility boundaries

Who it’s for

Grafana operators who want metrics, logs, traces, alerts, and dashboards available from one CLI.
Platform teams storing Grafana resources in Git and previewing changes before a push.
Developers giving a coding agent narrow, auditable access to an existing Grafana stack.
Claude Code users who want Grafana's packaged investigation and setup skills.

Who it’s NOT for

Operators on Grafana 11 or older: gcx detects versions below 12 and exits, while Grafana 12 is no longer actively supported.
Self-hosters expecting every Grafana Cloud feature: SLO, IRM, k6, Fleet, Adaptive Telemetry, and Assistant commands are Cloud-only or limited in BYOC.
Teams unwilling to scope agent credentials carefully: resource deletion has no confirmation prompt for named selectors, and type-wide deletion can proceed with --force or --yes.
Anyone needing one credential for every command: Cloud product APIs can require a separate Cloud Access Policy token in addition to instance authentication.

Setup reality

Our sandbox checkout of commit ddfcca8 installed in 20 seconds: 57 packages and 149 MB on disk. The build succeeded in 4 seconds. The harness found no test script or target, so tests were skipped; pip-audit reported 1 known vulnerability. The checkout contained 2,545 files and roughly 336,348 source lines.

Useful commands need a Grafana 13, Grafana Cloud, Enterprise, or compatible Grafana 12 endpoint plus credentials. Browser login uses the OS credential store. Automation normally uses a service account token, while several Cloud products need a separate Cloud Access Policy token.

Prebuilt binaries cover Linux, macOS, and Windows. Self-hosted datasource queries need manually configured endpoints, and some Grafana 12 resource writes need a feature toggle and restart. Named resource deletes do not prompt, so dry runs and narrow roles matter before an agent gets write access.

One CLI can query Grafana and change its resources

gcx puts dashboards, alerts, metrics, logs, traces, and profiles behind one command tree. It works with Grafana Cloud, Enterprise, and OSS, and it can emit JSON or YAML for scripts. People can use it directly in a terminal; coding agents get compact output plus packaged skills for investigations and setup work. The result is useful when Grafana already contains the operational truth and opening the web interface breaks the flow.

The project is a Go CLI, although our lab's dependency harness classified the measured checkout as Python. The live README targets Grafana 13 for full self-hosted support, with Grafana 12 receiving only security patches during its remaining support window. Anything below version 12 is rejected with exit code 6. That firm cutoff makes gcx a poor fit for older Grafana estates, even if their HTTP APIs still answer.

Git-backed resource changes come with a sharp delete command

Dashboards and folders can be pulled into local files, validated, previewed, and pushed back. gcx also imports dashboards as Go builder code and can lint resources with Rego rules. That is a practical bridge between an operator inspecting a panel and a repository owning the next revision. The raw API command covers endpoints that do not yet have a dedicated command.

Write access deserves more care than the friendly workflow suggests. A named resources delete action has no confirmation prompt. A type-only selector can delete every matching resource after --force or --yes, while --dry-run is available for preview. Give an agent Viewer access for queries unless its task truly needs Editor or Admin, then keep the target context and namespace explicit.

What happened when we ran it

Our sandbox installed commit ddfcca8 in 20 seconds, adding 57 packages and using 149 MB on disk. The build completed successfully in 4 seconds. The unprivileged Debian container had 3 CPUs and 8 GB of RAM, with no secrets. Those results cover repository setup and compilation; they do not measure Grafana API latency or the time required to configure a real stack.

The checkout had 2,545 files, about 336,348 lines of source, and measured 15.7 MB before the installed packages. We found 7 CI workflow files and a Compose file, with no Dockerfile or tests directory. The harness found no test script or target, so it skipped tests. Pip-audit reported 1 known vulnerability. The lab record does not identify the affected package, so we cannot responsibly claim its reach or severity.

Grafana 13 gets the complete self-hosted path

Core resource, alerting, raw API, and signal-query commands work across supported Grafana deployments. Grafana Cloud adds SLO, Synthetic Monitoring, IRM, k6, Fleet, Adaptive Telemetry, and Assistant commands. On a self-hosted stack, datasource endpoints for Prometheus, Loki, Tempo, and Pyroscope must be configured manually rather than discovered from the stack.

Grafana 12 has a specific trap around managed alert rules. Writing them through the resource API needs the kubernetesAlertingRules feature toggle, a server restart, and Unified Alerting. Issue 989 tracks a general way for each command to declare its required server version and feature flags. Until that lands, check the compatibility table before turning a working read workflow into an automated write workflow.

Authentication can involve two credentials and an OS keychain

Interactive Grafana Cloud login opens a browser and stores OAuth material in the operating system's credential store. Version 1.3.0 fails closed if that keychain is unavailable, unless the user explicitly sets GCX_KEYCHAIN=off and accepts plaintext storage. A sandboxed coding agent may need approval to run the login outside its sandbox, which is a sensible restriction around production tokens.

Automation usually uses a Grafana service account token. Cloud product commands can also need a Cloud Access Policy token, since instance authentication and the Cloud platform are separate. The README maps Viewer to query and read work, Editor to resource changes, and Admin to datasource configuration. gcx also sends limited usage statistics to Grafana Labs and links to instructions for disabling them.

September 2026 activity is fast, with breaking changes still arriving

GitHub showed 707 stars and 263 open issues and pull requests when fetched. Search returned 169 open issues, and the repository's last push was September 19, 2026. The newest release we found, v1.3.0 from September 14, changed keychain failure behavior, Fleet permissions, Synthetic Monitoring probe manifests, and several output shapes. This is active software, but automation needs version pins and release-note review.

The open queue also reflects work still in motion. Issue 1360 asks for nested folder paths in dashboard listings, while issue 1359 requests persistent include and exclude filters for resources. Neither prevents the documented core flow. They do show why gcx works best as a controlled operator tool, with output checked before it becomes an agent's unattended input.

Choose gcx when Grafana is already the center of operations

The strongest alternative depends on the job. grafana/mcp-grafana is a direct MCP server for AI clients and supports older Grafana versions than gcx. grafana/terraform-provider-grafana gives infrastructure teams durable desired state and plan review. gcx earns its place between them: it handles live queries, investigations, agent skills, and Git-backed resource work from the same binary.

Our 20-second install and 4-second build make a trial cheap, but the skipped test step and 1 audit finding leave verification work for your own environment. Start with a Viewer token against a non-production context. Promote only the commands you have checked, use dry runs for resource changes, and treat version upgrades as changes to an operational interface rather than routine package refreshes.

Alternatives

ProjectWhat it isPick it when
Grafana MCP server gh↗An MCP server that exposes Grafana tools directly to compatible AI clients.pick this instead when the main user is an MCP client and you do not need gcx's shell, GitOps, or packaged CLI workflow.
Terraform Provider for GrafanaA Terraform provider for declaring Grafana and Grafana Cloud resources as infrastructure.pick this instead when reviewable Terraform plans and persistent desired state matter more than ad hoc queries and investigations.

What people are saying

  1. [github-trending] grafana/gcx

Sources

  1. gcx repository and README
  2. gcx v1.3.0 release notes
  3. Issue 989: declare per-command Grafana requirements
  4. Issue 1360: nested folder support
  5. Issue 1359: resource exclusion filters

More dev tools reviews

QtScrcpy · mold · blockbench · python-patterns · opcode · mdBook · the whole board →