{
  "markdown": "# Datto SaaS Protection MCP Server\n\n[![CI](https://github.com/WYRE-AI/datto-saas-protection-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/WYRE-AI/datto-saas-protection-mcp/actions/workflows/ci.yml)\n[![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\nA [Model Context Protocol](https://modelcontextprotocol.io) server exposing the\n[Datto SaaS Protection (Backupify)](https://www.datto.com/products/saas-protection/)\nAPI to Claude and other MCP clients.\n\n## What it does\n\nSurface SaaS backup posture for your M365 and Google Workspace tenants directly\nto AI assistants — list customer organizations, inspect protected domains and\nseats, browse backup history, queue restores, and audit activity logs and\nlicense usage.\n\n- **Interactive Seat Card (MCP Apps)**: `datto_saas_get_seat` renders as an interactive backup-status card in MCP Apps hosts (Claude Desktop/web) — read-only, showing seat type, Active/Archived status, and last backup; neutral by default, brandable via `window.__BRAND__` injection or `MCP_BRAND_*` env vars; plain-JSON behavior is unchanged in other hosts\n\n## Tools\n\n| Tool | Purpose |\n| --- | --- |\n| `datto_saas_list_clients` | List all customer organizations |\n| `datto_saas_list_domains` | List protected domains under a client |\n| `datto_saas_list_seats` | List seats in a domain (toggle archived) |\n| `datto_saas_get_seat` | Fetch a single seat detail |\n| `datto_saas_list_backups` | List backup runs for a seat |\n| `datto_saas_queue_restore` | Queue a restore (DESTRUCTIVE — requires confirmation) |\n| `datto_saas_get_restore_status` | Check restore progress |\n| `datto_saas_list_activity` | Org activity log (date-range elicitation) |\n| `datto_saas_get_license_usage` | Seat counts vs purchased |\n\n## Credentials\n\n### Local (env mode)\n\n```sh\nexport DATTO_SAAS_PUBLIC_KEY=\"...\"\nexport DATTO_SAAS_SECRET_KEY=\"...\"\nexport DATTO_SAAS_REGION=\"us\"   # or \"eu\"\n```\n\n### Hosted (gateway mode)\n\nThe WYRE MCP Gateway injects credentials per request via headers:\n\n- `X-Datto-SaaS-Public-Key` (required, secret)\n- `X-Datto-SaaS-Secret-Key` (required, secret)\n- `X-Datto-SaaS-Region` (optional, default `us`)\n\n## Run\n\n```sh\nnpm install\nnpm run build\nnpm start                       # stdio\nMCP_TRANSPORT=http npm start    # HTTP on :8080\n```\n\n## License\n\nApache 2.0 — see [LICENSE](LICENSE).\n",
  "bytes": 2396,
  "sha": "74a8d0c1db0c7b26b17c8c96bb22055b41485ebaa39ed655102b0e1d39240291",
  "repo_slug": "wyre-technology/datto-saas-protection-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_wyre_technology_datto_saas_pro_3d8e1c5b/readme"
}