@doraincident/mcp-server
v0.2.0
Published
MCP server for DoraIncident — query live incidents, acknowledge alerts, and track DORA regulatory deadlines from any AI assistant.
Maintainers
Readme
@doraincident/mcp-server
Connect DoraIncident to Claude, Cursor, and any MCP-compatible AI assistant. Query live incidents, acknowledge escalated alerts, declare major incidents, and track DORA regulatory deadlines — without leaving your AI tool.
What is DoraIncident?
DoraIncident is an AI-native incident management platform for regulated payment firms. It combines:
- On-call alerting — ingest from Datadog, Prometheus, Grafana, OpsGenie, PagerDuty, New Relic, and Nagios
- Automated ticketing — AI creates and populates an incident ticket the moment the IM declares
- DORA compliance — live 4h/72h/30-day deadline tracking and AI-drafted regulatory report content
- Public status pages — with component tracking, subscriber email notifications, and AI chat
This MCP server exposes the live operational state of your DoraIncident instance to any connected AI.
Security note: All data stays within your own DoraIncident instance. Nothing is routed through Anthropic or OpenAI — LLM inference runs via Groq, and MCP calls go directly from your AI client to your instance over HTTPS using a scoped API key.
Tools
Alerts (4 tools)
| Tool | Description |
|---|---|
| list_alerts | List alerts with optional status, source, and limit filters. Escalated alerts are P1/P2 signals waiting for a human decision. |
| get_alert | Full alert detail including raw payload, AI severity score, reasoning, and current triage status. |
| acknowledge_alert | Acknowledge an escalated alert. Pauses the escalation timer and signals active investigation. |
| suppress_alert | Suppress an alert (noise or false positive). Requires a written reason, stored in the audit log. |
Incidents, tickets, and DORA (8 tools)
| Tool | Description |
|---|---|
| list_incidents | List incidents filtered by status (active, resolved, closed). Active incidents have running DORA clocks. |
| get_incident | Full incident detail: event timeline, linked ticket, affected services, and DORA countdown timers. |
| declare_incident | Declare a major incident. Starts the DORA regulatory clock, auto-creates an AI-populated ticket, and opens a Slack war room. Only call this when a human has confirmed the situation warrants declaration. |
| resolve_incident | Mark an incident as resolved. Triggers optional RCA draft generation and surfaces DORA report drafts for IM review. |
| list_tickets | List incident tickets with status and priority filters. |
| get_ticket | Full ticket detail: description, status, assignee, comments, activity log, and DORA link panel. |
| get_dora_deadlines | DORA regulatory deadlines for all active P1/P2 incidents. Shows time remaining for Initial Notification (4h), Intermediate Report (72h), and Final Report (30 days). Flags overdue deadlines. |
| get_on_call | Current on-call person across all schedules. Returns name, email, and schedule details. |
Knowledge base (1 tool)
| Tool | Description |
|---|---|
| search_knowledge_base | Semantic search over runbooks, past post-mortems, and ingested docs/code. Returns the passages most relevant to a query with similarity scores and the retrieval method (vector or lexical) — the same retrieval that grounds resolution suggestions and RCA drafts. Use it to recall how a similar issue was handled before recommending remediation. |
Resources
| URI | Description |
|---|---|
| doraincident://alerts/escalated | Live feed of all alerts currently in escalated state requiring a human declare or dismiss decision. |
| doraincident://incidents/active | Live feed of all active incidents with DORA countdown timers. |
Installation
Prerequisites
- Node.js 18 or higher
- A DoraIncident account — request access at doraincident.io
- A DoraIncident API key — generate one in Settings → API Keys
Option 1 — Claude Desktop (recommended)
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"doraincident": {
"command": "npx",
"args": ["-y", "@doraincident/mcp-server"],
"env": {
"DORAINCIDENT_URL": "https://www.doraincident.io",
"DORAINCIDENT_API_KEY": "di_live_..."
}
}
}
}Restart Claude Desktop. You should see the DoraIncident tools listed in the MCP panel.
Option 2 — Claude Code (CLI)
claude mcp add doraincident \
-e DORAINCIDENT_URL=https://www.doraincident.io \
-e DORAINCIDENT_API_KEY=di_live_... \
-- npx -y @doraincident/mcp-serverOption 3 — Install globally
npm install -g @doraincident/mcp-server
# Then point your MCP client at the installed binary:
doraincident-mcp
# env: DORAINCIDENT_URL, DORAINCIDENT_API_KEYEnvironment variables
| Variable | Required | Description |
|---|---|---|
| DORAINCIDENT_API_KEY | Yes | API key from Settings → API Keys. Must start with di_live_. |
| DORAINCIDENT_URL | No | Base URL of your DoraIncident instance. Defaults to https://www.doraincident.io. |
Example usage
Once connected, ask your AI assistant:
"What incidents are active right now and do any have DORA deadlines approaching?"
"Acknowledge alert alt_abc123 — I'm looking into it."
"Declare a P1 incident: Payments gateway timeout affecting the checkout-service and 3ds-provider."
"What's the current DORA Initial Notification deadline for the active P1?"
"Who is on call right now?"Building from source
git clone https://github.com/michaelngangom/doraincident.git
cd doraincident/packages/mcp-server
npm install
npm run build # compiles TypeScript to dist/Links
- Platform: doraincident.io
- MCP setup guide: doraincident.io/docs/mcp-server
- Full documentation: doraincident.io/docs
- Listed on mcpservers.org: mcpservers.org/servers/www-doraincident-io-settings-mcp
- Issues: github.com/michaelngangom/doraincident/issues
License
MIT — see LICENSE.
