Complete MCP server wrapping all 84 VirtFusion Admin API endpoints: - Core HTTP client with Bearer auth and error handling - 17 tool modules organized by API category - Endpoint drift detection scripts and Gitea Actions CI/CD - Comprehensive README with configuration examples - CLAUDE.md for AI assistant onboarding Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
507 lines
13 KiB
JSON
507 lines
13 KiB
JSON
[
|
|
{
|
|
"method": "GET",
|
|
"path": "/backups/server/{serverId}",
|
|
"summary": "Retrieve a server backups",
|
|
"tag": "Backups"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/compute/hypervisors",
|
|
"summary": "Retrieve hypervisors",
|
|
"tag": "Hypervisors"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/compute/hypervisors/{hypervisorId}",
|
|
"summary": "Retrive a Hypervisor",
|
|
"tag": "Hypervisors"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/compute/hypervisors/groups",
|
|
"summary": "Retrieve hypervisor groups",
|
|
"tag": "Hypervisor Groups"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/compute/hypervisors/groups/{hypervisorGroupId}",
|
|
"summary": "Retrieve a hypervisor group",
|
|
"tag": "Hypervisor Groups"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/compute/hypervisors/groups/{hypervisorGroupId}/resources",
|
|
"summary": "Retrieve a hypervisor groups resources",
|
|
"tag": "Hypervisor Groups"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/connect",
|
|
"summary": "Test connection",
|
|
"tag": "General"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/connectivity/ipblocks",
|
|
"summary": "Retrieve IP blocks",
|
|
"tag": "IP Blocks"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/connectivity/ipblocks/{blockId}",
|
|
"summary": "Retrieve an IP block",
|
|
"tag": "IP Blocks"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/connectivity/ipblocks/{blockId}/ipv4",
|
|
"summary": "Add an IPv4 range to an IP block",
|
|
"tag": "IP Blocks"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/dns/services/{serviceId}",
|
|
"summary": "Retrieve a DNS service",
|
|
"tag": "DNS"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/media/iso/{isoId}",
|
|
"summary": "Retrieve an ISO",
|
|
"tag": "Media"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/media/templates/fromServerPackageSpec/{serverPackageId}",
|
|
"summary": "Retrieve operating system templates that are available for a package",
|
|
"tag": "Media"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/packages",
|
|
"summary": "Retrieve packages",
|
|
"tag": "Packages"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/packages/{packageId}",
|
|
"summary": "Retrieve a packge",
|
|
"tag": "Packages"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/queue/{queueId}",
|
|
"summary": "Retrieve a queue item",
|
|
"tag": "Queue & Tasks"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/selfService/access/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Modify user access",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/selfService/credit/{creditId}",
|
|
"summary": "Cancel credit that was applied to a user",
|
|
"tag": "Self Service"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/selfService/credit/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Add credit to user",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/selfService/currencies",
|
|
"summary": "Retrieve currencies",
|
|
"tag": "Self Service"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/selfService/hourlyGroupProfile/{profileId}/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Remove hourly group profile from a user",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/selfService/hourlyGroupProfile/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Add an hourly group profile to a user",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/selfService/hourlyResourcePack/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Set an hourly resource pack",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/selfService/hourlyStats/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Retrieve hourly statistics",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/selfService/report/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Generate a report",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/selfService/resourceGroupProfile/{profileId}/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Remove resource group from a user",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/selfService/resourceGroupProfile/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Add a resource group profile to a user",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/selfService/resourcePack/{packId}",
|
|
"summary": "Delete a user resource pack",
|
|
"tag": "Self Service"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/selfService/resourcePack/{packId}",
|
|
"summary": "Retrieve a user resource pack",
|
|
"tag": "Self Service"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/selfService/resourcePack/{packId}",
|
|
"summary": "Modify user resource pack",
|
|
"tag": "Self Service"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/selfService/resourcePack/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Add a resource pack to a user",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/selfService/resourcePackServers/{packId}",
|
|
"summary": "Delete all servers attached to a pack ID",
|
|
"tag": "Self Service"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/selfService/resourcePackServers/{packId}/suspend",
|
|
"summary": "Suspend all servers assigned to a reosurce pack",
|
|
"tag": "Self Service"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/selfService/resourcePackServers/{packId}/unsuspend",
|
|
"summary": "Unsuspend all servers assigned to a reosurce pack",
|
|
"tag": "Self Service"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/selfService/usage/byUserExtRelationId/{extRelationId}",
|
|
"summary": "Retrieve a users usage",
|
|
"tag": "Self Service/External Relational ID"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/servers",
|
|
"summary": "Retrieve servers",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers",
|
|
"summary": "Create a server",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/servers/{serverId}",
|
|
"summary": "Delete a server",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/servers/{serverId}",
|
|
"summary": "Retrieve a server",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/servers/{serverId}/backups/plan/{planId}",
|
|
"summary": "Add, remove or modify a backup plan",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/build",
|
|
"summary": "Build a server",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/customXML",
|
|
"summary": "Set custom XML",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/servers/{serverId}/firewall/{interface}",
|
|
"summary": "Retrieve firewall",
|
|
"tag": "Servers/Network/Firewall"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/firewall/{interface}/disable",
|
|
"summary": "Disable firewall",
|
|
"tag": "Servers/Network/Firewall"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/firewall/{interface}/enable",
|
|
"summary": "Enable firewall",
|
|
"tag": "Servers/Network/Firewall"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/firewall/{interface}/rules",
|
|
"summary": "Apply firewall rulesets",
|
|
"tag": "Servers/Network/Firewall"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/servers/{serverId}/ipv4",
|
|
"summary": "Remove an array of IPv4 addresses",
|
|
"tag": "Servers/Network"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/ipv4",
|
|
"summary": "Add an array of IPv4 addresses",
|
|
"tag": "Servers/Network"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/ipv4Qty",
|
|
"summary": "Add a quantity of IPv4 addresses",
|
|
"tag": "Servers/Network"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/servers/{serverId}/modify/cpuCores",
|
|
"summary": "Modify CPU cores",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/servers/{serverId}/modify/cpuThrottle",
|
|
"summary": "Throttle a servers CPU",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/servers/{serverId}/modify/memory",
|
|
"summary": "Modify memory",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/servers/{serverId}/modify/name",
|
|
"summary": "Modify name",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/servers/{serverId}/modify/traffic",
|
|
"summary": "Modify primary traffic allowance",
|
|
"tag": "Servers/Network/Traffic"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/servers/{serverId}/networkWhitelist",
|
|
"summary": "Remove an address from the whitelist",
|
|
"tag": "Servers/Network"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/networkWhitelist",
|
|
"summary": "Add an address to the whitelist",
|
|
"tag": "Servers/Network"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/servers/{serverId}/owner/{newOwnerId}",
|
|
"summary": "Change owner",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/servers/{serverId}/package/{packageId}",
|
|
"summary": "Change a server package",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/power/boot",
|
|
"summary": "Boot a server",
|
|
"tag": "Servers/Power"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/power/poweroff",
|
|
"summary": "Poweroff a server",
|
|
"tag": "Servers/Power"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/power/restart",
|
|
"summary": "Restart a server",
|
|
"tag": "Servers/Power"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/power/shutdown",
|
|
"summary": "Shutdown a server",
|
|
"tag": "Servers/Power"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/resetPassword",
|
|
"summary": "Reset a server password",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/suspend",
|
|
"summary": "Suspend a server",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/servers/{serverId}/templates",
|
|
"summary": "Retrieve OS templates available to a server",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/servers/{serverId}/traffic",
|
|
"summary": "Retrieve a servers traffic statistics",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/servers/{serverId}/traffic/blocks",
|
|
"summary": "Retrieve a servers traffic blocks",
|
|
"tag": "Servers/Network/Traffic"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/traffic/blocks",
|
|
"summary": "Add a traffic block to a server",
|
|
"tag": "Servers/Network/Traffic"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/servers/{serverId}/traffic/blocks/{blockId}",
|
|
"summary": "Remove a traffic block from a server",
|
|
"tag": "Servers/Network/Traffic"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/unsuspend",
|
|
"summary": "Unsuspend a server",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/servers/{serverId}/vnc",
|
|
"summary": "Retrive VNC details",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/servers/{serverId}/vnc",
|
|
"summary": "Enable or disable VNC",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/servers/user/{userId}",
|
|
"summary": "Retrieve a users servers",
|
|
"tag": "Servers"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/ssh_keys",
|
|
"summary": "Add an SSH key to a user account",
|
|
"tag": "SSH Keys"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/ssh_keys/{keyId}",
|
|
"summary": "Delete an SSH key from a user",
|
|
"tag": "SSH Keys"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/ssh_keys/{keyId}",
|
|
"summary": "Retrieve an SSH key",
|
|
"tag": "SSH Keys"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/ssh_keys/user/{userId}",
|
|
"summary": "Retrieve a users SSH keys",
|
|
"tag": "SSH Keys"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/users",
|
|
"summary": "Create a user",
|
|
"tag": "Users"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/users/{extRelationId}/authenticationTokens",
|
|
"summary": "Generate a set of login tokens",
|
|
"tag": "Users/External Rel ID & Rel Str"
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/users/{extRelationId}/byExtRelation",
|
|
"summary": "Delete a user",
|
|
"tag": "Users/External Rel ID & Rel Str"
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/users/{extRelationId}/byExtRelation",
|
|
"summary": "Retrieve a user",
|
|
"tag": "Users/External Rel ID & Rel Str"
|
|
},
|
|
{
|
|
"method": "PUT",
|
|
"path": "/users/{extRelationId}/byExtRelation",
|
|
"summary": "Modify a user",
|
|
"tag": "Users/External Rel ID & Rel Str"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/users/{extRelationId}/byExtRelation/resetPassword",
|
|
"summary": "Change a user passowrd",
|
|
"tag": "Users/External Rel ID & Rel Str"
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/users/{extRelationId}/serverAuthenticationTokens/{serverId}",
|
|
"summary": "Generate a set of loging tokens using a server ID",
|
|
"tag": "Users/External Rel ID & Rel Str"
|
|
}
|
|
]
|