Skip to main content
Glama

Update site

update_site
Destructive

Replace every file of a site with a new version at the same link. A temporary site needs its claimToken. To change part of a site, use read_site and edit_site.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "slug": "<slug>",
      "files": "<files>"
    },
    "name": "update_site"
  }
}

Input Schema

NameRequiredDescriptionDefault
slugYes
filesYes
claimTokenNo

Output Schema

NameRequiredDescriptionDefault
slugYes
statusNo
siteUrlYes
anonymousNo
expiresAtNo
versionIdNo
claimTokenNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed12 schema fields changed
    • removedInput schema / additionalProperties
      Removed value: -false
    • removedInput schema / properties / claimToken / minLength
      Removed value: -8
    • removedInput schema / properties / files / items / additionalProperties
      Removed value: -false
    • removedInput schema / properties / files / items / properties / contentType / minLength
      Removed value: -1
    • removedInput schema / properties / files / items / properties / path / minLength
      Removed value: -1
    • removedInput schema / properties / finalize
      Removed value: -{
      -  "default": true,
      -  "type": "boolean"
      -}
    • removedInput schema / properties / slug / minLength
      Removed value: -1
    • removedOutput schema / properties / acceptedBytes
      Removed value: -{
      -  "type": "integer"
      -}
    • removedOutput schema / properties / passwordProtected
      Removed value: -{
      -  "type": "boolean"
      -}
    • removedOutput schema / properties / previousVersionId
      Removed value: -{
      -  "type": "string"
      -}
    • removedOutput schema / properties / restoredFromVersionId
      Removed value: -{
      -  "type": "string"
      -}
    • removedOutput schema / properties / title
      Removed value: -{
      -  "type": "string"
      -}
  2. First observed

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the safety profile is covered. The description adds the crucial detail that the destruction is total-file replacement rather than a merge, and that the site stays at the same link, plus the claimToken auth requirement. It stops short of saying whether version history or published state is affected.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the destructive scope, then the prerequisite, then the alternative. Every sentence carries distinct information with no repetition of the annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Return values need not be described because an output schema exists, and the safety profile is covered by annotations. For a full-replacement mutation, the remaining gap is what happens to versions and whether a separate publish_site call is needed afterward – useful but not strictly required to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description has to carry the load. It gives meaning to slug ("same link") and claimToken (needed by temporary sites) and implies the files array is the complete file set, but never explains the file object fields, especially the content vs contentBase64 choice or that path is required per item.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Replace every file of a site with a new version at the same link" gives a specific verb (replace), resource (site files), and scope (whole site, link preserved). This clearly separates it from edit_site and update_site_details, so an agent can pick without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly routes partial modifications to read_site + edit_site, the exact alternative that competes with this tool, and states the precondition that temporary sites require a claimToken. An agent knows both when to use this and when to use something else.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources