Skip to content

Monitoring MCP Server by DrDroid to connect Grafana, Kubernetes, Signoz, AWS + 35 DevOps / monitoring tools to your AI

Notifications You must be signed in to change notification settings

DrDroidLab/monitoring-mcp-servers

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MCP Server for AI Automation on your Monitoring Data

About

Spinning up this repo gives you an endpoint that you can connect to any MCP Client (Claude Desktop, Cursor, DrDroid, etc.) and connect AI to your respective tools with just this change in your mcp.json

{
   "mcpServers": {
      "multi-tool-mcp-server": {
         "url": "your_url/playbooks/mcp"
      }
   }
}

For sample usage, add this to Cursor, Claude Desktop or clone Slack AI Bot and create your own AI Slack Bot that interacts with the following sources:

  • Grafana -- logs, metrics, dashboards fetching and analysis
  • Kubernetes -- run kubectl commands
  • Grafana Loki -- logs fetching (Can also be done via Grafana)
  • Signoz -- Query your OpenTelemetry data directly from Signoz / Clickhouse.
  • Bash Commands -- Run commands on terminal

Additional support: Apart from these, there is also support for 30+ other tools. Browse full list of integrations supported here

Installation

Note:

  • If you want the MCP Server to be connected to your k8s cluster without any additional configuration effort, install using the HELM chart.

Option A: Docker Compose

  1. Add your credentials in credentials/secrets.yaml. Sample format can be found in credentials/credentials_template.yaml
  2. Run the MCP server:
    docker compose -f mcp.docker-compose.yaml up --build -d
  3. Add it to your Cursor using the localhost setup with this mcp.json configuration:
    {
      "mcpServers": {
        "monitoring-mcp-server": {
          "url": "http://localhost:8000/playbooks/mcp"
        }
      }
    }

Option B: Helm

This is the process for Helm deployment:

  1. Add the secrets for the integrations in helm/configmap.yaml file. Sample format can be found in credentials/credentials_template.yaml Refer to the image below for a sample: Screenshot 2024-12-20 at 14 02 43

Command:

cd mcp_helm
./deploy_mcp_helm.sh
  1. After you spin this up, you need to either (A) Create an Ingress to expose the server via a URL or (B) port forward to your localhost and access the MCP server for your testing.

Run this command for option (B).

   kubectl port-forward -n drdroid service/mcp-server-service 8000:8000"

Once you do this, the url http://localhost:8000/playbooks/mcp can be used as an MCP server to connect to all integrations configured in the credentials + k8s cluster.

Note:

  • The server will be installed in the namespace 'drdroid' by default. This can be changed in the helm/deploy_helm.sh file.
  • Server will have read access to the cluster and will be able to fetch the metrics from the cluster.

Option C: Local Development

  1. Create and activate a virtual environment:
    uv venv env
    source .venv/bin/activate
  2. Install dependencies:
    uv pip sync requirements.txt
  3. Start the MCP server:
    sh start_mcp_server.sh

Support

For any queries or help in setup, join Discord

Contributions

We welcome contributions. If you have any suggestions or improvements, please feel free to open an issue or submit a pull request. We appreciate your help in making this project better!

About

Monitoring MCP Server by DrDroid to connect Grafana, Kubernetes, Signoz, AWS + 35 DevOps / monitoring tools to your AI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 98.8%
  • Other 1.2%