This repo is a part of the DIY toolkit to build your own AI Debugging Agent. Spinning up this repo will give you an AI Agent that can:
- Work with some general purpose intelligence out-of-the-box
- Leverage scripts, prompts and knowledge base to debug your production issues
- Access and query monitoring tools configured as MCP servers
- Interact and respond to user queries from Slack
- Listen to alerts on Slack and auto-respond to it
Even if you do not create scripts, prompts or knowledge base, you can still create the AI agent and interact with it via Slack chat by tagging the bot.
If you add any monitoring tools' MCP server, it will have access to your monitoring tools and might query them for your query. You can decide to further improve the quality of investigation here.
There are multiple types of AI as well as non-AI automations that you can setup using this toolkit. For example:
- Agentic investigation of a service latency spike using a runbook written in English language
- AI analysis of logs.
- Kubernetes cluster actions in specific situations.
- A general purpose agentic investigation WITHOUT any pre-configuration.
Using workflows, rules can be setup on when to trigger what.
To connect the Agent to monitoring tools, this toolkit supports integration to any MCP Server. Instructions to connect AI Agent to the monitoring tools:
- Go to
mcp_servers/mcp.json
and add an existing MCP Server Config (URL based, non-authenticated MCP servers are supported at the moment). - Create an MCP Server for Grafana / K8s / Signoz / other tools in 1-click from this open source project. For trial purposes, you can also use the MCP server mentioned in the monitoring-mcp-servers repo.
a. Generate a public https url from localhost using ngrok (Read why)
- Install ngrok: Download from ngrok.com or use a package manager
- Run your local server: Start your application on a port (e.g., port 5000)
- Create the tunnel: Run
ngrok http 5000
- Get your HTTPS URL: ngrok will provide a free HTTPS URL like
https://abc123.ngrok.io
- Go to Slack API Apps and create a new app
- Copy the JSON from
slack_manifest.json
and paste it into your app configuration - Set the Request URL for Event Subscriptions to:
<ngrok_url>/api/slack/events
- Set the Request URL for Interactivity to:
<ngrok_url>/api/slack/interactive
- Install the app to your workspace and copy the credentials to
credentials.yaml
- Create a channel
drdroid-slack-bot-tester
and add your app to it
- Add your OpenAI key to credentials.yaml
pip install uv
uv sync
uv run python app.py
The bot will start on http://localhost:5000
. Your ngrok public url will point to this server.
- Create a new channel named
drdroid-slack-bot-tester
and add your bot to that channel. - Send a message
Can you check dashboard X in Grafana? @BotName
in the channel. - The bot should respond with:
👋 This is a sample response from your Slack bot.
Reach out to us directly: -- Discord: https://discord.gg/AQ3tusPtZn