Netdata MCP Server: Observability Metrics, Logs, Processes
Explore observability with the MCP server: discover, analyze and report metrics, logs, processes, containers and network connections for root-cause resolution.
Overview
The Netdata MCP (Model Context Protocol) server is a component of Netdata that exposes contextual observability models — metrics, logs, processes, containers, and network connections — in a structured, machine-friendly way. Instead of raw time-series alone, MCP surfaces contextual objects and relationships so tooling can discover, correlate and reason about what is happening on a host or cluster for faster root-cause analysis.
MCP is useful when you want programmatic access to high-level observability constructs: subscribe to the events and models that describe running processes, their container surroundings, related metrics and network connections, and then combine those with logs and traces. This makes it easier to build automation, incident investigation tools, or richer UIs that can join signals across layers.
Features
- Exposes context models for:
- Metrics (collected time-series and metric metadata)
- Logs (indexed log entries and streams)
- Processes (process metadata, parents, resource usage)
- Containers (container metadata, images, runtime info)
- Network connections (active sockets, endpoints)
- Model discovery: enumerate available models, fields, and relationships
- Subscription/streaming: subscribe to model changes and real-time events
- Designed for automation: enable programmatic root-cause reasoning and incident workflows
- Integrates with the rest of Netdata (collectors, dashboards, Cloud)
Installation / Configuration
The MCP server is shipped as part of Netdata. Install Netdata first, then enable/verify the MCP server.
- Install Netdata (official installer):
# From the Netdata GitHub
- Enable MCP in Netdata configuration
- Edit the Netdata config file (commonly /etc/netdata/netdata.conf or conf.d/web.conf).
- Ensure the web interface and API are enabled so the MCP server can accept connections.
Example (edit the appropriate config file; keys may vary by Netdata version):
[web]
web = yes
- Restart Netdata
# or, if not using systemd:
- Verify the server is listening (default Netdata port is 19999):
|
# or
|
Note: exact configuration keys and endpoints can change between Netdata releases. Refer to the Netdata repository or your installed version’s documentation for precise options.
Available Resources
- Source and official README: https://github.com/netdata/netdata/blob/master/src/web/mcp/README.md
- Netdata main repository: https://github.com/netdata/netdata
- Netdata docs / configuration: check /usr/share/doc/netdata or the project’s documentation site
Common model types exposed by MCP:
| Model | What it describes |
|---|---|
| metrics | Time-series data, metric names, units, charts and dimensions |
| logs | Log streams and indexed log entries from collectors |
| processes | Process lists, PIDs, command-line, resource usage |
| containers | Container/Pod metadata: image, id, runtime, labels |
| connections | Active network sockets, local/remote endpoints, protocol |
Interacting with the MCP Server
MCP is designed for programmatic consumption. Typical interactions include:
- Model discovery: request a list of available models and fields
- Subscription: open a stream (HTTP/WebSocket or long poll) to receive events/changes
- Query: request a snapshot or filtered view of a model (for example, processes for a container)
Example (pseudo-HTTP subscription pattern):
POST /mcp/subscribe HTTP/1.1
Host: localhost:19999
Content-Type: application/json
{
"model": "processes",
"filter":