ShiftBeta

AI & MCP

Your AI, not ours

Shift has an MCP server, API keys and OAuth, so Claude or any other agent can drive it. We don't sell AI: anything AI in Shift runs on your own provider key.

The MCP server

https://shift.nightroll.app/mcp

Streamable HTTP, JSON responses. Every tool call is checked against the key's scopes and written to your organization's audit log.

With an API key

For Claude Code, scripts and any MCP client that sends headers. Create a key in Settings → API keys (scoped, with an expiry), then:

claude mcp add --transport http shift https://shift.nightroll.app/mcp --header "Authorization: Bearer $KEY"

With OAuth

For claude.ai and Claude Desktop: add the URL above as a custom connector. You sign in, pick the organization and the permissions, and approve. Disconnect any time from Settings → API keys.

What your agent can do

  • See open alerts, their timelines and who is on call
  • Acknowledge, resolve, reassign and annotate alerts
  • Add schedule overrides, open alerts and page a responder
  • Invite people to your org and see what usage costs

Tools

An agent sees only the tools its scopes allow: read, write or admin, never more than the person's role.

ToolWhat it doesScope
list_incidentsOpen alerts, or recent ones including resolved.read
get_incidentOne alert with its timeline.read
who_is_on_callWho is on call now on each schedule, and until when.read
list_servicesServices with their escalation policy and settings.read
list_escalation_policiesEscalation policies and their levels.read
list_schedulesSchedules with who is on call now and the next shifts.read
acknowledge_incidentAcknowledge an alert, which stops escalation.write
resolve_incidentResolve an alert.write
add_noteAdd a note to an alert's timeline.write
reassign_incidentReassign an alert to another member, who is paged.write
create_overridePut someone on call on a schedule for a time range.write
create_incidentOpen an alert on a service (at most 5 an hour).write
page_responderPage one member with a message (at most 5 an hour).write
list_alert_archivesArchived days of resolved alerts older than 30 days, newest first, with where each is kept. Download a day over REST: GET /api/v1/alerts/archives/:day.admin
whoamiWho the key or token belongs to: person, organization, role and scopes.read
list_membersThe organization's members and their roles.read
invite_membersInvite people by email, with a role.admin
list_invitesOpen invites.admin
revoke_inviteRevoke an open invite.admin
get_usageUsage and cost for a month, per meter.admin
list_audit_eventsThe audit log, filtered by person, action and dates.admin

Bring your own key

Summarize alert writes a three-sentence summary of an alert and its timeline with your own Anthropic, OpenAI or OpenRouter key (and the model you set for it). Add the key in Settings → AI keys; it is encrypted, never shown again, and billed by your provider directly.

We don't sell AI

No AI credits, no markup on tokens, no training on your data. You choose the model and the provider, and you pay them directly.

Connect in a minute

Step by step, with example prompts.

QuickStart