Skip to main content
Glama
PCWProps

Pressable MCP Server

by PCWProps

pressable_restore_site

Restore a WordPress site from backup by specifying site ID, filesystem, and database options. Use this tool to recover site data and configurations when needed.

Instructions

Restore a site from a backup.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesSite ID to restore
filesystem_idNo
database_idNo
restore_on_site_idNoOptional ID of site to restore onto

Implementation Reference

  • The handler function that executes the restore operation by making a POST request to the Pressable API.
    handler: async (args) => {
        const { id, ...restoreData } = args;
        return await api.post(`/sites/${id}/restores`, restoreData);
    }
  • The JSON schema defining the required and optional inputs for the pressable_restore_site tool.
    inputSchema: {
        type: 'object',
        properties: {
            id: { type: 'string', description: 'Site ID to restore' },
            filesystem_id: { type: 'integer' },
            database_id: { type: 'integer' },
            restore_on_site_id: { type: 'integer', description: 'Optional ID of site to restore onto' }
        },
        required: ['id']
    },
  • tools/backups.js:32-48 (registration)
    The complete tool definition object for pressable_restore_site, including name, description, schema, and handler.
        name: 'pressable_restore_site',
        description: 'Restore a site from a backup.',
        inputSchema: {
            type: 'object',
            properties: {
                id: { type: 'string', description: 'Site ID to restore' },
                filesystem_id: { type: 'integer' },
                database_id: { type: 'integer' },
                restore_on_site_id: { type: 'integer', description: 'Optional ID of site to restore onto' }
            },
            required: ['id']
        },
        handler: async (args) => {
            const { id, ...restoreData } = args;
            return await api.post(`/sites/${id}/restores`, restoreData);
        }
    },

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It does not disclose that restoring is a destructive operation that likely overwrites current site content, nor does it mention permissions, reversibility, or response behavior. The description is too minimal to warn the agent of potential side effects.

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

Conciseness4/5

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

The description is a single, concise sentence with no wasted words. It earns its place but offers minimal information. It is appropriately short, though not as structured or informative as could be expected for a tool with multiple parameters.

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

Completeness2/5

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

The tool has 4 parameters, no annotations, and no output schema, so the description must compensate. A one-sentence description does not explain the underlying backup model, what database_id and filesystem_id refer to, or any side effects or return values. This is insufficient for a restore operation that could logically require coordination of multiple backup components.

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

Parameters2/5

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

Schema description coverage is 50% (only id and restore_on_site_id have descriptions). The description itself adds no parameter information, so it does not compensate for the undocumented database_id and filesystem_id parameters. This leaves ambiguity about which backup components are being restored and how they relate.

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

Purpose4/5

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

The description clearly states the action (restore) and the resource (a site from a backup), which is a specific verb+resource combination. However, it does not explicitly distinguish itself from sibling tools like pressable_get_backup_download_url or pressable_list_backups, so it lacks sibling differentiation.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. The usage is only implied by the action itself, which does not meet the bar for clear context or alternative selection.

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

Deploy Server

Other Tools