@g99/gridpane-mcp-server
v1.0.7
Published
Model Context Protocol (MCP) server for GridPane OAuth API - Manage servers, sites, domains, users, and more
Maintainers
Readme
GridPane MCP Server
A Model Context Protocol (MCP) server for the GridPane OAuth API. This server enables AI assistants and tools to interact with GridPane's hosting management platform to manage servers, WordPress sites, domains, backups, and more.
Features
- Complete GridPane API Coverage: Access all major GridPane API endpoints
- 45+ Tools: Comprehensive toolset for server and site management
- OAuth Authentication: Secure API access using bearer tokens
- Easy Installation: Install via npx
- TypeScript: Fully typed for better development experience
Installation
Using npx (Recommended)
npx @g99/gridpane-mcp-serverUsing npm (Global Installation)
npm install -g @g99/gridpane-mcp-serverConfiguration
Environment Variables
Create a .env file or set the following environment variables:
# Optional: Your GridPane instance URL (defaults to https://my.gridpane.com)
GRIDPANE_API_URL=https://my.gridpane.com
# Required: Your GridPane Personal Access Token
GRIDPANE_API_TOKEN=your_gridpane_api_token_hereGetting Your API Token
- Log in to your GridPane account at https://my.gridpane.com (or your custom instance URL)
- Navigate to Account Settings → API Access
- Generate a new Personal Access Token
- Copy the token and use it as your
GRIDPANE_API_TOKEN
Note: If you're using a custom GridPane instance (not the default my.gridpane.com), set GRIDPANE_API_URL to your instance URL.
MCP Client Configuration
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"gridpane": {
"command": "npx",
"args": ["-y", "@g99/gridpane-mcp-server"],
"env": {
"GRIDPANE_API_URL": "https://my.gridpane.com",
"GRIDPANE_API_TOKEN": "your_token_here"
}
}
}
}Cline (VS Code Extension)
Add to your MCP settings:
{
"mcpServers": {
"gridpane": {
"command": "npx",
"args": ["-y", "@g99/gridpane-mcp-server"],
"env": {
"GRIDPANE_API_URL": "https://my.gridpane.com",
"GRIDPANE_API_TOKEN": "your_token_here"
}
}
}
}Available Tools
User Management (2 tools)
get_current_user- Get authenticated user informationget_user_integrations- Get user's integrations
Server Management (5 tools)
list_servers- List all serversget_server- Get server detailscreate_custom_server- Create a new custom serverdelete_server- Delete a serverget_server_plans- Get available server plans for providers (DigitalOcean, Vultr, Linode, UpCloud, AWS Lightsail)
Site Management (5 tools)
list_sites- List all WordPress sitesget_site- Get site detailscreate_site- Create a new WordPress sitedelete_site- Delete a siteclone_site- Clone a site to a new location
Domain Management (4 tools)
list_domains- List all domainsget_domain- Get domain detailsadd_domain- Add a domain to a siteremove_domain- Remove a domain
System User Management (3 tools)
list_system_users- List system userscreate_system_user- Create a new system userdelete_system_user- Delete a system user
Team Management (3 tools)
list_teams- List all teamsget_team- Get team detailscreate_team- Create a new team
Bundle Management (3 tools)
list_bundles- List plugin/theme bundlesget_bundle- Get bundle detailsapply_bundle_to_site- Apply a bundle to a site
Backup Management (5 tools)
list_backups- List all backupsget_backup- Get backup detailscreate_backup- Create a new backuprestore_backup- Restore from a backupdelete_backup- Delete a backup
Usage Examples
Example 1: List All Servers
// Using the MCP tool
await use_mcp_tool("gridpane", "list_servers", {});Example 2: Create a New WordPress Site
await use_mcp_tool("gridpane", "create_site", {
server_id: "srv_123456",
domain: "example.com",
wp_username: "admin",
wp_email: "[email protected]",
site_title: "My Awesome Site"
});Example 3: Create a Backup
await use_mcp_tool("gridpane", "create_backup", {
site_id: "site_123456",
backup_type: "full"
});Example 4: Clone a Site
await use_mcp_tool("gridpane", "clone_site", {
site_id: "site_123456",
new_domain: "staging.example.com",
target_server_id: "srv_789012" // Optional
});Development
Prerequisites
- Node.js 18 or higher
- npm or yarn
Setup
# Clone the repository
git clone https://github.com/yourusername/gridpane-mcp-server.git
cd gridpane-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Run in development mode
npm run devTesting
# Set your API token
export GRIDPANE_API_TOKEN=your_token_here
# Run the server
npm startAPI Reference
This MCP server implements the GridPane OAuth API v1. For detailed API documentation, visit:
- Official API Docs: https://gridpane.com/api-docs
- Postman Collection: https://documenter.getpostman.com/view/13664964/TVssjU7Z
Requirements
- GridPane Account: Active GridPane account with API access
- API Token: Personal access token from GridPane dashboard
- Node.js: Version 18.0.0 or higher
- MCP Client: Compatible MCP client (Claude Desktop, Cline, etc.)
Security Best Practices
- Never commit your API token to version control
- Use environment variables for sensitive credentials
- Rotate tokens regularly for enhanced security
- Limit token permissions to only what's necessary
- Monitor API usage through GridPane dashboard
Troubleshooting
Error: GRIDPANE_API_TOKEN environment variable is required
Make sure you've set the required environment variables:
export GRIDPANE_API_URL=https://my.gridpane.com # Optional, defaults to my.gridpane.com
export GRIDPANE_API_TOKEN=your_token_here # RequiredError: Authentication failed
Verify that:
- Your API token is valid and not expired
- Your GridPane account has API access enabled
- The token has the necessary permissions
Error: Tool not found
Ensure you're using the correct tool name. Run list_tools to see all available tools.
Contributing
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
- Issues: https://github.com/yourusername/gridpane-mcp-server/issues
- Documentation: https://github.com/yourusername/gridpane-mcp-server#readme
- GridPane Support: https://gridpane.com/support
Acknowledgments
- Built with the Model Context Protocol SDK
- Powered by GridPane API
- Created for the MCP community
Changelog
Version 1.0.0 (Initial Release)
- ✅ Complete GridPane API integration
- ✅ 30+ management tools
- ✅ OAuth authentication
- ✅ Full TypeScript support
- ✅ Comprehensive documentation
- ✅ NPX and UVX installation support
Made with ❤️ for the GridPane and MCP communities
