Setup & Integrations
Resolve Features
Resolve API & MCP Server (Beta)
resolve exposes an api and mcp server that let external ai agents, scripts, and services interact with resolve programmatically — chat with resolve, query past investigations, and look up investigation details without using the web ui authentication all api and mcp requests require a bearer token recommended create a personal token from user menu > api tokens personal tokens attribute all actions (investigations, chats) to your user identity, to ensure accurate attribution and results for shared service integrations or scripts that run on behalf of the organization, use an organization token from admin > api tokens instead include the token in all requests authorization bearer \<your token> mcp server connect any mcp compatible ai agent (claude code, cursor, etc ) to resolve the agent can ask questions, query telemetry, and look up past investigations as native tool calls endpoint https //app0 resolve ai/mcp transport https //modelcontextprotocol io/specification/2025 03 26/basic/transports#streamable http (stateless — no session management required) setup (claude code) add to your mcp json { "mcpservers" { "resolve" { "type" "http", "url" "https //app0 resolve ai/mcp", "headers" { "authorization" "bearer ${resolve api token}" } } } } set resolve api token as an environment variable with your api token, then restart claude code resolve start chat start a new conversation with resolve ask about alerts, request investigations, query telemetry — anything you'd ask in the resolve chat ui parameters parameter type required description message string yes message to send to resolve example ask resolve what alerts are currently firing returns the full response text and a canvas url to view the conversation in the resolve ui reply send a follow up message to an existing conversation use the canvasid from a previous resolve start chat result parameters parameter type required description canvasid string yes canvas id from a previous resolve start chat result message string yes follow up message resolve list investigations find past investigations by time range and alert labels parameters parameter type required description starttime string yes iso datetime for the start of the search window endtime string yes iso datetime for the end of the search window labels object no filter by alert labels — all specified key value pairs must match example ask resolve to list investigations where label service name is checkout api from the past 24 hours resolve get investigation get full details of a specific investigation including status, rca reports, and theories parameters parameter type required description canvasid string yes canvas id from resolve list investigations notes resolve start chat blocks until resolve finishes responding simple questions return in under a minute you can trigger a deep investigation by including /rca in your message (e g "investigate the kafka lag spike /rca") the tool will return a chat response with the investigation's canvas url, and the deep investigation continues in the background use resolve get investigation with the canvas id to check progress and retrieve the full report once complete each tool call is independent — no session state is maintained between requests rest api query investigations directly from scripts, dashboards, or any http client list investigations get /api/v1/investigations base url https //app0 resolve ai query parameters parameter type description starttime iso datetime start of search window (default 1 hour ago) endtime iso datetime end of search window (default now) cursor string pagination cursor from a previous response label string filter by alert labels (e g label service name=checkout api ) multiple label filters use and logic — all specified labels must match example curl h "authorization bearer $token" \\ "https //app0 resolve ai/api/v1/investigations?label service name=checkout api\&label severity=critical" response { "investigations" \[ { "canvasid" "01knw9eydmcj35a9f2pd630zyg", "name" "high error rate on checkout api", "alert" { "id" "alert 123", "name" "checkout error rate > 5%", "labels" { "service name" "checkout api", "severity" "critical" } }, "createdat" "2025 03 01t10 00 00 000z" } ], "nextcursor" null } get investigation details get /api/v1/investigations/\ canvasid returns the full investigation including status, completion state, and report files (problem summary, status updates, theories) example curl h "authorization bearer $token" \\ "https //app0 resolve ai/api/v1/investigations/01knw9eydmcj35a9f2pd630zyg" response { "canvasid" "01knw9eydmcj35a9f2pd630zyg", "name" "high error rate on checkout api", "status" "stopped", "iscomplete" true, "reports" \[ { "filepath" "/problem md", "versions" \[ { "versionid" 0, "createdat" "2025 03 01t10 05 00 000z", "content" "# problem\n " } ] }, { "filepath" "/status update md", "versions" \[ ] } ] }