Depot MCP by usefulapi
by usefulapi.io · remote · no sign-in to list tools · v1.16.3 · published by io.usefulapi
Inspect Depot builds, CI runs, job logs and Actions runners; retry or cancel CI runs.
22 tools: 4 can delete or cancel things and 18 only read.
Scanned Oct 21, 2026
- Deletes or cancels4Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads18Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http depot https://depot.usefulapi.io/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
22 tools
Deletes or cancels 4Claude Code: deny
depot_ci_cancel_runWRITE — stops work in progress.No findings
Why it is in this group
- The name "depot_ci_cancel_run" says "cancel": a word for removing or ending something.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it WRITE — stops work in progress. Cancel a queued or running Depot CI run and all of its unfinished workflows, jobs and attempts. Cancelled jobs can be retried afterwards with depot_ci_retry_failed_jobs. Depot: CIService/CancelRun.
Annotations the server declares
- title: Cancel a CI run
- destructiveHint: true
depot_ci_retry_failed_jobsWRITE — starts compute.No findings
Why it is in this group
- The description's first verb is "write": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it WRITE — starts compute. Retry only the failed and cancelled jobs in a Depot CI workflow, plus skipped jobs that depend on them. Jobs that succeeded are left alone. Depot: CIService/RetryFailedJobs.
Annotations the server declares
- title: Retry a workflow's failed jobs
- destructiveHint: true
depot_ci_retry_jobWRITE — starts compute.No findings
Why it is in this group
- The description's first verb is "write": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it WRITE — starts compute. Retry one failed or cancelled Depot CI job, plus any skipped jobs that depend on it. Fails if a dependent job already started; use depot_ci_retry_failed_jobs then. Depot: CIService/RetryJob.
Annotations the server declares
- title: Retry a CI job
- destructiveHint: true
depot_create_projectWRITE.No findings
Why it is in this group
- The name "depot_create_project" says "create": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it WRITE. Create a Depot container-build project (an isolated build cache). Idempotent by name: if an active project with the same name exists, that project is returned. Defaults: cache 50 GB / 14 days, hardware HARDWARE_16X32 on AWS builders. Depot: ProjectService/CreateProject.
Annotations the server declares
- title: Create a project
- destructiveHint: true
Only reads 18Claude Code: allow
depot_ci_get_failure_diagnosisGet Depot's failure diagnosis for a CI run, workflow, job or attempt.No findings
Why it is in this group
- The name "depot_ci_get_failure_diagnosis" says "get": a word for reading.
Description, as the server wrote it Get Depot's failure diagnosis for a CI run, workflow, job or attempt. For runs and workflows, identical failures are grouped by error fingerprint; for a job or attempt it is a focused diagnosis with evidence. Empty when no failure evidence is found. The best first call when a run failed. Depot: CIService/GetFailureDiagnosis.
Annotations the server declares
- title: Diagnose a CI failure
- readOnlyHint: true
depot_ci_get_jobGet one Depot CI job: status, conclusion, error message, timestamps, runner config (labels, image, CPUs, memory), matrix values, parent run/workflow context, dependencies and attem…No findings
Why it is in this group
- The name "depot_ci_get_job" says "get": a word for reading.
Description, as the server wrote it Get one Depot CI job: status, conclusion, error message, timestamps, runner config (labels, image, CPUs, memory), matrix values, parent run/workflow context, dependencies and attempt history. Depot: CIService/GetJob.
Annotations the server declares
- title: Get a CI job
- readOnlyHint: true
depot_ci_get_job_logsGet persisted log lines for a Depot CI job attempt, oldest first (step key/name, timestamp, line number, body).No findings
Why it is in this group
- The name "depot_ci_get_job_logs" says "get": a word for reading.
Description, as the server wrote it Get persisted log lines for a Depot CI job attempt, oldest first (step key/name, timestamp, line number, body). Pass job_id to read the job's latest attempt, or attempt_id for a specific one — exactly one. Pass nextPageToken back as page_token for more lines. Depot: CIService/GetJobAttemptLogs.
Annotations the server declares
- title: Get a CI job's logs
- readOnlyHint: true
depot_ci_get_run_statusGet a Depot CI run's status with its nested workflows, jobs and attempts (ids, keys, statuses, error messages).No findings
Why it is in this group
- The name "depot_ci_get_run_status" says "get": a word for reading.
Description, as the server wrote it Get a Depot CI run's status with its nested workflows, jobs and attempts (ids, keys, statuses, error messages). This is how to find the workflowId / jobId / attemptId for the log, diagnosis and retry tools. Depot: CIService/GetRunStatus.
Annotations the server declares
- title: Get a CI run's status tree
- readOnlyHint: true
depot_ci_list_runsList Depot CI runs, newest first.No findings
Why it is in this group
- The name "depot_ci_list_runs" says "list": a word for reading.
Description, as the server wrote it List Depot CI runs, newest first. Filter by status (default: running + queued — pass ["failed"] to find failures), repo, commit SHA prefix, trigger event, or pull request number (requires repo). Depot: CIService/ListRuns.
Annotations the server declares
- title: List Depot CI runs
- readOnlyHint: true
depot_ci_list_workflowsList Depot CI workflows across runs, newest first, with per-status job counts.No findings
Why it is in this group
- The name "depot_ci_list_workflows" says "list": a word for reading.
Description, as the server wrote it List Depot CI workflows across runs, newest first, with per-status job counts. Filter by name/path text, repo, status, trigger, SHA prefix or PR number. Depot: CIService/ListWorkflows.
Annotations the server declares
- title: List Depot CI workflows
- readOnlyHint: true
depot_get_buildGet one container build's status, timestamps, duration, time saved and cached/total step counts.No findings
Why it is in this group
- The name "depot_get_build" says "get": a word for reading.
Description, as the server wrote it Get one container build's status, timestamps, duration, time saved and cached/total step counts. Depot: core BuildService/GetBuild.
Annotations the server declares
- title: Get a build
- readOnlyHint: true
depot_get_build_step_logsGet the log lines (message + timestamp) of one container-build step, identified by its digest from depot_get_build_steps.No findings
Why it is in this group
- The name "depot_get_build_step_logs" says "get": a word for reading.
Description, as the server wrote it Get the log lines (message + timestamp) of one container-build step, identified by its digest from depot_get_build_steps. Depot: build.v1 BuildService/GetBuildStepLogs.
Annotations the server declares
- title: Get a build step's logs
- readOnlyHint: true
depot_get_build_stepsList the BuildKit steps of a container build: name, digest, start/end time, cache state (CACHED / UNCACHED), any error, and whether it has logs.No findings
Why it is in this group
- The name "depot_get_build_steps" says "get": a word for reading.
Description, as the server wrote it List the BuildKit steps of a container build: name, digest, start/end time, cache state (CACHED / UNCACHED), any error, and whether it has logs. Find the failing step here, then pass its digest to depot_get_build_step_logs. Depot: build.v1 BuildService/GetBuildSteps.
Annotations the server declares
- title: List a build's steps
- readOnlyHint: true
depot_get_projectGet one Depot project — name, region, hardware size, cache policy, build timeout and autoscaling.No findings
Why it is in this group
- The name "depot_get_project" says "get": a word for reading.
Description, as the server wrote it Get one Depot project — name, region, hardware size, cache policy, build timeout and autoscaling. Depot: ProjectService/GetProject.
Annotations the server declares
- title: Get a project
- readOnlyHint: true
depot_get_usageGet the organization's Depot usage over a window: container builds per project (build count, minutes saved, minutes billed), GitHub Actions jobs per repo/workflow/runner (minutes e…No findings
Why it is in this group
- The name "depot_get_usage" says "get": a word for reading.
Description, as the server wrote it Get the organization's Depot usage over a window: container builds per project (build count, minutes saved, minutes billed), GitHub Actions jobs per repo/workflow/runner (minutes elapsed and billed), storage, and agent sandboxes. Depot: UsageService/GetUsage.
Annotations the server declares
- title: Get organization usage
- readOnlyHint: true
depot_gha_get_analyticsGet time-bucketed GitHub Actions analytics for Depot runners: job counts (successful/failed/cancelled), failure rate, elapsed and billable seconds, average duration — as totals plu…No findings
Why it is in this group
- The name "depot_gha_get_analytics" says "get": a word for reading.
Description, as the server wrote it Get time-bucketed GitHub Actions analytics for Depot runners: job counts (successful/failed/cancelled), failure rate, elapsed and billable seconds, average duration — as totals plus hourly or daily buckets. Defaults to the last 30 days (max 90). Depot: GithubActionsService/GetGithubActionsAnalytics.
Annotations the server declares
- title: Get GitHub Actions analytics
- readOnlyHint: true
depot_gha_list_jobsList GitHub Actions jobs that ran on Depot-managed runners, newest first: status, conclusion, runner label, requested CPU/memory, duration, billable time and GitHub URL.No findings
Why it is in this group
- The name "depot_gha_list_jobs" says "list": a word for reading.
Description, as the server wrote it List GitHub Actions jobs that ran on Depot-managed runners, newest first: status, conclusion, runner label, requested CPU/memory, duration, billable time and GitHub URL. Defaults to the last 30 days (max window 90 days). Depot: GithubActionsService/ListGithubActionsJobs.
Annotations the server declares
- title: List GitHub Actions jobs on Depot runners
- readOnlyHint: true
depot_gha_list_recommendationsList Depot's runner-size recommendations from job CPU and memory metrics: SIZE_UP when average CPU or memory reaches 90%, SIZE_DOWN when both averages stay ≤30% and peaks ≤70%, wit…No findings
Why it is in this group
- The name "depot_gha_list_recommendations" says "list": a word for reading.
Description, as the server wrote it List Depot's runner-size recommendations from job CPU and memory metrics: SIZE_UP when average CPU or memory reaches 90%, SIZE_DOWN when both averages stay ≤30% and peaks ≤70%, with current vs suggested size and per-minute price. Defaults to the last 30 days. Depot: GithubActionsService/ListGithubActionsRecommendations.
Annotations the server declares
- title: List runner-size recommendations
- readOnlyHint: true
depot_gha_search_logsSearch GitHub Actions log lines from Depot runners, newest match first (job, workflow, step, timestamp, body, lineId).No findings
Why it is in this group
- The name "depot_gha_search_logs" says "search": a word for reading.
Description, as the server wrote it Search GitHub Actions log lines from Depot runners, newest match first (job, workflow, step, timestamp, body, lineId). Defaults to the last hour (max window 30 days). Filter by repository, workflow, runner label, action or compute id. Depot: GithubActionsService/SearchGithubActionsLogs.
Annotations the server declares
- title: Search GitHub Actions logs
- readOnlyHint: true
depot_list_buildsList container builds in a project, newest first: status (STATUS_RUNNING / FAILED / SUCCESS / ERROR / CANCELED), timestamps, build duration, time saved by cache, and cached vs tota…No findings
Why it is in this group
- The name "depot_list_builds" says "list": a word for reading.
Description, as the server wrote it List container builds in a project, newest first: status (STATUS_RUNNING / FAILED / SUCCESS / ERROR / CANCELED), timestamps, build duration, time saved by cache, and cached vs total steps. Depot: core BuildService/ListBuilds.
Annotations the server declares
- title: List builds for a project
- readOnlyHint: true
depot_list_projectsList the organization's Depot projects.No findings
Why it is in this group
- The name "depot_list_projects" says "list": a word for reading.
Description, as the server wrote it List the organization's Depot projects. A project is an isolated container-build cache (region, hardware, cache policy). Use the returned projectId with the build and registry tools. Depot: ProjectService/ListProjects.
Annotations the server declares
- title: List projects
- readOnlyHint: true
depot_list_registry_imagesList the images stored in a project's Depot Registry: tag, digest, pushedAt and sizeBytes.No findings
Why it is in this group
- The name "depot_list_registry_images" says "list": a word for reading.
Description, as the server wrote it List the images stored in a project's Depot Registry: tag, digest, pushedAt and sizeBytes. Depot: build.v1 RegistryService/ListImages.
Annotations the server declares
- title: List registry images
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.16.3. Values in angle brackets are yours to fill in.
claude mcp add --transport http depot https://depot.usefulapi.io/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__depot__depot_list_projects",
"mcp__depot__depot_get_project",
"mcp__depot__depot_list_builds",
"mcp__depot__depot_get_build",
"mcp__depot__depot_get_build_steps",
"mcp__depot__depot_get_build_step_logs",
"mcp__depot__depot_list_registry_images",
"mcp__depot__depot_get_usage",
"mcp__depot__depot_ci_list_runs",
"mcp__depot__depot_ci_get_run_status",
"mcp__depot__depot_ci_list_workflows",
"mcp__depot__depot_ci_get_job",
"mcp__depot__depot_ci_get_job_logs",
"mcp__depot__depot_ci_get_failure_diagnosis",
"mcp__depot__depot_gha_list_jobs",
"mcp__depot__depot_gha_search_logs",
"mcp__depot__depot_gha_get_analytics",
"mcp__depot__depot_gha_list_recommendations"
],
"ask": [],
"deny": [
"mcp__depot__depot_create_project",
"mcp__depot__depot_ci_retry_job",
"mcp__depot__depot_ci_retry_failed_jobs",
"mcp__depot__depot_ci_cancel_run"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as depot. Review it before you use it.