SafeGrd

Read backups and Fire Drills, and ask for a backup or a drill.

Community: Submitted by a user or imported; check the owner before granting accessOnlineAPI key requiredGlobalFreeCan modify data

What it can do

  • List Organizations: List the organizations this token belongs to, with their plan and quotas. Start here: every other tool takes an id from this or from list_surfaces.
  • List Projects: List an organization's projects (environments such as production or staging).
  • List Surfaces: List protected surfaces (databases, file trees, mailboxes) and hosts, with last backup, drill and alert state. Optionally filter by project_id. Returns {items, next_cursor}; pass next_c

What data it sees

Do you need an account

An API key from the service settings is required

Read backups and Fire Drills, and ask for a backup or a drill. No tool deletes a backup.

SafeGrd backs up PostgreSQL, MySQL, MongoDB, SQLite, file trees and mailboxes, encrypted on your host and locked so nothing can delete them early. Fire Drills restore them to prove they work.

What an agent can do: list organizations, projects, surfaces, snapshots and Fire Drills, read storage usage and drill statistics, and ask for a backup before a risky migration or a drill after it. A personal access token cannot delete, disable, re-route or re-key a backup, through MCP or the REST API.

Connect: create a personal access token in the SafeGrd console under Tokens, and enter Bearer sg_pat_... as x-safegrd-token. Agent access is included in the paid plans.

Docs: https://safegrd.dev/docs/mcp

How to connect

How to connect SafeGrd to Claude

The server address to paste into Claude settings:

https://safegrd.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect SafeGrd to ChatGPT

The server address to paste into ChatGPT settings:

https://safegrd.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect SafeGrd to Cursor

The server address to paste into Cursor settings:

https://safegrd.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (11)

Raw names from tools/list. Only developers need these.

list_organizationsList the organizations this token belongs to, with their plan and quotas. Start here: every other tool takes an id from this or from list_surfaces.
list_projectsList an organization's projects (environments such as production or staging).
list_surfacesList protected surfaces (databases, file trees, mailboxes) and hosts, with last backup, drill and alert state. Optionally filter by project_id. Returns {items, next_cursor}; pass next_cursor back as cursor for the next page.
get_surfaceGet one surface or host by node_id.
list_snapshotsList a surface's snapshots, newest first: when, how big, locked until when, and whether a drill has verified them. Returns {items, next_cursor}; pass next_cursor back as cursor for older ones.
get_snapshotGet one snapshot's recorded metadata: digests, counts, lock, Threat Shield verdict.
list_drillsList a surface's Fire Drill reports, newest first: each restore test, its assertions and its signature. Returns {items, next_cursor}.
request_backupAsk for a backup of a surface now, for example before running a migration. The host's daemon runs it at its next check-in; a surface SafeGrd backs up is queued on SafeGrd and needs no daemon. At most hourly: each backup is locked and cannot be deleted early.
request_drillAsk for a Fire Drill now: restore the surface's latest snapshot and check it. The host's daemon runs it at its next check-in; a surface set to drill on SafeGrd is queued there and needs no daemon. Counted against the plan's drill cadence. Read the result with list_drills.
storage_usageHosted storage for an organization: whether it is offered, the quota, and how much is locked.
drill_statsFire Drill statistics across an organization: pass rate, last results, surfaces never proven.