Connect Claude Code, Cursor or another MCP client to Ledge and work with your sites from your AI assistant.
Ledge has its own MCP server. Connect an AI assistant that supports MCP, such as Claude Code or Cursor, and it can check on your sites, triage issues, set up monitoring, take backups and run updates, using the same rules as the Ledge app.
An assistant can only see and change the sites your account can. It works through the same Ledge actions you'd use in the app, so update runs still go through the sandbox and open a pull request.
The server address is:
https://my.ledgehq.app/mcpYou'll also find it on Settings → API tokens in Ledge.
Add the server without a token:
claude mcp add --transport http ledge "https://my.ledgehq.app/mcp"The first time the assistant connects, it opens a browser page where you sign in to Ledge and approve access. Approved assistants appear under Connected agents on Settings → API tokens.
Signing in gives the assistant full access: it can read and change anything your account can.
To disconnect an assistant, revoke its token or connection on Settings → API tokens. It loses access straight away.
Start with what needs attention. The assistant gets a ranked list of problems across your sites, each with the next step to take.
Tools marked Write need a write token or a signed-in connection.
| Tool | What it does | |
|---|---|---|
list-open-issues | Read | Everything that needs attention, ranked by severity, with the next step for each. Covers failing checks, downtime, expiring SSL certificates, missed cron pings, advisories, update runs waiting on you, lost repository access and overdue backups. |
list-sites | Read | Your sites, filtered by name, URL or tag. |
get-site | Read | One site's checks, backup schedule, auto-update settings, advisories, latest backup and latest update run. |
create-site | Write | Add a site, optionally with a health check, uptime check, repository and tags in one step. |
update-site | Write | Rename a site, change its URL, or pause all monitoring. |
mute-site / unmute-site | Write | Silence a site's alerts for an hour, a day, until a set time or indefinitely. Monitoring keeps running. |
list-tags / set-site-tags | Read / Write | List tags, or replace a site's tags. |
| Tool | What it does | |
|---|---|---|
get-health-check | Read | Status, versions, check results, plugins with updates and licence state, and recent polls. |
create-health-check / update-health-check | Write | Set up or change a health check, including its polling interval and request options. |
poll-health-check | Write | Poll now. Once every 5 minutes per check. |
set-health-check-active | Write | Pause or resume a health check. |
set-environment-check-ignored | Write | Ignore one of the checks a site reports, so it stops affecting status and alerts, or stop ignoring it. |
delete-health-check | Write | Delete a health check and its history. |
| Tool | What it does | |
|---|---|---|
get-uptime-check | Read | Uptime over 24 hours to 90 days, response times and incidents. |
create-uptime-check / update-uptime-check | Write | Set up or change an uptime check: interval, expected status codes, keyword, response-time alerts, SSL expiry, grace period and region. |
poll-uptime-check | Write | Probe now. Once every 30 seconds per check. |
set-uptime-check-active | Write | Pause or resume an uptime check. |
delete-uptime-check | Write | Delete an uptime check. |
list-probe-regions | Read | The regions uptime checks can run from. |
| Tool | What it does | |
|---|---|---|
list-scheduled-tasks / get-scheduled-task | Read | Your cron monitors, with ping URLs, the last ping and when the next is due. |
create-scheduled-task / update-scheduled-task | Write | Monitor a job by interval or cron expression, with a timezone and grace period. Returns the ping URL to add to the job. |
set-scheduled-task-active | Write | Pause or resume a monitor. |
delete-scheduled-task | Write | Delete a monitor. Its ping URL stops working. |
| Tool | What it does | |
|---|---|---|
list-advisories | Read | Security advisories matched to each site's packages, with the version that fixes them and any update-by date. |
set-advisory-status | Write | Ignore an advisory, or reopen it. |
list-available-updates | Read | Installed and latest versions of Craft and each plugin, and which releases are security or critical fixes. |
start-update-run | Write | Update chosen packages, or everything, in a sandbox copy of the site. |
list-update-runs / get-update-run | Read | Run status, crawl results, pull request and the preview while it's live. |
get-update-run-log / get-update-run-diff | Read | The run's log, and the files it changed. |
approve-update-run / reject-update-run | Write | Approve a finished run, which opens the pull request, or reject it. |
merge-update-run | Write | Merge the pull request now if it's clean, or merge it automatically once checks pass. |
cancel-update-run | Write | Stop a run and remove its sandbox. |
update-auto-update-settings | Write | Turn scheduled update runs on or off and set their cadence, auto-merge and cooldown. |
| Tool | What it does | |
|---|---|---|
list-backup-runs / get-backup-run | Read | Backup history and schedule, and the status of one backup. |
create-backup | Write | Take a database backup now. Up to 4 an hour per site. |
download-backup | Write | A download link for a finished backup. It works once and expires after 15 minutes. |
update-backup-schedule | Write | Turn scheduled backups on or off, and set how often they run and how long they're kept. |
| Tool | What it does | |
|---|---|---|
list-git-connections | Read | Your connected Git accounts and the repositories each can reach. Connect accounts in the Ledge app. |
link-repository / unlink-repository | Write | Link a site to a repository and branch, or unlink it. Update runs need a linked repository. |
list-notification-policies | Read | Your alert policies. Create and edit them in the Ledge app. |
set-site-notification-policies | Write | Choose which policies apply to a site. |