Skip to main content

Hostinger VPS Update Project V1

Immutable Catalog Entry

This descriptor comes from the active versioned Portal catalog.

WRITEhostinger.VPS_updateProjectV1
  • Contract tier: agent_ready
  • Risk: write
  • Catalog version: hostinger-2026.07.12.1
  • Descriptor hash: 32f5c1bff1833a38e7d02db1c822732b68e70de9563bb33b1c1c1da5295feecc

Use this tool when you need the Hostinger operation Update project. Updates a Docker Compose project by pulling the latest image versions and recreating containers with new configurations. This operation preserves data volumes while applying changes from the compose file. Use this to deploy application updates, apply configuration changes, or refresh container images to their latest versions. It calls POST /api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/update against the configured Hostinger account. This changes external Hostinger state and requires confirm=true. Provider parameters: virtualMachineId (path, required): Virtual Machine ID projectName (path, required): Docker Compose project name using alphanumeric characters, dashes, and underscores only The body follows the complete Hostinger schema in inputSchema. Do not place API tokens in arguments; credentials arrive only through protected Portal headers. The result is the normalized Hostinger MCP envelope with data, safe error details, HTTP/rate metadata, and pagination metadata when available. Runtime summary: Use this when you need Hostinger API operation VPS_updateProjectV1: Update project. Updates a Docker Compose project by pulling the latest image versions and recreating containers with new configurations. This operation preserves data volumes while applying changes from the compose file. Use this to deploy application updates, apply configuration changes, or refresh container images to their latest versions. Endpoint: POST /api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/update. Path params: virtualMachineId, projectName. Request body: not expected. Risk class: write. This write tool requires confirm=true. Returns the compact MAD envelope {ok,data,error,meta}; set dry_run=true to preview without calling Hostinger.

Request Body

{
"jsonrpc": "2.0",
"id": "hostinger-vps-updateprojectv1-example",
"method": "tools/call",
"params": {
"name": "hostinger.VPS_updateProjectV1",
"arguments": {
"path_params": "",
"body": "",
"params": "",
"compact": "",
"confirm": false,
"dry_run": false,
"max_items": "",
"include_raw": false,
"confirmation_phrase": ""
}
}
}

Arguments Schema

{
"type": "object",
"required": [
"path_params"
],
"properties": {
"body": {
"anyOf": [
{
"type": "object",
"additionalProperties": false
},
{
"type": "null"
}
],
"default": null,
"description": "JSON request body using the complete checked-in Hostinger provider schema."
},
"params": {
"anyOf": [
{
"type": "object",
"properties": {},
"additionalProperties": false
},
{
"type": "null"
}
],
"default": null,
"description": "Exact query parameters for this Hostinger operation, keyed by the provider names shown here."
},
"compact": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "When true, truncate large arrays using MCP_MAX_ITEMS_* limits."
},
"confirm": {
"type": "boolean",
"default": false,
"description": "Required as true for any Hostinger write, spend, or destructive call."
},
"dry_run": {
"type": "boolean",
"default": false,
"description": "Preview the request and risk gates without calling Hostinger."
},
"max_items": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Maximum array items to keep when compacting responses."
},
"include_raw": {
"type": "boolean",
"default": false,
"description": "When true, include raw Hostinger response alongside normalized data."
},
"path_params": {
"anyOf": [
{
"type": "object",
"required": [
"virtualMachineId",
"projectName"
],
"properties": {
"projectName": {
"type": "string",
"description": "Docker Compose project name using alphanumeric characters, dashes, and underscores only"
},
"virtualMachineId": {
"type": "integer",
"description": "Virtual Machine ID"
}
},
"additionalProperties": false
},
{
"type": "null"
}
],
"default": null,
"description": "Exact path parameters for this Hostinger operation, keyed by the provider names shown here."
},
"confirmation_phrase": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Required exact phrase for spend, credential, and destructive tools."
}
},
"additionalProperties": false
}

Output Schema

{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"ok",
"data",
"error",
"meta"
],
"properties": {
"ok": {
"type": "boolean",
"description": "True only when the requested Hostinger or local catalog operation succeeded."
},
"data": {
"description": "Normalized result data, or null when the operation failed."
},
"meta": {
"type": "object",
"description": "Safe endpoint, timing, pagination, rate, catalog, and next-action metadata.",
"additionalProperties": true
},
"error": {
"description": "Secret-safe structured error details, or null on success."
}
},
"description": "Normalized Hostinger MCP response envelope.",
"additionalProperties": false
}

Code Examples

curl -X POST 'https://portal.madpanda3d.com/api/mcp' \
-H 'Authorization: Bearer mad_live_***' \
-H 'Content-Type: application/json' \
-d '{
"jsonrpc": "2.0",
"id": "hostinger-vps-updateprojectv1-example",
"method": "tools/call",
"params": {
"name": "hostinger.VPS_updateProjectV1",
"arguments": {
"path_params": "",
"body": "",
"params": "",
"compact": "",
"confirm": false,
"dry_run": false,
"max_items": "",
"include_raw": false,
"confirmation_phrase": ""
}
}
}'

Example Responses

{
"ok": true,
"message": "Tool hostinger.VPS_updateProjectV1 executed successfully.",
"note": "Response shape varies by MCP tool. Inspect live responses for exact fields."
}