Skip the install. Get this working in under 2 minutes.
Start a free trial on cloud.anythingmcp.com, add the Rootly in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.
Summary
Rootly incident management from any AI agent: declare, update, mitigate and resolve incidents with timeline notes and action items, acknowledge and resolve alerts, see who is on call, publish status page updates and read retrospectives, services, teams and severities.
Try asking
Example prompts for Rootly
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → Rootly, paste your credentials, mint an MCP API key and you're done. No Docker, no
git clone, no local server.
Rootly + Meta Muse
Rootly incident management from any AI agent: declare, update, mitigate and resolve incidents with timeline notes and action items, acknowledge and resolve alerts, see who is on call, publish status page updates and read retrospectives, services, teams and severities.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
ROOTLY_API_KEY
Step 1 — Get credentials
Setting up takes about 2 minutes. You need a Rootly account.
- In Rootly open the organization menu, then Organization Settings, API Keys, and create a key. A Global key sees the whole organization, a Team key only that team's records, a Personal key acts with your own permissions.
- Give the key a role that can read what you need, plus write permission for incidents, alerts and action items if the AI should change them.
- Paste only the key, without
Bearerin front, intoROOTLY_API_KEYand runrootly_get_current_user. It shows the user the key acts as; a Global or Team key answers with the user who created it.
What is going on: rootly_list_incidents with status: "started,mitigated" (or in_triage) lists the current incidents; filters cover severity, service, team, environment, type, free text and dates. rootly_get_incident shows one incident with all its attributes, rootly_list_incident_events its timeline and rootly_list_incident_action_items its tasks. To find ids the AI uses rootly_list_severities, rootly_list_services, rootly_get_service, rootly_list_functionalities, rootly_get_functionality, rootly_list_teams, rootly_get_team, rootly_list_environments, rootly_list_incident_types and rootly_list_users.
Running an incident: rootly_create_incident declares one. With an idempotency_key a retry within 24 hours returns the same incident instead of a second one; kind test is for a try. rootly_update_incident changes title, summary, severity, services, teams, labels or status; a list replaces the whole list. rootly_add_incident_event adds internal or external timeline notes, rootly_mitigate_incident and rootly_resolve_incident move the incident on with a short note. Action items: rootly_list_action_items across all incidents, rootly_get_action_item, rootly_create_action_item and rootly_update_action_item (for example status done).
Alerts: rootly_list_alerts (for example status triggered or open), rootly_get_alert with the raw payload the source sent, rootly_acknowledge_alert (the escalation stops paging the next level) and rootly_resolve_alert, which can also resolve the incidents the alert is attached to.
On-call: rootly_list_oncalls answers who is on call now or in a time window. rootly_list_schedules, rootly_get_schedule, rootly_get_schedule_shifts, rootly_list_shifts and rootly_list_escalation_policies give the details.
Status pages and retrospectives: rootly_list_status_pages, rootly_get_status_page and rootly_list_incident_status_page_events read; rootly_create_status_page_event publishes an update (investigating, identified, monitoring, resolved). rootly_list_retrospectives and rootly_get_retrospective read the post-mortems.
Before writing: a normal incident runs workflows, opens a Slack channel and can page people; a status page update is public and can e-mail the subscribers. So the AI shows you what it is about to do and waits for your yes. A private incident cannot be made public again.
Switched off at install: no tool. Everything is on from the start; what the AI may do is limited by the role and team of the key.
Data formats: answers follow JSON:API: records are in data (id, type, attributes, relationships), records embedded with include in included. Ids are UUIDs, user ids are numbers. The human incident number is attributes.sequential_id (INC-123). Times are ISO 8601, in UTC unless a time zone is given. rootly_list_incidents and rootly_list_alerts return a compact set of attributes by default; fields: "" returns all of them. Zoom meeting passwords and host links are left out of incident answers.
Paging: lists return meta with current_page, next_page (null on the last page), total_count and total_pages; the AI calls again with page_number. Incidents and alerts also accept the cursor page_after from meta.next_cursor. page_size goes up to 100, but small pages work better because Rootly records are large.
Common errors: 401 means a wrong or revoked key, 403 a key whose role or team does not allow the call, 404 an unknown id or one outside the key's team, 422 a validation error whose errors name the field, 429 the rate limit (the X-RateLimit-* headers say when it resets; wait and retry).
The connector does not delete incidents, alerts or action items, does not change schedules, escalation policies or status pages and does not write retrospectives.
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in Muse
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
Muse adds remote MCP servers as custom connectors and signs in to them with OAuth.
- In Muse, open Settings → Connectors and choose Add custom connector.
- Paste the MCP server URL
https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. - Muse opens the AnythingMCP sign-in page: sign in and approve access.
- In a chat, ask Muse for something that needs the
Rootlytools.
You can also set it up from a chat, on the web, in the iOS and Android apps or in WhatsApp. Send Muse this message:
Create a Custom Connector for a new remote MCP server, then connect to it:
Name: AnythingMCP
Transport: remote streamable HTTP
URL: https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID
Auth: OAuth
Self-hosting? Use your instance's public HTTPS address instead of https://cloud.anythingmcp.com. Muse connects from Meta's cloud, so localhost does not work.
Available tools
| Tool | What it does |
|---|---|
rootly_get_current_user | Show the user the API key acts as: id, name, email, time zone and role |
rootly_list_incidents | List incidents, newest first by default: sequential id (the 123 in INC-123), title, status, kind, severity, services, teams, environments… |
rootly_get_incident | Get one incident with all its attributes: title, summary, status, severity, services, teams, environments, types, labels, Slack channel… |
rootly_create_incident | Declare an incident |
rootly_update_incident | Change an incident: title, summary, status, severity, affected services, functionalities, environments, types, teams, causes or labels |
rootly_mitigate_incident | Mark an incident as mitigated (the impact is under control) with a short note on how |
rootly_resolve_incident | Mark an incident as resolved with a short note on how |
rootly_list_incident_events | List the timeline of an incident: the events (notes, status changes, updates) with their text, visibility (internal or external) and when… |
rootly_add_incident_event | Add a note to the timeline of an incident |
rootly_list_action_items | List action items across all incidents: summary, kind (task during the incident, follow_up after it), priority, status, assignee, due date… |
rootly_list_incident_action_items | List the action items of one incident: summary, kind, priority, status, assignee and due date |
rootly_get_action_item | Get one action item with its description, assignee, teams, due date and linked Jira issue |
rootly_create_action_item | Add an action item to an incident: a task to do now or a follow-up for after the incident, with priority, assignee and due date |
rootly_update_action_item | Change an action item: summary, description, status (e.g. done), priority, assignee or due date |
rootly_list_alerts | List alerts, newest first: short id, summary, status (open, triggered, acknowledged, resolved, deferred), source (datadog, grafana, email… |
rootly_get_alert | Get one alert with its full details, including the raw payload the source sent (data), labels, responders and linked incidents |
rootly_acknowledge_alert | Acknowledge an alert: someone is looking at it, so its escalation stops paging the next level |
rootly_resolve_alert | Resolve an alert, optionally with a note and also resolving the incidents it is attached to |
rootly_list_services | List the services in the catalog: name, slug, description, owners, linked repositories and external ids (Backstage, Cortex, OpsLevel… |
rootly_get_service | Get one service with its description, owner teams and users, escalation policy, alert and incident broadcast settings and external links |
rootly_list_functionalities | List the functionalities (user-facing capabilities such as Checkout or Login) with name, slug, description and owners |
rootly_get_functionality | Get one functionality with its description, owners, linked services and status page components |
rootly_list_teams | List the teams (groups) with name, slug, description, members and their on-call and escalation settings |
rootly_get_team | Get one team with its description and members; add include for its schedules and escalation policies |
rootly_list_environments | List the environments (production, staging and so on) with name, slug and colour |
rootly_list_severities | List the severity levels (e.g |
rootly_list_incident_types | List the incident types (e.g |
rootly_list_users | List the users of the organization: id, name, email, time zone; add include for role, teams or schedules |
rootly_list_oncalls | Who is on call: the on-call entries of every escalation policy, schedule and level for now or a time window, with the user, schedule… |
rootly_list_schedules | List the on-call schedules with name, description, owning teams and time zone |
rootly_get_schedule | Get one on-call schedule with its owners, time zone and settings |
rootly_get_schedule_shifts | List the shifts of one schedule in a time window: who is on call from when to when, including overrides |
rootly_list_shifts | List on-call shifts across schedules in a time window (default: the shifts running now): schedule, rotation, user, start and end, override… |
rootly_list_escalation_policies | List the escalation policies with name, description, repeat settings and owning teams; add include for their levels and paths |
rootly_list_status_pages | List the status pages with title, public URL, whether they are public, and their settings |
rootly_get_status_page | Get one status page with its title, description, public URL, components and settings |
rootly_list_incident_status_page_events | List the updates an incident published to status pages: text, status (investigating, identified, monitoring, resolved), status page and time |
rootly_create_status_page_event | Publish an incident update on a status page, e.g |
rootly_list_retrospectives | List incident retrospectives (post-mortems): title, status (draft, published), the incident, URL and dates |
rootly_get_retrospective | Get one retrospective with its title, status, content, URL and the incident it belongs to |
Example prompts
- "Which incidents are open right now, and who is on call for the payments service?"
- "Show me the timeline of INC-482 and list its open action items."
- "Declare a SEV2 incident for slow checkout on the checkout service. Show me the details before you create it."
- "Acknowledge the triggered Datadog alerts for the API gateway and tell me what they say."
- "Post a Monitoring update for INC-482 on our status page: the fix is deployed and we are watching the error rate."
FAQ
Where is Muse available? Meta currently offers Muse in the US and Canada, on the web, in the iOS and Android apps and in WhatsApp.
Does Meta review this connector? No. Meta doesn't review custom connectors. Muse sees only the tools you switched on for this MCP server in AnythingMCP, and you can disconnect it anytime under Settings → Connectors.
Next steps
- Connector landing page
- Connect to Claude
- Connect to ChatGPT
- Connect to Cursor
- Connect to Gemini
- Connect to Microsoft Copilot
Was this guide helpful?