---
title: "Snapshot the server's current tool list for approval"
method: POST
path: "/mcp/projects/{projectId}/servers/{serverName}/tools/refresh"
tags: ["mcp"]
---

# Snapshot the server's current tool list for approval

`POST /mcp/projects/{projectId}/servers/{serverName}/tools/refresh`

## Request

- Base URL: `https://api.letsship.ai/v1`
- URL: `https://api.letsship.ai/v1/mcp/projects/{projectId}/servers/{serverName}/tools/refresh`
- Auth: none declared

## Path parameters

- `projectId` string, required
- `serverName` string, required

## Response `200`

Binding with a fresh snapshot

- McpBinding
  - `transport` 'remote' | 'isolate' | 'local', required: remote: the gateway proxies to the server's URL. isolate: the gateway runs the server's npm package in an isolated runtime. local: the server runs inside the agent's sandbox (no credential).
  - `status` 'ready' | 'needs_credential' | 'needs_reconnect' | 'origin_changed' | 'bundling' | 'bundle_failed' | 'not_isolatable', required
  - `statusDetail` string, nullable, required
  - `roles` McpRole[], required
  - `authKind` 'none' | 'headers' | 'oauth' | 'isolate-env', required
  - `pinnedUrl` string, nullable, required
  - `packageSpec` string, nullable, required
  - `allowedEgressHosts` string[], required
  - `credentialFields` string[], required
  - `toolSnapshot` McpToolSnapshotEntry[], required
    - `name` string, required
    - `title` string
    - `description` string
    - `readOnlyHint` boolean
    - `destructiveHint` boolean
  - `approvedTools` McpApprovedTool[], required
    - `name` string, required
    - `attestedReadOnly` boolean
  - `toolsRefreshedAt` integer, nullable, required
  - `effectiveToolCounts` object, required
    - `planner` integer, nullable
    - `builder` integer, nullable
    - `reviewer` integer, nullable
    - `qa` integer, nullable
  - `createdAt` integer, required
  - `updatedAt` integer, required

## Other responses

- `400`: Invalid
- `403`: Role insufficient
- `404`: Not found (also for other tenants)
- `409`: Binding not ready
- `503`: Gateway unavailable

---

[API](https://skmtc.dev/letsship/apis/ship-api.md) · [All operations](https://skmtc.dev/letsship/apis/ship-api/llms.txt) · [OpenAPI document](https://skmtc.dev/letsship/apis/ship-api/revisions/e6eac1bcadd4?raw)
