Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.drdroid.io/llms.txt

Use this file to discover all available pages before exploring further.

DrDroid exposes an MCP (Model Context Protocol) server that lets you connect AI tools like Claude Desktop, Cursor, Windsurf, and other MCP-compatible clients directly to your DrDroid account.

Quick Start

1. Get your API Key

Go to Settings > Proxy Tokens, API Keys & MCP in your DrDroid dashboard and create an API key.

2. Configure your MCP client

Add DrDroid as an MCP server in your client’s configuration:
{
  "mcpServers": {
    "drdroid": {
      "url": "https://aiops.drdroid.io/mcp/",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
  "mcpServers": {
    "drdroid": {
      "url": "https://aiops.drdroid.io/mcp/",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}
Cursor (Settings > MCP Servers > Add):
  • URL: https://aiops.drdroid.io/mcp/
  • Authentication: Bearer token with your API key

3. Start using it

Once connected, you can ask your AI tool things like:
  • “Show me critical alerts from the last 24 hours”
  • “What services are in my catalog?”
  • “Find dashboards related to redis”
  • “Create a runbook for handling database failovers”
  • “List my recent investigations”
  • “Show me all alert definitions and their sample alerts”
  • “Create an alert definition for Sentry timeout errors”
  • “List my auto-investigation rules”
  • “Create an auto-investigation rule for critical Sentry alerts”

Available Tools

Read Tools

ToolDescriptionKey Parameters
search_alertsSearch alerts across all tools and channels with severity, source, and time breakdownsquery, severity, sources, tags, duration
search_resourcesSearch dashboards, services, infra across all connected platformsquery, doc_types, platforms, category
get_service_catalogList services with owners, dependencies, and metadatasearch, limit
list_investigationsView recent AI investigations with statussearch, limit, offset
list_runbooksList runbooks and wiki documentssearch, source, include_skills, include_repo_context

Write Tools

ToolDescriptionKey Parameters
update_serviceUpdate a service catalog entryservice_id, service_name, type, upstream, downstream, notes, repository_url
create_runbookCreate a new runbook with markdown contenttitle, content, when_to_use
update_runbookUpdate or archive an existing runbookrunbook_id, title, content, when_to_use, active

Configuration Tools (read-only)

ToolDescriptionKey Parameters
view_alert_definitionsList/get alert definitions with sample alerts and DSL setup instructionsaction (list/get), definition_id, search, source
view_auto_investigation_rulesList/get auto-investigation rules with filter summariesaction (list/get), rule_id, enabled_only

Configuration Tools (write)

ToolDescriptionKey Parameters
manage_alert_definitionsCreate, update, or delete alert definitionsaction (create/update/delete), definition_id, name, definition_rule, priority, tags
manage_auto_investigation_rulesCreate or update auto-investigation rulesaction (create/update), rule_id, name, model_key, filters, enabled

Tool Details

search_alerts

Search and analyze alerts from your connected monitoring tools.
Parameters:
  query          - Text search across alert titles and content
  severity       - Filter by severity (comma-separated: critical,high,medium,low)
  sources        - Filter by alert source (comma-separated)
  tags           - Filter by tags (comma-separated)
  duration       - Time range shorthand: "24h", "7d", "4w"
  start_time     - ISO timestamp for custom range start
  end_time       - ISO timestamp for custom range end
  limit          - Max results (default: 50, max: 200)
Returns matching alerts with severity_counts, source_counts, channel_counts, and hourly_counts breakdowns. Use this for alert insights and trend analysis.

search_resources

Search across all indexed resources from your connected platforms.
Parameters:
  query          - Text search query
  doc_types      - Comma-separated: dashboard, panel, service, infra_component,
                   runbook, repo_context, memory, communication, alert_rule,
                   mcp_asset, metric
  platforms      - Comma-separated: grafana, datadog, kubernetes, newrelic, sentry, etc.
  category       - Filter infra components by category (e.g. "compute")
  limit          - Max results (default: 20, max: 100)

get_service_catalog

List all services in your DrDroid service catalog.
Parameters:
  search         - Filter services by name
  limit          - Max results (default: 100, max: 500)
Returns services with type, upstream/downstream dependencies, notes, repository_url, and created_by.

update_service

Update fields on an existing service catalog entry.
Parameters:
  service_id     - (required) ID of the service to update
  service_name   - New service name
  type           - Service type: service, database, queue, cache, external, etc.
  upstream       - List of upstream service names
  downstream     - List of downstream service names
  notes          - Free-text notes
  repository_url - Repository URL

list_runbooks

List runbooks and wiki documents. By default excludes internal skills and repo context docs.
Parameters:
  search                - Filter by title/path
  source                - Filter by source: confluence_cloud, bitbucket, mcp, etc.
  include_skills        - Include agent skill docs (default: false)
  include_repo_context  - Include repo context docs (default: false)
  limit                 - Max results (default: 20, max: 100)

create_runbook

Create a new runbook/wiki document.
Parameters:
  title          - (required) Runbook title
  content        - (required) Markdown content
  when_to_use    - Description of when this runbook should be used

update_runbook

Update or archive an existing runbook.
Parameters:
  runbook_id     - (required) ID of the runbook to update
  title          - New title
  content        - New markdown content
  when_to_use    - Updated usage description
  active         - Set to false to archive the runbook

view_alert_definitions

View alert definitions — the grouping rules that classify incoming alerts into named categories.
Parameters:
  action               - (required) "list" or "get"
  definition_id        - Required for get
  search               - Filter by name (list only)
  source               - Filter by source (list only)
  sample_alerts_limit  - Number of sample alerts to return (get only, default: 5)
The get action returns sample recent alerts that matched the definition, plus setup instructions.

manage_alert_definitions

Create, update, or delete alert definitions.
Parameters:
  action           - (required) "create", "update", or "delete"
  definition_id    - Required for update/delete
  name             - Definition name (required for create)
  definition_rule  - DSL rule (required for create). Must start with alert.source="<source>"
  priority         - 0=Highest, 1=Default, -1=Lowest (catch-all)
  runbook_id       - Attach a runbook for investigation context
  notes            - Free-text notes
  tags             - List of key:value strings (e.g. ["team:backend"])
DSL Rule Syntax (for definition_rule):
alert.source="sentry" and alert.text contains "timeout"
alert.source="datadog" and alert.title contains "CPU"
alert.source="pagerduty" and alert.labels.env="production"
alert.source="sentry" and alert.labels.keys contains "service"
alert.source="slack" and alert.channel_name="#alerts-prod"

view_auto_investigation_rules

View auto-investigation rules — controls which alerts automatically trigger AI investigations.
Parameters:
  action       - (required) "list" or "get"
  rule_id      - Required for get (UUID string)
  enabled_only - Only return enabled rules (list only)

manage_auto_investigation_rules

Create or update auto-investigation rules.
Parameters:
  action                - (required) "create" or "update"
  rule_id               - Required for update (UUID string)
  name                  - Rule name (required for create)
  model_key             - AI model: "sonnet-4.6" or "kimi-2.5" (required for create)
  filters               - JSON string of filter array (see syntax below)
  description           - Optional description
  runbook_id            - Attach a runbook for investigation context
  max_triggers_per_hour - Per-rule rate limit
  enabled               - Enable/disable the rule
Filter Syntax (JSON array):
[
  {"field": "source", "operator": "equals", "value": "sentry"},
  {"field": "severity", "operator": "in", "values": ["critical", "high"]},
  {"field": "alert_definition", "operator": "equals", "value": "42"},
  {"field": "label_key", "operator": "contains", "value": "env"}
]
Available fields: alert_definition, service, source, severity, label_key, label_value, tags. Available operators: equals, not equals, in, contains, exists, not exists, is null, is not null. Note: filters are immutable after creation. To change filters, create a new rule.

Authentication

All requests require a valid API key passed as a Bearer token. API keys are scoped to your DrDroid account — each key can only access data belonging to its associated account. Generate API keys from Settings > Proxy Tokens, API Keys & MCP in your DrDroid dashboard.

Transport

The MCP server uses Streamable HTTP transport (the current MCP standard), operating in stateless mode. Each request is independent — no session management required. Endpoint: https://aiops.drdroid.io/mcp/