Skip to main content
Glama

SpinupWP MCP Server

A Model Context Protocol (MCP) server integration for the SpinupWP v1 JSON API. This allows AI assistants (like Claude, Cursor, and custom agents) to seamlessly observe and control your SpinupWP infrastructure.

Features

This server currently exposes the following tools:

  • list_servers: List all SpinupWP servers and their hardware/update status.

  • get_server: Retrieve detailed information for a specific server.

  • reboot_server: Reboot a specific SpinupWP server.

  • restart_service: Restart a specific service (nginx, php, mysql, redis) on a server.

  • list_sites: List all WordPress sites hosted on a specific server.

  • get_site: Retrieve detailed information for a specific WordPress site.

  • purge_site_cache: Purge the page cache for a specific WordPress site.

  • run_site_git_deployment: Trigger a Git deployment for a specific site.

  • correct_site_file_permissions: Correct the file permissions for a site.

  • list_events: List recent SpinupWP events (async background tasks).

  • get_event: Get the specific details and status of a single event ID.

  • list_ssh_keys: List the SSH keys configured in the SpinupWP account.

  • add_ssh_key: Add a new SSH public key for server access.

  • create_site: Provision a brand new WordPress site on a server.

  • delete_site: Delete an existing site.

  • create_server: Provision a brand new custom server.

  • delete_server: Delete a server entirely.

Related MCP server: whm-mcp-server

Prerequisites

  1. Node.js (v18 or newer recommended).

  2. A SpinupWP API Token. You can generate this from the "API Tokens" tab in your SpinupWP account settings.

Installation

  1. Clone this repository:

    git clone https://github.com/farukgaric/spinupwp-mcp.git
    cd spinupwp-mcp
  2. Install dependencies:

    npm install
  3. Build the TypeScript files:

    npm run build
  4. Configure your environment: Copy .env.example to .env and insert your SpinupWP API token.

    cp .env.example .env

    Edit .env:

    SPINUPWP_API_TOKEN=your_actual_token_here

Usage

This server is designed to be consumed by an MCP client over standard I/O (stdio).

Example: Claude Desktop Configuration

Update your claude_desktop_config.json (on macOS, usually located at ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "spinupwp-local": {
      "command": "node",
      "args": [
        "/absolute/path/to/spinupwp-mcp/build/index.js"
      ]
    }
  }
}

(Ensure you use the absolute path to your cloned repository.)

Development

  • Start the server manually (ensure your .env is loaded):

    npm start
  • To make changes to the tools, edit src/index.ts and rebuild using npm run build.

Author

Faruk Garic (https://farukgaric.com)

License

This project is licensed under the MIT License.

Available Tools

17 tools
add_ssh_keyC

Add a new SSH public key to SpinupWP

Inputs: name (required), public_key (required).

correct_site_file_permissionsC

Correct the file permissions for a specific WordPress site

Inputs: site_id (required).

create_serverC

Provision a new custom SpinupWP server (MVP using existing infrastructure)

Inputs: provider_name (required), ubuntu_version (required), ip_address (required), username (required), +1 more.

create_siteC

Create a new WordPress site on a server

Inputs: server_id (required), domain (required).

delete_serverC

Delete a specific SpinupWP server

Inputs: server_id (required), delete_server_on_provider.

delete_siteC

Delete a specific WordPress site

Inputs: site_id (required).

get_eventC

Get details and status of a specific SpinupWP event

Inputs: event_id (required).

get_serverC

Get details for a specific SpinupWP server

Inputs: server_id (required).

get_siteC

Get details for a specific WordPress site

Inputs: site_id (required).

list_eventsB

List recent SpinupWP events (optionally filtered by server_id or site_id)

Inputs: server_id, site_id.

list_serversB

List all SpinupWP servers and their hardware/update status

Inputs: no named parameters.

list_sitesC

List all WordPress sites on a specific SpinupWP server

Inputs: server_id (required).

list_ssh_keysB

List SSH keys configured in SpinupWP

Inputs: no named parameters.

purge_site_cacheC

Purge the page cache for a specific WordPress site

Inputs: site_id (required).

reboot_serverC

Reboot a specific SpinupWP server

Inputs: server_id (required).

restart_serviceC

Restart a specific service (nginx, php, mysql, redis) on a SpinupWP server

Inputs: server_id (required), service (required).

run_site_git_deploymentC

Run a git deployment for a specific WordPress site

Inputs: site_id (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 17 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose targeting specific resources and actions in the SpinupWP/WordPress domain. There is no ambiguity between tools like create_server vs. create_site, or list_servers vs. list_sites, as they operate on different entities with clear boundaries.

    Naming Consistency5/5

    All tools follow a consistent verb_noun naming pattern (e.g., add_ssh_key, create_server, list_events). The verbs are appropriate and predictable across the set, with no mixing of conventions or styles, making the tool names highly readable and systematic.

    Tool Count5/5

    With 17 tools, the server is well-scoped for managing SpinupWP servers and WordPress sites, covering provisioning, management, monitoring, and maintenance. Each tool earns its place by addressing specific needs in this domain without being excessive or too sparse.

    Completeness5/5

    The tool set provides complete CRUD/lifecycle coverage for servers and sites (create, get, list, delete), along with essential operations like SSH key management, event tracking, cache purging, rebooting, service restarting, and deployments. There are no obvious gaps that would hinder agent workflows in this domain.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to interact with WordPress sites through the REST API. Supports multiple WordPress sites with secure authentication, enabling content management, post operations, and site configuration through natural language.
      34 npm
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI assistants to manage WHM hosting accounts and server administration tasks including account management, server stats, updates, SSL, backups, and email through a secure API.
      13
      ISC
    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to manage Cloudways infrastructure, including servers, applications, monitoring, and security via the Cloudways API.
      -