{
  "data": {
    "a": {
      "slug": "cronitor-mcp",
      "name": "Cronitor MCP server",
      "vendor": "Cronitor",
      "vendorUrl": "https://cronitor.io",
      "kind": "mcp",
      "category": "observability",
      "summary": "Cronitor's hosted MCP server lets an agent create and manage cron job, heartbeat and uptime monitors, issues, status pages, alert integrations and metrics in a Cronitor account, over OAuth or an API key.",
      "url": "https://www.anchorterminal.com/tools/cronitor-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/cronitor-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/cronitor-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/cronitor-mcp.json",
      "dns": "cronitor-mcp.grade.anchorterminal.com",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://cronitor.io/mcp",
      "packages": [],
      "auth": "oauth",
      "authNotes": "OAuth through protected-resource metadata, with sign-in and consent in a browser; the token carries the user's role, capped at the SDK Integration key's permissions, with no scope selection. An API key in a header works for headless clients, with the key's granular read or write scopes.",
      "pricing": "freemium",
      "pricingNotes": "Free forever for 5 monitors. Business is $2 a monitor and $5 a user a month after a 14-day trial (checked 2026-11-07).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the MCP docs or pricing page (checked 2026-11-07).",
        "endpoints": []
      },
      "toolCount": 71,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-07"
      },
      "docsUrl": "https://cronitor.io/docs/mcp-server",
      "llmsTxt": "https://cronitor.io/llms.txt",
      "registryName": "io.cronitor/cronitor",
      "capabilities": [
        "observability.incidents",
        "observability.metrics",
        "events.schedule",
        "agent.tools"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "remote-mcp",
        "oauth",
        "api-key",
        "freemium",
        "free-tier",
        "status-page",
        "llms-txt",
        "mcp-registry"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59.1,
        "grade": "C",
        "agentReady": false,
        "rank": 718,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 7,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 73,
          "maintenance": 55,
          "payments": 40,
          "reliability": 55,
          "schema": 80,
          "security": 58,
          "transparency": 37
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-07"
        },
        "negative": 0,
        "verdict": "Cronitor's MCP server is one of the most carefully documented we've read, with strict input schemas, summary modes, typed error codes and clear advice on secrets in monitor output. It has 71 tools, publishes no changelog, and its terms and privacy pages are closed to crawlers, so data handling couldn't be checked.",
        "bestFor": "Teams who monitor cron jobs, heartbeats and sites with Cronitor and want an agent to set up and triage monitoring.",
        "strengths": [
          "Strict input schemas (additionalProperties false) with enums and required combinations",
          "Summary modes with paging keep list output small",
          "JSON-RPC error codes with retry_after_seconds and required_scope",
          "Clear guidance on secrets in event messages and output",
          "Free plan for 5 monitors"
        ],
        "weaknesses": [
          "71 tools, a heavy context load",
          "No public changelog",
          "Terms and privacy closed to crawlers, so unread",
          "No audit log of agent calls found"
        ],
        "agentNotes": [
          "Start with list_monitors and list_issues in summary mode",
          "Ask the user before expanding event messages, command output or request bodies",
          "On a rate-limit error, wait retry_after_seconds",
          "Over the plan's monitor limit, new monitors are saved but disabled"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59.1
          }
        ],
        "editorialScores": {
          "ergonomics": 73,
          "maintenance": 55,
          "payments": 40,
          "reliability": 55,
          "schema": 80,
          "security": 58,
          "transparency": 25
        },
        "provenanceScore": 48,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-07",
            "maintenance": "2026-11-07",
            "payments": "2026-11-07",
            "reliability": "2026-11-07",
            "schema": "2026-11-07",
            "security": "2026-11-07",
            "transparency": "2026-11-07"
          },
          "last": "2026-11-07",
          "oldest": "2026-11-07",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "claudeCode": "claude mcp add cronitor --transport http https://cronitor.io/mcp",
        "config": {
          "mcpServers": {
            "cronitor": {
              "url": "https://cronitor.io/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/observability.incidents",
        "tool": "https://letme.dev/cronitor-mcp"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "Cronitor",
        "domain": "cronitor.io",
        "domainRegistered": "",
        "domainNote": "Not looked up: RDAP isn't requested under the 1 November 2026 rules.",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "",
        "statusPage": "https://status.cronitor.io",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-07",
        "notes": [
          "robots.txt disallows the terms and privacy pages, so the legal entity wasn't read.",
          "security.txt answered 404."
        ],
        "score": 48
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/cronitor-mcp.json",
      "live": {
        "slug": "cronitor-mcp",
        "probe": {
          "target": "https://cronitor.io/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-11-08T01:01:26.14186466Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 584,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 627,
          "p95ms24h": 717,
          "samples24h": 64,
          "samples30d": 64,
          "days": [
            {
              "date": "2026-11-07",
              "probes": 53,
              "ok": 53
            },
            {
              "date": "2026-11-08",
              "probes": 11,
              "ok": 11
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.cronitor.io",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-08T00:31:11.053343459Z"
        },
        "updatedAt": "2026-11-08T01:01:26.14186466Z"
      }
    },
    "answer": "Grafana MCP Server scores 71 (BB) on agent readiness against Cronitor MCP server's 59.1 (C), and leads in every scored category.",
    "b": {
      "slug": "grafana-mcp-server",
      "name": "Grafana MCP Server",
      "vendor": "Grafana Labs",
      "vendorUrl": "https://grafana.com/docs/grafana/latest/developer-resources/mcp/",
      "kind": "mcp",
      "category": "observability",
      "summary": "Grafana Labs' open-source MCP server for Grafana. It runs locally or self-hosted and gives agents dashboards, datasource queries (Prometheus, Loki, Tempo, Pyroscope and others), alerting, incidents and OnCall on a self-managed Grafana or Grafana Cloud.",
      "url": "https://www.anchorterminal.com/tools/grafana-mcp-server",
      "markdownUrl": "https://www.anchorterminal.com/tools/grafana-mcp-server.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/grafana-mcp-server.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/grafana-mcp-server.json",
      "dns": "grafana-mcp-server.grade.anchorterminal.com",
      "repo": "https://github.com/grafana/mcp-grafana",
      "license": "Apache-2.0",
      "transports": [
        "stdio",
        "sse",
        "streamable-http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "mcp-grafana"
        },
        {
          "registry": "oci",
          "name": "grafana/mcp-grafana"
        },
        {
          "registry": "go",
          "name": "github.com/grafana/mcp-grafana/v2"
        }
      ],
      "auth": "mixed",
      "authNotes": "The server signs in to Grafana with a service account token (`GRAFANA_SERVICE_ACCOUNT_TOKEN`, or a file path in `GRAFANA_SERVICE_ACCOUNT_TOKEN_FILE` that is re-read on each request), or with `GRAFANA_USERNAME` and `GRAFANA_PASSWORD`. An admin creates the token in Grafana, self-serve, and Grafana RBAC sets what it can do. The README lists the permissions each tool needs. Over streamable HTTP a caller can send its own token in `X-Grafana-Service-Account-Token`, and `--server-auth-token` makes callers present a bearer token to the server itself. stdio needs no caller credential.",
      "pricing": "free",
      "pricingNotes": "Free and open source under Apache-2.0, with nothing to buy for the server. It needs a Grafana instance, which can be self-managed open-source Grafana or Grafana Cloud. Grafana Cloud prices were not checked. The separate hosted Grafana Cloud MCP server counts towards Grafana Assistant usage (checked 2026-10-08).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, the docs or the changelog (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 119,
      "popularity": {
        "githubStars": 3535,
        "npmWeekly": null,
        "pypiWeekly": 151923,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://grafana.com/docs/grafana/latest/developer-resources/mcp/",
      "llmsTxt": "https://grafana.com/llms.txt",
      "registryName": "io.github.grafana/mcp-grafana",
      "capabilities": [
        "observability.metrics",
        "observability.logs",
        "observability.traces",
        "observability.incidents",
        "work.oncall"
      ],
      "tags": [
        "official",
        "local",
        "open-source",
        "self-hosted",
        "mcp",
        "go",
        "docker",
        "helm",
        "grafana",
        "llms-txt",
        "telemetry-default-on"
      ],
      "lastRelease": "2026-10-20",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 71,
        "grade": "BB",
        "agentReady": true,
        "rank": 172,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 1,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 96,
          "payments": 60,
          "reliability": 91,
          "schema": 81,
          "security": 67,
          "transparency": 80
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "high",
          "date": "2026-11-01"
        },
        "negative": -7,
        "negativeNotes": [
          "-2: CVE-2026-15583 (high, CVSS 8.6), published by Grafana Labs on 15 July 2026. Before the fix, a URL in the then undocumented `X-Grafana-URL` request header made the server send its environment service account token to a host the caller chose, an unauthenticated exfiltration path on the HTTP transports. The changelog records the fix in 0.17.2 on 13 July, the advisory lists 0.17.1. Fixed and published, about three months old (https://grafana.com/security/security-advisories/cve-2026-15583/).",
          "-2: CVE-2026-19516 (critical, CVSS 9.1), published on 11 August 2026. A caller of `grafana_api_request` could still steer the server's requests through `X-Grafana-URL` to internal, loopback and link-local services, metadata endpoints included, and read the responses, since the July fix guarded only the token. Fixed in 1.1.0 on 10 August, which removed the header, and published, about two months old (https://grafana.com/security/security-advisories/cve-2026-19516/).",
          "-3: v2.1.0, a minor release on 20 October 2026, changed `list_users_by_org` to a paginated tool that returns `{totalCount, page, perPage, orgUsers}` instead of an array of users. The changelog labels it Breaking on the day, and no earlier notice was found (CHANGELOG.md changed only in the release commit, and the 7 October pull request changed only the tool's description). The admin tools are off by default and Grafana Labs says agents need no changes, so the floor (https://github.com/grafana/mcp-grafana/blob/main/CHANGELOG.md)."
        ],
        "verdict": "Every default tool declares typed inputs and read-only and destructive annotations in source, and `--disable-write` cuts the default 79 tools to 62. Writes and a general `grafana_api_request` tool are on by default, the default list is long at 79 tools, and two `X-Grafana-URL` flaws, one rated critical, were fixed in July and August 2026.",
        "bestFor": "Teams on Grafana, self-managed or Cloud, that want an agent to read dashboards and query Prometheus, Loki, Tempo and Pyroscope, and to work with alert rules, incidents and OnCall.",
        "strengths": [
          "All 79 default tools in 2.0.2 build typed JSON Schema inputs from Go parameter structs and set `readOnlyHint` and `destructiveHint`, and 73 also set `idempotentHint`, read from source at tag v2.0.2",
          "`--disable-write`, `--disable-query`, per-category flags and Loki enforced matchers narrow what the server can do, with a per-tool table of required RBAC permissions",
          "16 tagged releases between 28 July and 7 October 2026, with a Keep a Changelog file that labels breaking changes",
          "Listed in the official MCP registry under the verified `io.github.grafana` namespace, with 2.0.2 marked latest from 10 October 2026",
          "Dashboard summary, JSONPath property reads, jq filtering and a 100-line Loki default keep responses small"
        ],
        "weaknesses": [
          "The default set is 79 tools, and 119 with every category on, counted from the registration code in source",
          "Write tools and `grafana_api_request`, which can call any Grafana API path, are enabled unless the operator turns them off",
          "Anonymous usage statistics went from off by default in 1.5.0 (17 September 2026) to on by default in 2.0.0",
          "Two `X-Grafana-URL` flaws in 2026, a token leak (CVE-2026-15583, high) and an SSRF (CVE-2026-19516, critical), fixed in 0.17.2 and 1.1.0",
          "Minor release 2.1.0 changed `list_users_by_org` output on 20 October 2026 with no advance notice, and the repository has no SECURITY.md"
        ],
        "agentNotes": [
          "Start with `--disable-write` unless the task needs writes, and add `--disable-api` to remove `grafana_api_request`",
          "Pass `--enabled-tools` with only the categories needed. The default list loads 79 tools",
          "Use `get_dashboard_summary` or `get_dashboard_property` with a JSONPath before `get_dashboard_by_uid`, which returns the whole dashboard JSON",
          "Set `GRAFANA_USAGE_STATS=disabled` or `DO_NOT_TRACK=1` to stop the four-hourly usage report to stats.grafana.org",
          "Use streamable HTTP, not SSE, when each caller needs its own token or organisation, and set `--server-auth-token` on any non-loopback address"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "high",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 71
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 96,
          "payments": 60,
          "reliability": 91,
          "schema": 81,
          "security": 67,
          "transparency": 81
        },
        "provenanceScore": 78,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "uvx mcp-grafana",
        "config": {
          "mcpServers": {
            "grafana": {
              "args": [
                "mcp-grafana"
              ],
              "command": "uvx",
              "env": {
                "GRAFANA_SERVICE_ACCOUNT_TOKEN": "\u003cyour service account token\u003e",
                "GRAFANA_URL": "http://localhost:3000"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/observability.metrics",
        "tool": "https://letme.dev/grafana-mcp-server"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "Raintank Inc., d/b/a Grafana Labs",
        "domain": "grafana.com",
        "domainRegistered": "2014-05-27",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "https://grafana.com/legal/privacy-policy/",
        "statusPage": "",
        "changelog": "https://github.com/grafana/mcp-grafana/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "No terms document governs this software beyond the Apache-2.0 licence, so `terms` is left out.",
          "The privacy policy (last updated 10 July 2026) names Raintank Inc., d/b/a Grafana Labs, 165 Broadway, 23rd Floor, New York, and says its open-source and commercial software may report usage statistics.",
          "grafana.com/.well-known/security.txt returns 404. Reports go to an Intigriti disclosure programme or security@grafana.com, with no bounties (https://grafana.com/legal/report-a-security-issue/).",
          "RDAP for grafana.com gives a registration date of 2014-05-27.",
          "The server runs on the owner's machine. Usage reports go to stats.grafana.org, a second Grafana Labs domain."
        ],
        "score": 78
      },
      "requirements": {
        "setupChecked": true,
        "complianceChecked": true,
        "card": "no",
        "freeTier": true,
        "minutes": 10,
        "credential": "api-key",
        "hosting": [
          "self-hosted"
        ],
        "euResidency": "unknown",
        "trainsOnData": "no",
        "zeroRetention": "unknown",
        "selfHost": "yes"
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/grafana-mcp-server.json",
      "live": {
        "slug": "grafana-mcp-server",
        "versions": [
          {
            "registry": "github",
            "name": "grafana/mcp-grafana",
            "version": "v2.2.0",
            "released": "2026-11-02",
            "seenAt": "2026-11-08T01:00:37.310857858Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.github.grafana/mcp-grafana",
            "version": "v2.2.0",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          },
          {
            "registry": "pypi",
            "name": "mcp-grafana",
            "version": "2.2.0",
            "released": "2026-11-02",
            "seenAt": "2026-11-08T01:00:37.205129217Z"
          }
        ],
        "githubStars": 3646,
        "pypiWeekly": 139742,
        "securityTxt": {
          "url": "https://grafana.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:58.46969156Z"
        },
        "llmsTxt": {
          "url": "https://grafana.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:38.010479679Z"
        },
        "domain": {
          "domain": "grafana.com",
          "registered": "2014-05-27",
          "source": "https://rdap.verisign.com/com/v1/domain/grafana.com",
          "checkedAt": "2026-11-01T14:20:13.960632327Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/grafana/mcp-grafana/main/CHANGELOG.md",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-11-07T14:21:15.947319941Z",
            "changedAt": "2026-11-03T07:59:43.081071646Z",
            "fingerprint": "78c3abe924b6"
          },
          {
            "url": "https://grafana.com/legal/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:10:36.514372444Z",
            "changedAt": "2026-11-04T08:24:38.454854719Z",
            "fingerprint": "dec83a9810c5"
          }
        ],
        "github": {
          "repo": "grafana/mcp-grafana",
          "checkedAt": "2026-11-02T08:52:46.468852437Z",
          "stars": 3631,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T08:37:17Z",
          "openIssues": 55,
          "openPRs": 38,
          "issuesOpened90d": 92,
          "issuesClosed90d": 113,
          "prsMerged90d": 267,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 48,
            "failure": 2,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-11-02T08:35:00Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 6,
            "medianDays": 1.2
          }
        },
        "updatedAt": "2026-11-08T01:00:37.310857858Z"
      }
    },
    "edges": [
      {
        "by": 43,
        "category": "transparency",
        "leads": "grafana-mcp-server",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "robots.txt disallows the terms and privacy pages, so neither was read (5 of 30, terms exist but weren't readable). Data handling only from the security page (encryption, backups) (10 of 30). No deprecation policy found; the docs version the error codes by protocol revision (5 of 20). Subprocessors not found (5 of 20). 5 + 10 + 5 + 5 = 25.",
          "b": "Apache-2.0 (30). Local software that talks to the configured Grafana. A docs page lists every field in the usage report, the destination, and the region and network name the receiving service adds, and the Grafana Labs privacy policy (last updated 10 July 2026) covers usage statistics from its open-source software. No retention period for the reports was found (24 of 30). No deprecation policy. Notices come without dates, such as `GRAFANA_API_KEY` to be removed 'in a future version', and the Sift tools were marked deprecated before 2.0.0 removed them (10 of 20). Usage statistics are documented with three opt-outs and a `log` mode that prints the report without sending it. They arrived off by default in 1.5.0 on 17 September 2026 and were switched on by default in 2.0.0, noted in the changelog (17 of 20)."
        },
        "scores": {
          "a": 37,
          "b": 80
        }
      },
      {
        "by": 41,
        "category": "maintenance",
        "leads": "grafana-mcp-server",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Registry entry io.cronitor/cronitor updated 3 November 2026 (30). No dated changelog found to count (0). Support page and docs; no public changelog (10 of 15). Official registry entry under its own namespace, and official SDKs (15). No package to read (0). 30 + 0 + 10 + 15 + 0 = 55. Registry presence read from Anchor Terminal's own daily import of the official MCP registry (/api/v1/registry.json, 6 November 2026), not the registry's API.",
          "b": "v2.1.1 tagged on 20 October 2026, 12 days before the check, after v2.1.0 the same day, with commits on main to 31 October (30). 17 tagged releases from 1.1.0 on 10 August to 2.1.1 in the 90 days to 1 November (20). Per the 8 October check, not re-read on 1 November, 38 issues closed in the 30 days before that check against 54 open and 22 open pull requests, and several feature requests from March and April without a reply (21 of 25). Listed in the official MCP registry as `io.github.grafana/mcp-grafana`, a GitHub-verified namespace, with v2.1.1 published on 20 October and marked latest (15). Renovate, a Docker image scan workflow, cosign signing with SPDX SBOMs for releases from 2.1.0, and Go toolchain and dependency bumps for CVEs on 21 and 28 October (10)."
        },
        "scores": {
          "a": 55,
          "b": 96
        }
      },
      {
        "by": 36,
        "category": "reliability",
        "leads": "grafana-mcp-server",
        "name": "Reliability",
        "reasons": {
          "a": "Status page at status.cronitor.io with components for the APIs and telemetry regions (20). No history was readable (history.rss 404, uptime 'No data available') (5). Rate limits are returned with limit and window in the error data, but no numbers are published (5 of 15). Rate-limit errors carry retry_after_seconds, bulk deletes validate every key first, and the docs say which repeated calls are safe (15). No SLA found (0). Not labelled beta (10). 20 + 5 + 5 + 15 + 0 + 10 = 55.",
          "b": "Scored as local software, since the owner runs it over stdio, SSE or streamable HTTP. Official PyPI package `mcp-grafana` (a wheel that carries the Go binary, Python 3.10 or later), a Docker image, release binaries and a Helm chart, with Grafana 9.0 or later stated as the requirement (20). Unit, integration and end-to-end workflows all concluded in success on main on 8 October 2026, per the 8 October check, not re-read on 1 November (25). Per the 8 October check, not re-read on 1 November, 54 open issues, none labelled bug, and 38 closed in the 30 days before that check. Three bug reports remained open from July and August (#992 `run_panel_query` 422, #1005 `grafana_api_request` 500 on plugin resources, #1049 a dropped table row in `get_panel_image`), each with replies. A stale issue and pull request workflow was added on 27 October (19 of 25). The changelog follows Keep a Changelog and semantic versioning and labels breaking changes, and 1.6.2 announced that 2.0 came next. Patch release 1.4.1 carried a breaking parameter change on the Sift tools, 2.0.0 followed 1.0.0 by two months, and minor release 2.1.0 on 20 October changed the output of `list_users_by_org`, labelled on the day (12 of 15). Version 2.1.1, the latest release on 1 November (15)."
        },
        "scores": {
          "a": 55,
          "b": 91
        }
      },
      {
        "by": 20,
        "category": "payments",
        "leads": "grafana-mcp-server",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No machine payment protocol (0). Per-monitor and per-user prices public (20). Free plan for 5 monitors, no card mentioned (20). A person signs up or signs in through a browser (0). 0 + 20 + 20 + 0 = 40.",
          "b": "Read with the self-hosted rule. The server is free under Apache-2.0 and needs no signup of its own, so 20 + 20 + 20. No x402, MPP or L402 (0). It needs a Grafana instance, which can be the free open-source Grafana. Grafana Cloud prices were not checked. The separate hosted Grafana Cloud MCP server counts towards Grafana Assistant usage and is not what this listing grades."
        },
        "scores": {
          "a": 40,
          "b": 60
        }
      },
      {
        "by": 9,
        "category": "security",
        "leads": "grafana-mcp-server",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "OAuth bounded by role with no scope choice, or scoped API keys (22 of 30). Read-only users get only read tools; write tools follow the role (14 of 20). The docs warn that event messages, command output and request bodies can hold customer data or secrets, and tell the agent to ask before expanding them; secrets are redacted (12 of 15). No audit log of MCP calls found (0). The security page covers encryption and relies on AWS's certifications; no security.txt (404) and no disclosure policy found (10 of 20). 22 + 14 + 12 + 0 + 10 = 58.",
          "b": "The server holds a Grafana service account token, which Grafana RBAC can scope by action and resource and which can be revoked. `GRAFANA_SERVICE_ACCOUNT_TOKEN_FILE` is re-read on each request for rotation. Username and password and a deprecated API key also work. The open-source server has no OAuth, and no secret travels in a URL (25 of 30). `--disable-write`, `--disable-query`, per-category flags, Loki enforced matchers and a per-tool RBAC table support least privilege. Writes are on by default, the default set includes `grafana_api_request` for any API path, and nothing asks for confirmation (14 of 20). Log lines, dashboards and annotations reach the model as stored. No injection guidance was found in the README or docs, and issue #680 on the subject has been open since 24 March 2026 (2 of 15). OpenTelemetry traces, metrics and logs per tool call and slow-request logging, with arguments left out of spans unless `--include-args-in-spans` is set (10 of 15). Grafana Labs runs a disclosure programme on Intigriti without bounties, lists ISO 27001 and SOC 2 Type 2, and publishes advisories on grafana.com, two of them for this server (CVE-2026-15583 on 15 July and CVE-2026-19516 on 11 August 2026). The repository has no SECURITY.md and grafana.com has no security.txt (16 of 20)."
        },
        "scores": {
          "a": 58,
          "b": 67
        }
      }
    ],
    "facts": [
      {
        "a": "MCP server",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Cronitor",
        "b": "Grafana Labs",
        "name": "Vendor"
      },
      {
        "a": "https://cronitor.io/mcp",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP",
        "b": "stdio, SSE (legacy), Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "71",
        "b": "119",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "io.cronitor/cronitor",
        "b": "io.github.grafana/mcp-grafana",
        "name": "MCP registry"
      },
      {
        "a": "none",
        "b": "2026-10-20",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-07-10",
        "name": "Privacy policy last updated"
      },
      {
        "a": "none",
        "b": "3.5k stars, 152k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Grafana MCP Server scores 71 (BB) on agent readiness against Cronitor MCP server's 59.1 (C), and leads in every scored category.",
        "question": "Which is better for AI agents, Cronitor MCP server or Grafana MCP Server?"
      },
      {
        "answer": "Cronitor MCP server uses an OAuth sign-in. Grafana MCP Server takes an API key or an OAuth sign-in.",
        "question": "Do Cronitor MCP server and Grafana MCP Server need an API key?"
      },
      {
        "answer": "Cronitor MCP server has a hosted endpoint at https://cronitor.io/mcp. Grafana MCP Server runs on your own machine, with no hosted endpoint listed.",
        "question": "Can an agent call Cronitor MCP server and Grafana MCP Server without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Cronitor MCP server. Grafana MCP Server is open source (Apache-2.0).",
        "question": "Are Cronitor MCP server and Grafana MCP Server open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": [
          "A hosted endpoint, with nothing to install",
          "No incidents deducted, where Grafana MCP Server loses 7 points for them"
        ],
        "goodFor": "Teams who monitor cron jobs, heartbeats and sites with Cronitor and want an agent to set up and triage monitoring.",
        "slug": "cronitor-mcp",
        "watchFor": "71 tools, a heavy context load"
      },
      {
        "aheadOn": [
          "Reliability, 91 against 55",
          "Security \u0026 auth, 67 against 58",
          "Payments \u0026 pricing, 60 against 40",
          "Maintenance \u0026 community, 96 against 55",
          "Transparency \u0026 trust, 80 against 37"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine",
          "Open source"
        ],
        "goodFor": "Teams on Grafana, self-managed or Cloud, that want an agent to read dashboards and query Prometheus, Loki, Tempo and Pyroscope, and to work with alert rules, incidents and OnCall.",
        "slug": "grafana-mcp-server",
        "watchFor": "The default set is 79 tools, and 119 with every category on, counted from the registration code in source"
      }
    ],
    "history": {
      "cronitor-mcp": null,
      "grafana-mcp-server": [
        {
          "causes": [
            "event"
          ],
          "date": "2026-11-01",
          "delta": -3,
          "from": 74,
          "fromGrade": "BB",
          "to": 71,
          "toGrade": "BB"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-28",
          "delta": 0.1,
          "from": 73.9,
          "fromGrade": "BB",
          "to": 74,
          "toGrade": "BB"
        },
        {
          "causes": [
            "product",
            "evidence",
            "event"
          ],
          "date": "2026-10-17",
          "delta": -0.6,
          "from": 74.5,
          "fromGrade": "BB",
          "to": 73.9,
          "toGrade": "BB"
        }
      ]
    },
    "job": {
      "capability": "observability.incidents",
      "name": "Incidents"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/axiom-vs-cronitor-mcp.json",
        "title": "Axiom MCP Server vs Cronitor MCP server",
        "url": "https://www.anchorterminal.com/compare/axiom-vs-cronitor-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/better-stack-vs-cronitor-mcp.json",
        "title": "Better Stack vs Cronitor MCP server",
        "url": "https://www.anchorterminal.com/compare/better-stack-vs-cronitor-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/causely-vs-cronitor-mcp.json",
        "title": "Causely MCP server vs Cronitor MCP server",
        "url": "https://www.anchorterminal.com/compare/causely-vs-cronitor-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/causely-vs-grafana-mcp-server.json",
        "title": "Causely MCP server vs Grafana MCP Server",
        "url": "https://www.anchorterminal.com/compare/causely-vs-grafana-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-datadog-mcp.json",
        "title": "Cronitor MCP server vs Datadog MCP Server",
        "url": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-datadog-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-incident-io.json",
        "title": "Cronitor MCP server vs incident.io API",
        "url": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-incident-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-new-relic.json",
        "title": "Cronitor MCP server vs New Relic MCP Server",
        "url": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-new-relic"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-pagerduty-mcp.json",
        "title": "Cronitor MCP server vs PagerDuty MCP Server",
        "url": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-pagerduty-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-rootly-mcp.json",
        "title": "Cronitor MCP server vs Rootly MCP Server",
        "url": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-rootly-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-incident-io.json",
        "title": "Grafana MCP Server vs incident.io API",
        "url": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-incident-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-pagerduty-mcp.json",
        "title": "Grafana MCP Server vs PagerDuty MCP Server",
        "url": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-pagerduty-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-rootly-mcp.json",
        "title": "Grafana MCP Server vs Rootly MCP Server",
        "url": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-rootly-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axiom-vs-grafana-mcp-server.json",
        "title": "Axiom MCP Server vs Grafana MCP Server",
        "url": "https://www.anchorterminal.com/compare/axiom-vs-grafana-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/better-stack-vs-grafana-mcp-server.json",
        "title": "Better Stack vs Grafana MCP Server",
        "url": "https://www.anchorterminal.com/compare/better-stack-vs-grafana-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-honeycomb-mcp.json",
        "title": "Cronitor MCP server vs Honeycomb MCP",
        "url": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-honeycomb-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/datadog-mcp-vs-grafana-mcp-server.json",
        "title": "Datadog MCP Server vs Grafana MCP Server",
        "url": "https://www.anchorterminal.com/compare/datadog-mcp-vs-grafana-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-honeycomb-mcp.json",
        "title": "Grafana MCP Server vs Honeycomb MCP",
        "url": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-honeycomb-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-new-relic.json",
        "title": "Grafana MCP Server vs New Relic MCP Server",
        "url": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-new-relic"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-sentry-mcp.json",
        "title": "Grafana MCP Server vs Sentry MCP",
        "url": "https://www.anchorterminal.com/compare/grafana-mcp-server-vs-sentry-mcp"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 36,
        "cronitor-mcp": 55,
        "edge": "grafana-mcp-server",
        "grafana-mcp-server": 91,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 1,
        "cronitor-mcp": 80,
        "edge": "grafana-mcp-server",
        "grafana-mcp-server": 81,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 1,
        "cronitor-mcp": 73,
        "edge": "grafana-mcp-server",
        "grafana-mcp-server": 74,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 9,
        "cronitor-mcp": 58,
        "edge": "grafana-mcp-server",
        "grafana-mcp-server": 67,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 20,
        "cronitor-mcp": 40,
        "edge": "grafana-mcp-server",
        "grafana-mcp-server": 60,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 41,
        "cronitor-mcp": 55,
        "edge": "grafana-mcp-server",
        "grafana-mcp-server": 96,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 43,
        "cronitor-mcp": 37,
        "edge": "grafana-mcp-server",
        "grafana-mcp-server": 80,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Grafana MCP Server scores 71 (BB) on agent readiness against Cronitor MCP server's 59.1 (C), and leads in every scored category. Both do incidents.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "cronitor-mcp": "Cronitor's MCP server is one of the most carefully documented we've read, with strict input schemas, summary modes, typed error codes and clear advice on secrets in monitor output. It has 71 tools, publishes no changelog, and its terms and privacy pages are closed to crawlers, so data handling couldn't be checked.",
      "grafana-mcp-server": "Every default tool declares typed inputs and read-only and destructive annotations in source, and `--disable-write` cuts the default 79 tools to 62. Writes and a general `grafana_api_request` tool are on by default, the default list is long at 79 tools, and two `X-Grafana-URL` flaws, one rated critical, were fixed in July and August 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-grafana-mcp-server",
    "json": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-grafana-mcp-server.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-grafana-mcp-server.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-grafana-mcp-server.min.md"
  },
  "markdown": "Grafana MCP Server scores 71 (BB) on agent readiness against Cronitor MCP server's 59.1 (C), and leads in every scored category. Both do incidents.\n\n- Cronitor MCP server: grade C, 59.1/100, rank #718 of 1510. Markdown https://www.anchorterminal.com/tools/cronitor-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/cronitor-mcp.json\n- Grafana MCP Server: grade BB, 71/100, rank #172 of 1510. Markdown https://www.anchorterminal.com/tools/grafana-mcp-server.md · JSON https://www.anchorterminal.com/api/v1/tools/grafana-mcp-server.json\n- Best observability and incident tools for AI agents: https://www.anchorterminal.com/best/observability/index.md\n- All 59 observability comparisons: https://www.anchorterminal.com/compare/observability/index.md\n\n## Which one, for what\n\n### Cronitor MCP server (C)\n\nGood for: Teams who monitor cron jobs, heartbeats and sites with Cronitor and want an agent to set up and triage monitoring.\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n- No incidents deducted, where Grafana MCP Server loses 7 points for them\n\nWatch for: 71 tools, a heavy context load\n\n### Grafana MCP Server (BB)\n\nGood for: Teams on Grafana, self-managed or Cloud, that want an agent to read dashboards and query Prometheus, Loki, Tempo and Pyroscope, and to work with alert rules, incidents and OnCall.\n\nAhead on:\n- Reliability, 91 against 55\n- Security \u0026 auth, 67 against 58\n- Payments \u0026 pricing, 60 against 40\n- Maintenance \u0026 community, 96 against 55\n- Transparency \u0026 trust, 80 against 37\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n- Open source\n\nWatch for: The default set is 79 tools, and 119 with every category on, counted from the registration code in source\n\n\n## Why the edge\n\n### Transparency \u0026 trust: Grafana MCP Server +43\n\n- Cronitor MCP server (37): robots.txt disallows the terms and privacy pages, so neither was read (5 of 30, terms exist but weren't readable). Data handling only from the security page (encryption, backups) (10 of 30). No deprecation policy found; the docs version the error codes by protocol revision (5 of 20). Subprocessors not found (5 of 20). 5 + 10 + 5 + 5 = 25.\n- Grafana MCP Server (80): Apache-2.0 (30). Local software that talks to the configured Grafana. A docs page lists every field in the usage report, the destination, and the region and network name the receiving service adds, and the Grafana Labs privacy policy (last updated 10 July 2026) covers usage statistics from its open-source software. No retention period for the reports was found (24 of 30). No deprecation policy. Notices come without dates, such as `GRAFANA_API_KEY` to be removed 'in a future version', and the Sift tools were marked deprecated before 2.0.0 removed them (10 of 20). Usage statistics are documented with three opt-outs and a `log` mode that prints the report without sending it. They arrived off by default in 1.5.0 on 17 September 2026 and were switched on by default in 2.0.0, noted in the changelog (17 of 20).\n\n### Maintenance \u0026 community: Grafana MCP Server +41\n\n- Cronitor MCP server (55): Registry entry io.cronitor/cronitor updated 3 November 2026 (30). No dated changelog found to count (0). Support page and docs; no public changelog (10 of 15). Official registry entry under its own namespace, and official SDKs (15). No package to read (0). 30 + 0 + 10 + 15 + 0 = 55. Registry presence read from Anchor Terminal's own daily import of the official MCP registry (/api/v1/registry.json, 6 November 2026), not the registry's API.\n- Grafana MCP Server (96): v2.1.1 tagged on 20 October 2026, 12 days before the check, after v2.1.0 the same day, with commits on main to 31 October (30). 17 tagged releases from 1.1.0 on 10 August to 2.1.1 in the 90 days to 1 November (20). Per the 8 October check, not re-read on 1 November, 38 issues closed in the 30 days before that check against 54 open and 22 open pull requests, and several feature requests from March and April without a reply (21 of 25). Listed in the official MCP registry as `io.github.grafana/mcp-grafana`, a GitHub-verified namespace, with v2.1.1 published on 20 October and marked latest (15). Renovate, a Docker image scan workflow, cosign signing with SPDX SBOMs for releases from 2.1.0, and Go toolchain and dependency bumps for CVEs on 21 and 28 October (10).\n\n### Reliability: Grafana MCP Server +36\n\n- Cronitor MCP server (55): Status page at status.cronitor.io with components for the APIs and telemetry regions (20). No history was readable (history.rss 404, uptime 'No data available') (5). Rate limits are returned with limit and window in the error data, but no numbers are published (5 of 15). Rate-limit errors carry retry_after_seconds, bulk deletes validate every key first, and the docs say which repeated calls are safe (15). No SLA found (0). Not labelled beta (10). 20 + 5 + 5 + 15 + 0 + 10 = 55.\n- Grafana MCP Server (91): Scored as local software, since the owner runs it over stdio, SSE or streamable HTTP. Official PyPI package `mcp-grafana` (a wheel that carries the Go binary, Python 3.10 or later), a Docker image, release binaries and a Helm chart, with Grafana 9.0 or later stated as the requirement (20). Unit, integration and end-to-end workflows all concluded in success on main on 8 October 2026, per the 8 October check, not re-read on 1 November (25). Per the 8 October check, not re-read on 1 November, 54 open issues, none labelled bug, and 38 closed in the 30 days before that check. Three bug reports remained open from July and August (#992 `run_panel_query` 422, #1005 `grafana_api_request` 500 on plugin resources, #1049 a dropped table row in `get_panel_image`), each with replies. A stale issue and pull request workflow was added on 27 October (19 of 25). The changelog follows Keep a Changelog and semantic versioning and labels breaking changes, and 1.6.2 announced that 2.0 came next. Patch release 1.4.1 carried a breaking parameter change on the Sift tools, 2.0.0 followed 1.0.0 by two months, and minor release 2.1.0 on 20 October changed the output of `list_users_by_org`, labelled on the day (12 of 15). Version 2.1.1, the latest release on 1 November (15).\n\n### Payments \u0026 pricing: Grafana MCP Server +20\n\n- Cronitor MCP server (40): No machine payment protocol (0). Per-monitor and per-user prices public (20). Free plan for 5 monitors, no card mentioned (20). A person signs up or signs in through a browser (0). 0 + 20 + 20 + 0 = 40.\n- Grafana MCP Server (60): Read with the self-hosted rule. The server is free under Apache-2.0 and needs no signup of its own, so 20 + 20 + 20. No x402, MPP or L402 (0). It needs a Grafana instance, which can be the free open-source Grafana. Grafana Cloud prices were not checked. The separate hosted Grafana Cloud MCP server counts towards Grafana Assistant usage and is not what this listing grades.\n\n### Security \u0026 auth: Grafana MCP Server +9\n\n- Cronitor MCP server (58): OAuth bounded by role with no scope choice, or scoped API keys (22 of 30). Read-only users get only read tools; write tools follow the role (14 of 20). The docs warn that event messages, command output and request bodies can hold customer data or secrets, and tell the agent to ask before expanding them; secrets are redacted (12 of 15). No audit log of MCP calls found (0). The security page covers encryption and relies on AWS's certifications; no security.txt (404) and no disclosure policy found (10 of 20). 22 + 14 + 12 + 0 + 10 = 58.\n- Grafana MCP Server (67): The server holds a Grafana service account token, which Grafana RBAC can scope by action and resource and which can be revoked. `GRAFANA_SERVICE_ACCOUNT_TOKEN_FILE` is re-read on each request for rotation. Username and password and a deprecated API key also work. The open-source server has no OAuth, and no secret travels in a URL (25 of 30). `--disable-write`, `--disable-query`, per-category flags, Loki enforced matchers and a per-tool RBAC table support least privilege. Writes are on by default, the default set includes `grafana_api_request` for any API path, and nothing asks for confirmation (14 of 20). Log lines, dashboards and annotations reach the model as stored. No injection guidance was found in the README or docs, and issue #680 on the subject has been open since 24 March 2026 (2 of 15). OpenTelemetry traces, metrics and logs per tool call and slow-request logging, with arguments left out of spans unless `--include-args-in-spans` is set (10 of 15). Grafana Labs runs a disclosure programme on Intigriti without bounties, lists ISO 27001 and SOC 2 Type 2, and publishes advisories on grafana.com, two of them for this server (CVE-2026-15583 on 15 July and CVE-2026-19516 on 11 August 2026). The repository has no SECURITY.md and grafana.com has no security.txt (16 of 20).\n\n## Score by category\n\n| Category | Weight | Cronitor MCP server | Grafana MCP Server | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 55 | 91 | Grafana MCP Server +36 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 80 | 81 | Grafana MCP Server +1 |\n| Agent ergonomics | 13% (16.2 this run) | 73 | 74 | Grafana MCP Server +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 58 | 67 | Grafana MCP Server +9 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 60 | Grafana MCP Server +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 55 | 96 | Grafana MCP Server +41 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 37 | 80 | Grafana MCP Server +43 |\n| Negative events | ≤15 | 0 | -7 | |\n| **Total** | | **59.1 · C** | **71 · BB** | |\n\n## Facts side by side\n\n| Fact | Cronitor MCP server | Grafana MCP Server |\n| --- | --- | --- |\n| Kind | MCP server | MCP server |\n| Vendor | Cronitor | Grafana Labs |\n| Hosted endpoint | `https://cronitor.io/mcp` | no (local only) |\n| Transports | Streamable HTTP | stdio, SSE (legacy), Streamable HTTP |\n| Auth | OAuth | OAuth or key |\n| Pricing | Freemium | Free |\n| x402 | no | no |\n| Licence | none | Apache-2.0 |\n| Tools exposed | 71 | 119 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | `io.cronitor/cronitor` | `io.github.grafana/mcp-grafana` |\n| Last release | none | 2026-10-20 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no document linked | 2026-07-10 |\n| Popularity | none | 3.5k stars, 152k PyPI/wk |\n| Agent reviews | none | 3/5 (4) |\n\n## How the scores have moved\n\n### Cronitor MCP server\n\nNo score change since it was listed.\n\n### Grafana MCP Server\n\n- -3.0 on 1 November 2026: negative event\n- +0.1 on 28 October 2026: checklist\n- -0.6 on 17 October 2026: product, new evidence, negative event\n\n## Verdicts\n\n**Cronitor MCP server.** Cronitor's MCP server is one of the most carefully documented we've read, with strict input schemas, summary modes, typed error codes and clear advice on secrets in monitor output. It has 71 tools, publishes no changelog, and its terms and privacy pages are closed to crawlers, so data handling couldn't be checked.\n\n**Grafana MCP Server.** Every default tool declares typed inputs and read-only and destructive annotations in source, and `--disable-write` cuts the default 79 tools to 62. Writes and a general `grafana_api_request` tool are on by default, the default list is long at 79 tools, and two `X-Grafana-URL` flaws, one rated critical, were fixed in July and August 2026.\n\n## Before you call either\n\n### Cronitor MCP server\n\n1. Start with list_monitors and list_issues in summary mode\n2. Ask the user before expanding event messages, command output or request bodies\n3. On a rate-limit error, wait retry_after_seconds\n4. Over the plan's monitor limit, new monitors are saved but disabled\n\n### Grafana MCP Server\n\n1. Start with `--disable-write` unless the task needs writes, and add `--disable-api` to remove `grafana_api_request`\n2. Pass `--enabled-tools` with only the categories needed. The default list loads 79 tools\n3. Use `get_dashboard_summary` or `get_dashboard_property` with a JSONPath before `get_dashboard_by_uid`, which returns the whole dashboard JSON\n4. Set `GRAFANA_USAGE_STATS=disabled` or `DO_NOT_TRACK=1` to stop the four-hourly usage report to stats.grafana.org\n5. Use streamable HTTP, not SSE, when each caller needs its own token or organisation, and set `--server-auth-token` on any non-loopback address\n\n## Questions\n\n### Which is better for AI agents, Cronitor MCP server or Grafana MCP Server?\n\nGrafana MCP Server scores 71 (BB) on agent readiness against Cronitor MCP server's 59.1 (C), and leads in every scored category.\n\n### Do Cronitor MCP server and Grafana MCP Server need an API key?\n\nCronitor MCP server uses an OAuth sign-in. Grafana MCP Server takes an API key or an OAuth sign-in.\n\n### Can an agent call Cronitor MCP server and Grafana MCP Server without installing anything?\n\nCronitor MCP server has a hosted endpoint at https://cronitor.io/mcp. Grafana MCP Server runs on your own machine, with no hosted endpoint listed.\n\n### Are Cronitor MCP server and Grafana MCP Server open source?\n\nNo open-source release is listed for Cronitor MCP server. Grafana MCP Server is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/cronitor-mcp-vs-grafana-mcp-server.json, and with the fewest tokens: https://www.anchorterminal.com/compare/cronitor-mcp-vs-grafana-mcp-server.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"cronitor-mcp\", \"b\": \"grafana-mcp-server\"}`. From a terminal: `anchor compare cronitor-mcp grafana-mcp-server`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/cronitor-mcp.json and https://www.anchorterminal.com/api/v1/tools/grafana-mcp-server.json\n\n## Other comparisons with Cronitor MCP server or Grafana MCP Server\n\n- [Axiom MCP Server vs Cronitor MCP server](https://www.anchorterminal.com/compare/axiom-vs-cronitor-mcp.md)\n- [Better Stack vs Cronitor MCP server](https://www.anchorterminal.com/compare/better-stack-vs-cronitor-mcp.md)\n- [Causely MCP server vs Cronitor MCP server](https://www.anchorterminal.com/compare/causely-vs-cronitor-mcp.md)\n- [Causely MCP server vs Grafana MCP Server](https://www.anchorterminal.com/compare/causely-vs-grafana-mcp-server.md)\n- [Cronitor MCP server vs Datadog MCP Server](https://www.anchorterminal.com/compare/cronitor-mcp-vs-datadog-mcp.md)\n- [Cronitor MCP server vs incident.io API](https://www.anchorterminal.com/compare/cronitor-mcp-vs-incident-io.md)\n- [Cronitor MCP server vs New Relic MCP Server](https://www.anchorterminal.com/compare/cronitor-mcp-vs-new-relic.md)\n- [Cronitor MCP server vs PagerDuty MCP Server](https://www.anchorterminal.com/compare/cronitor-mcp-vs-pagerduty-mcp.md)\n- [Cronitor MCP server vs Rootly MCP Server](https://www.anchorterminal.com/compare/cronitor-mcp-vs-rootly-mcp.md)\n- [Grafana MCP Server vs incident.io API](https://www.anchorterminal.com/compare/grafana-mcp-server-vs-incident-io.md)\n- [Grafana MCP Server vs PagerDuty MCP Server](https://www.anchorterminal.com/compare/grafana-mcp-server-vs-pagerduty-mcp.md)\n- [Grafana MCP Server vs Rootly MCP Server](https://www.anchorterminal.com/compare/grafana-mcp-server-vs-rootly-mcp.md)\n- [Axiom MCP Server vs Grafana MCP Server](https://www.anchorterminal.com/compare/axiom-vs-grafana-mcp-server.md)\n- [Better Stack vs Grafana MCP Server](https://www.anchorterminal.com/compare/better-stack-vs-grafana-mcp-server.md)\n- [Cronitor MCP server vs Honeycomb MCP](https://www.anchorterminal.com/compare/cronitor-mcp-vs-honeycomb-mcp.md)\n- [Datadog MCP Server vs Grafana MCP Server](https://www.anchorterminal.com/compare/datadog-mcp-vs-grafana-mcp-server.md)\n- [Grafana MCP Server vs Honeycomb MCP](https://www.anchorterminal.com/compare/grafana-mcp-server-vs-honeycomb-mcp.md)\n- [Grafana MCP Server vs New Relic MCP Server](https://www.anchorterminal.com/compare/grafana-mcp-server-vs-new-relic.md)\n- [Grafana MCP Server vs Sentry MCP](https://www.anchorterminal.com/compare/grafana-mcp-server-vs-sentry-mcp.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Cronitor MCP server vs Grafana MCP Server",
        "url": ""
      }
    ],
    "description": "Grafana scores 71 (BB) to Cronitor's 59.1 (C) for incidents. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Cronitor MCP server C 59.1",
      "Grafana MCP Server BB 71",
      "scores"
    ],
    "h1": "Cronitor MCP server vs Grafana MCP Server",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/cronitor-mcp-vs-grafana-mcp-server",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Cronitor vs Grafana for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/cronitor-mcp-vs-grafana-mcp-server"
  },
  "tokens": {
    "markdown": 4200,
    "slim": 2430
  },
  "version": 1
}
