Netdata

listing.by

Query real-time metrics, logs, alerts and ML anomaly detection from your Netdata-monitored infrastructure.

state.key.long (state.key.title)Streamable HTTP

listing.connect

listing.explain.api_key

https://app.netdata.cloud/api/v1/mcp

listing.note.key_header listing.note.key_where

listing.share.h

listing.share.p

mcp.tc/i/netdata

listing.about

Connects an assistant to Netdata Cloud, which aggregates data from Netdata Agents running on servers, containers, Kubernetes and applications. It exposes per-second metrics, logs, alerts and machine-learning anomaly detection so the assistant can help investigate problems across monitored nodes.

The server is hosted at app.netdata.cloud over streamable HTTP. It requires a Netdata Cloud API token with the mcp scope, sent as a bearer token in the Authorization header. Each Netdata Agent can also serve MCP locally.

listing.can

  • Query real-time infrastructure metrics from monitored nodes
  • Read logs from monitored systems
  • Check active and past alerts
  • Use ML-based anomaly detection to find unusual behavior
  • Troubleshoot issues across servers, containers and applications

listing.tools

listing.notools.key

listing.prompts

  • Which of my nodes have critical alerts right now?

  • Show CPU and memory trends on my database server over the last hour.

  • Were there any anomalies on my web nodes since yesterday?

  • Find the likely cause of the latency spike at 14:00.

listing.setup.h

listing.setup.remote

Claude Code

  1. Run this in a terminal, in your project folder:
claude mcp add --transport http netdata https://app.netdata.cloud/api/v1/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
  1. Replace the placeholder with your key before you run it, then check it with /mcp inside Claude Code.

Add --scope user to make it available in every project, not just this one.

Claude Desktop

  1. Custom connectors can't send this server's key header, so use the mcp-remote bridge. Open Settings → Developer → Edit Config and add:
claude_desktop_config.json
{
  "mcpServers": {
    "netdata": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://app.netdata.cloud/api/v1/mcp",
        "--header",
        "Authorization: Bearer <YOUR_API_KEY>"
      ]
    }
  }
}
  1. Replace the placeholder with your key and restart Claude Desktop.

The bridge needs Node.js on your computer.

Cursor

Or add it by hand to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (this project):

mcp.json
{
  "mcpServers": {
    "netdata": {
      "url": "https://app.netdata.cloud/api/v1/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}

VS Code

Add it to .vscode/mcp.json. VS Code asks for the key the first time and stores it securely:

.vscode/mcp.json
{
  "servers": {
    "netdata": {
      "type": "http",
      "url": "https://app.netdata.cloud/api/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${input:api-key}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "api-key",
      "description": "API key",
      "password": true
    }
  ]
}

Devin Desktop

  1. Add it to ~/.config/devin/mcp_config.json (macOS and Linux) or %APPDATA%\devin\mcp_config.json (Windows):
mcp_config.json
{
  "mcpServers": {
    "netdata": {
      "serverUrl": "https://app.netdata.cloud/api/v1/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
  1. Refresh the MCP server list in Cascade.

Devin Desktop is the new name for Windsurf. It reads serverUrl (or url) for remote servers.

Codex

codex mcp add netdata --url https://app.netdata.cloud/api/v1/mcp --bearer-token-env-var NETDATA_API_KEY

Or edit ~/.codex/config.toml directly:

config.toml
[mcp_servers.netdata]
url = "https://app.netdata.cloud/api/v1/mcp"
bearer_token_env_var = "NETDATA_API_KEY"

Set NETDATA_API_KEY to your key in the shell that runs Codex.

Gemini CLI

gemini mcp add --transport http --header "Authorization: Bearer <YOUR_API_KEY>" netdata https://app.netdata.cloud/api/v1/mcp

This adds it to the current project. Add -s user to use it everywhere.

Any client

Most clients accept this shape. Some name the URL field differently: serverUrl in Devin Desktop, httpUrl in Gemini CLI's settings file.

{
  "mcpServers": {
    "netdata": {
      "type": "http",
      "url": "https://app.netdata.cloud/api/v1/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}

Zed puts servers under context_servers in its settings. Cline needs "type": "streamableHttp", or it assumes SSE.

Client only starts local servers? Bridge it with npx -y mcp-remote https://app.netdata.cloud/api/v1/mcp.

listing.faq

Can I paste mcp.tc/i/netdata into my MCP client?

No. mcp.tc links are pages, not server addresses. Connect with https://app.netdata.cloud/api/v1/mcp, so your client talks to Netdata directly. Your key goes there too, never to mcp.tc. The quick link is for sharing: it opens this page, with setup steps for every client.

Does Netdata need an API key or a sign-in?

Yes. Netdata needs an API key, sent as the Authorization header. Get one from Netdata and keep it in your client's config, never in a shared file.

Is Netdata a remote or a local server?

Remote. Netdata hosts it at https://app.netdata.cloud/api/v1/mcp, and it speaks Streamable HTTP. There's nothing to install.

What can Netdata do?

You can query real-time infrastructure metrics from monitored nodes, read logs from monitored systems and check active and past alerts.

Which clients can use it?

Any client that supports remote MCP servers and can send your key: Claude Code, Cursor, VS Code, Devin Desktop, Codex, Gemini CLI, Zed and others, and Claude Desktop through the mcp-remote bridge. claude.ai and ChatGPT can't send a key, so they can't use it.

Who wrote this page?

mcp.tc's robot read Netdata's own metadata (its MCP handshake, tool list and public pages), and an AI model drafted the text from it. A person reviews anything the checks can't confirm. The text can still be wrong, so if you spot a mistake, use Report this listing on this page.

listing.em.h

listing.em.lead listing.em.how

listing.em.badge

em.prev_lightem.prev_dark
Markdown
[![Netdata on mcp.tc](https://mcp.tc/i/netdata/badge.svg)](https://mcp.tc/i/netdata)
HTML
<a href="https://mcp.tc/i/netdata"><img src="https://mcp.tc/i/netdata/badge.svg" alt="Netdata on mcp.tc" height="20"></a>

listing.em.badge_note

listing.em.widget

HTML
<script src="https://mcp.tc/w/netdata.js" async></script>

listing.em.widget_note

iframe

HTML
<iframe src="https://mcp.tc/embed/netdata" title="Netdata on mcp.tc" width="420" height="200" loading="lazy" allow="clipboard-write" style="border:0;border-radius:8px;max-width:100%"></iframe>

listing.em.iframe_note

JSON

listing.em.json

https://mcp.tc/i/netdata.json

listing.em.fields

listing.disclaimer_checked