SpinupWP MCP Server
Enables triggering Git deployments for WordPress sites managed via the SpinupWP infrastructure.
Allows for restarting the MySQL service on specific SpinupWP servers.
Allows for restarting the NGINX service on specific SpinupWP servers.
Allows for restarting the PHP service on specific SpinupWP servers.
Allows for restarting the Redis service on specific SpinupWP servers.
Provides comprehensive tools for managing WordPress sites, including site provisioning, detailed retrieval, cache purging, and file permission correction.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SpinupWP MCP Server purge the page cache for example.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
Node.js (v18 or newer recommended).
A SpinupWP API Token. You can generate this from the "API Tokens" tab in your SpinupWP account settings.
Installation
Clone this repository:
git clone https://github.com/farukgaric/spinupwp-mcp.git cd spinupwp-mcpInstall dependencies:
npm installBuild the TypeScript files:
npm run buildConfigure your environment: Copy
.env.exampleto.envand insert your SpinupWP API token.cp .env.example .envEdit
.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
.envis loaded):npm startTo make changes to the tools, edit
src/index.tsand rebuild usingnpm run build.
Author
Faruk Garic (https://farukgaric.com)
License
This project is licensed under the MIT License.
Available Tools
17 toolsadd_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
Scored across 17 tools
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.
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.
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.
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
Related MCP Connectors
Manage Laravel Forge servers, sites, and deployments from your AI assistant.
Manage Vozora VPS servers, SSH keys, firewalls, DNS and usage from an AI agent.
Manage your WordPress site from your AI assistant: posts, pages, media, comments and WooCommerce.
Manage your WordPress site from ChatGPT or Claude: posts, WooCommerce, SEO, images and upkeep.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables 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 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables 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.13ISC
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage Cloudways infrastructure, including servers, applications, monitoring, and security via the Cloudways API.-
- AlicenseAqualityDmaintenanceEnables AI assistants to manage VPS servers, domains, DNS records, and SSH keys through the VPS.org API via natural language.262MIT