Vultr MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VULTR_API_KEY | Yes | Your Vultr API key for accessing the Vultr cloud services |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tasks | {
"list": {},
"cancel": {},
"requests": {
"tools": {
"call": {}
},
"prompts": {
"get": {}
},
"resources": {
"read": {}
}
}
} |
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| dns_list_domainsA | List all DNS domains in your Vultr account. Args: format: Output format - 'compact' (default, one domain per line) or 'json' (full details) Returns: All DNS domains in the requested format |
| dns_get_domainA | Get details for a specific DNS domain. Args: domain: The domain name to get details for Returns: Domain details including creation date and DNSSEC status |
| dns_create_domainB | Create a new DNS domain. Args: domain: The domain name to create ip: The default IP address for the domain ctx: FastMCP context for resource change notifications dns_sec: Enable DNSSEC (enabled/disabled, default: disabled) Returns: Created domain information |
| dns_delete_domainB | Delete a DNS domain and all its records. Args: domain: The domain name to delete ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| dns_list_recordsA | List DNS records for a domain. Supports compact zone format and filtering. Args: domain: The domain name to list records for format: Output format - 'zone' (compact, default) or 'json' (full details) record_type: Filter by type (A, AAAA, CNAME, MX, TXT, NS, SRV) per_page: Records per page (1-500). Omit to fetch all records. cursor: Pagination cursor from previous response Returns: DNS records in requested format |
| dns_get_recordC | Get details for a specific DNS record. Args: domain: The domain name record_id: The record ID to get details for Returns: DNS record details |
| dns_create_recordA | Create a new DNS record. Args: domain: The domain name record_type: Record type (A, AAAA, CNAME, MX, TXT, NS, SRV) name: Record name/subdomain data: Record data/value ctx: FastMCP context for resource change notifications ttl: Time to live in seconds (default: 300) priority: Priority for MX/SRV records Returns: Created record information |
| dns_update_recordC | Update an existing DNS record. Args: domain: The domain name record_id: The record ID to update ctx: FastMCP context for resource change notifications name: New record name (optional) data: New record data (optional) ttl: New TTL value (optional) priority: New priority for MX/SRV records (optional) Returns: Updated record information |
| dns_delete_recordA | Delete a DNS record. Args: domain: The domain name record_id: The record ID to delete ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| dns_validate_recordA | Validate a DNS record before creation. Args: record_type: Record type (A, AAAA, CNAME, MX, TXT, NS, SRV) name: Record name/subdomain data: Record data/value ttl: Time to live in seconds priority: Priority for MX/SRV records Returns: Validation results with any errors or warnings |
| dns_analyze_domainB | Analyze DNS configuration for a domain and provide recommendations. Args: domain: The domain name to analyze Returns: Analysis results with recommendations for improvements |
| dns_setup_websiteB | Set up basic DNS records for a website. Args: domain: The domain name ip: The website IP address www_enabled: Whether to create www subdomain record (default: True) Returns: List of created DNS records |
| dns_export_zone_fileB | Export domain records as standard DNS zone file format. Args: domain: The domain name to export Returns: DNS zone file content as string |
| dns_import_zone_fileA | Import DNS records from zone file format. Args: domain: The domain name to import records to zone_data: DNS zone file content as string dry_run: If True, only validate and return what would be created without making changes Returns: List of created records or validation results |
| instance_listB | List all instances in your account. Args: format: 'compact' (default, one line per instance) or 'json' Returns: Instances with id, label, hostname, region, plan, power state and main IP. Compact format is far cheaper in tokens for fleet work. |
| instance_getA | Get full details of a single instance. Smart identifier resolution: use the instance ID, label or hostname. A name matching more than one instance is refused rather than guessed. Args: instance_id: The instance ID, label, or hostname Returns: The instance, including power state, region, plan, IPs and tags |
| instance_createB | Create a new instance. Args: region: Region code (e.g., 'ewr', 'lax') plan: Plan ID (e.g., 'vc2-1c-1gb') ctx: FastMCP context for resource change notifications label: Label for the instance os_id: Operating System ID (use list_os to get available options) iso_id: ISO ID for custom installation script_id: Startup script ID snapshot_id: Snapshot ID to restore from enable_ipv6: Enable IPv6 enable_private_network: Enable private networking attach_private_network: List of private network IDs to attach ssh_key_ids: List of SSH key IDs to install backups: Enable automatic backups app_id: Application ID to install user_data: Cloud-init user data ddos_protection: Enable DDoS protection activation_email: Send activation email hostname: Hostname for the instance tag: Tag for the instance firewall_group_id: Firewall group ID reserved_ipv4: Reserved IPv4 address to use Returns: Created instance information |
| instance_updateB | Update an existing instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) ctx: FastMCP context for resource change notifications label: New label for the instance tag: New tag for the instance plan: New plan ID (for resizing) enable_ipv6: Enable/disable IPv6 backups: Enable/disable automatic backups ddos_protection: Enable/disable DDoS protection firewall_group_id: New firewall group ID user_data: New cloud-init user data Returns: Updated instance information |
| instance_deleteA | Delete an instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| instance_startA | Start a stopped instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) ctx: FastMCP context for resource change notifications Returns: Status message confirming start |
| instance_stopA | Stop a running instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) ctx: FastMCP context for resource change notifications Returns: Status message confirming stop |
| instance_rebootB | Reboot an instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) ctx: FastMCP context for resource change notifications Returns: Status message confirming reboot |
| instance_reinstallB | Reinstall an instance's operating system. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) ctx: FastMCP context for resource change notifications hostname: New hostname for the instance (optional) Returns: Reinstall status information |
| instance_get_bandwidthA | Get bandwidth usage statistics for an instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) Returns: Bandwidth usage information |
| instance_list_ipv4A | List IPv4 addresses for an instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) Returns: List of IPv4 addresses |
| instance_create_ipv4A | Create a new IPv4 address for an instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) reboot: Whether to reboot the instance (default: True) Returns: Created IPv4 information |
| instance_delete_ipv4A | Delete an IPv4 address from an instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) ipv4: The IPv4 address to delete Returns: Status message confirming deletion |
| instance_list_ipv6A | List IPv6 addresses for an instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) Returns: List of IPv6 addresses |
| ssh_key_listA | List all SSH keys in your Vultr account. Args: format: Output format - 'compact' (default, one key per line) or 'json' (full details) Returns: All SSH keys in the requested format |
| ssh_key_getA | Get details for a specific SSH key. Args: ssh_key_id: The SSH key ID or name (e.g., "my-laptop-key" or UUID) Returns: SSH key details including name, public key, and creation date |
| ssh_key_createA | Create a new SSH key. Args: name: Name for the SSH key ssh_key: The SSH public key (e.g., "ssh-rsa AAAAB3NzaC1yc2...") ctx: FastMCP context for resource change notifications Returns: Created SSH key information including: - id: SSH key ID - name: SSH key name - ssh_key: The public SSH key - date_created: Creation date |
| ssh_key_updateB | Update an existing SSH key. Args: ssh_key_id: The SSH key ID or name (e.g., "my-laptop-key" or UUID) ctx: FastMCP context for resource change notifications name: New name for the SSH key (optional) ssh_key: New SSH public key (optional) Returns: Updated SSH key information |
| ssh_key_deleteB | Delete an SSH key. Args: ssh_key_id: The SSH key ID or name (e.g., "my-laptop-key" or UUID) ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| backup_list_allB | List all backups in your Vultr account. Returns: Backups, each with id, date_created, description, size and status |
| backup_getC | Get details of a specific backup. Args: backup_id: The backup ID Returns: Backup details |
| backup_get_scheduleA | Get the automatic backup schedule for an instance. Smart identifier resolution: use the instance label, hostname or ID. All times are UTC. Args: instance_identifier: Instance label, hostname, or ID Returns: Schedule with enabled, type, hour, dow, dom and next_scheduled_time_utc. When enabled is false the instance has backups turned off and the schedule is not running. |
| backup_set_scheduleA | Set the automatic backup schedule for an instance. Smart identifier resolution: use the instance label, hostname or ID. A name matching more than one instance is refused rather than guessed. This sets when backups run. It does not turn backups on: an instance with backups disabled keeps the schedule but never runs it. Use instance_update with backups=true for that. All times are UTC. Args: instance_identifier: Instance label, hostname, or ID schedule_type: daily, weekly, monthly, daily_alt_even (even days of the month) or daily_alt_odd (odd days) ctx: FastMCP context for resource change notifications hour: Hour of day to run, 0-23, UTC dow: Day of week, required for a weekly schedule. Vultr's own tooling documents this range inconsistently (0-6 in the CLI, 1-7 elsewhere), so the value is passed through unchecked and the API decides. Read the schedule back to confirm the day. dom: Day of month, 1-28, required for a monthly schedule Returns: The schedule as it stands after the change |
| firewall_list_groupsA | List all firewall groups in your Vultr account. Returns: List of firewall group objects with details including: - id: Firewall group ID - description: Group description - date_created: Creation date - date_modified: Last modification date - instance_count: Number of instances using this group - rule_count: Number of rules in this group - max_rule_count: Maximum allowed rules |
| firewall_get_groupB | Get information about a specific firewall group. Args: firewall_group_id: The firewall group ID or description (e.g., "web-servers" or UUID) Returns: Firewall group information |
| firewall_create_groupC | Create a new firewall group. Args: description: Description for the firewall group ctx: FastMCP context for resource change notifications Returns: Created firewall group information |
| firewall_update_groupA | Update a firewall group description. Args: firewall_group_id: The firewall group ID or description (e.g., "web-servers" or UUID) description: New description for the firewall group ctx: FastMCP context for resource change notifications Returns: Status message confirming update |
| firewall_delete_groupA | Delete a firewall group. Args: firewall_group_id: The firewall group ID or description (e.g., "web-servers" or UUID) ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| firewall_list_rulesA | List all rules in a firewall group. Args: firewall_group_id: The firewall group ID or description (e.g., "web-servers" or UUID) Returns: List of firewall rules with details |
| firewall_get_ruleA | Get information about a specific firewall rule. Args: firewall_group_id: The firewall group ID or description (e.g., "web-servers" or UUID) firewall_rule_id: The firewall rule ID Returns: Firewall rule information |
| firewall_create_ruleA | Create a new firewall rule. Args: firewall_group_id: The firewall group ID or description (e.g., "web-servers" or UUID) ip_type: IP type (v4 or v6) protocol: Protocol (tcp, udp, icmp, gre) subnet: IP subnet (use "0.0.0.0" for any IPv4, "::" for any IPv6) subnet_size: Subnet size (0-32 for IPv4, 0-128 for IPv6) ctx: FastMCP context for resource change notifications port: Port or port range (e.g., "80" or "8000:8999") - required for tcp/udp source: Source type (e.g., "cloudflare") - optional notes: Notes for the rule - optional Returns: Created firewall rule information Examples: # Allow HTTP from anywhere create_rule(group_id, "v4", "tcp", "0.0.0.0", 0, ctx, port="80") |
| firewall_delete_ruleA | Delete a firewall rule. Args: firewall_group_id: The firewall group ID or description (e.g., "web-servers" or UUID) firewall_rule_id: The firewall rule ID to delete ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| firewall_setup_web_server_rulesA | Set up common firewall rules for a web server. Args: firewall_group_id: The firewall group ID or description (e.g., "web-servers" or UUID) ctx: FastMCP context for resource change notifications allow_ssh_from: IP subnet to allow SSH from (default: anywhere) Returns: List of created firewall rules Creates rules for:
|
| snapshot_createA | Create a snapshot from an instance. Args: instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) description: Description for the snapshot (optional) Returns: Created snapshot information Note: Creating a snapshot may take several minutes depending on the instance size. The snapshot will appear with status 'pending' initially. |
| snapshot_create_from_urlB | Create a snapshot from a URL. Args: url: The URL of the snapshot to create (must be a valid snapshot URL) description: Description for the snapshot (optional) Returns: Created snapshot information Note: The URL must point to a valid Vultr snapshot file. |
| snapshot_updateA | Update a snapshot description. Args: snapshot_id: The snapshot ID or description (e.g., "backup-2024-01" or UUID) description: New description for the snapshot Returns: Status message confirming update |
| snapshot_deleteA | Delete a snapshot. Args: snapshot_id: The snapshot ID or description (e.g., "backup-2024-01" or UUID) Returns: Status message confirming deletion Warning: This action cannot be undone! |
| region_listA | List all available Vultr regions. Returns: List of region objects with details including: - id: Region ID (e.g., "ewr", "lax", "nrt") - city: City name - country: Country code - continent: Continent name - options: Available options (e.g., ["ddos_protection"]) |
| region_get_availabilityA | Get availability information for a specific region. Args: region_id: The region ID to check availability for (e.g., "ewr", "lax") Returns: Availability information including: - available_plans: List of available plan IDs in this region This is useful for checking which instance plans are available in a specific region before creating instances. |
| region_find_regions_with_planA | Find all regions where a specific plan is available. Args: plan_id: The plan ID to search for (e.g., "vc2-1c-1gb") Returns: List of regions where the plan is available, with region details |
| region_list_by_continentA | List all regions in a specific continent. Args: continent: Continent name (e.g., "North America", "Europe", "Asia", "Australia") Returns: List of regions in the specified continent |
| region_list_with_ddos_protectionA | List all regions that support DDoS protection. Returns: List of regions with DDoS protection capability |
| reserved_ip_createA | Create a new reserved IP in a specific region. Args: region: The region ID where to reserve the IP (e.g., "ewr", "lax") ctx: FastMCP context for resource change notifications ip_type: Type of IP to reserve - "v4" for IPv4 or "v6" for IPv6 (default: "v4") label: Optional label for the reserved IP Returns: Created reserved IP information Example: Create a reserved IPv4 in New Jersey: create(region="ewr", ip_type="v4", label="web-server-ip") |
| reserved_ip_updateA | Update a reserved IP's label. Args: reserved_ip: The reserved IP address (e.g., "192.168.1.1" or "2001:db8::1") label: New label for the reserved IP ctx: FastMCP context for resource change notifications Returns: Success message |
| reserved_ip_deleteB | Delete a reserved IP. Args: reserved_ip: The reserved IP address to delete (e.g., "192.168.1.1" or "2001:db8::1") ctx: FastMCP context for resource change notifications Returns: Success message Note: The IP must be detached from any instance before deletion. |
| reserved_ip_attachA | Attach a reserved IP to an instance. Args: reserved_ip: The reserved IP address (e.g., "192.168.1.1" or "2001:db8::1") instance_id: The instance ID, label, or hostname (e.g., "web-server", "db.example.com", or UUID) ctx: FastMCP context for resource change notifications Returns: Success message Note: The instance must be in the same region as the reserved IP. |
| reserved_ip_detachB | Detach a reserved IP from its instance. Args: reserved_ip: The reserved IP address to detach (e.g., "192.168.1.1" or "2001:db8::1") ctx: FastMCP context for resource change notifications Returns: Success message |
| reserved_ip_convert_instance_ipA | Convert an existing instance IP to a reserved IP. Args: ip_address: The IP address to convert instance_id: The instance ID, label, or hostname that owns the IP (e.g., "web-server" or UUID) ctx: FastMCP context for resource change notifications label: Optional label for the reserved IP Returns: Created reserved IP information This is useful when you want to keep an IP address even after destroying the instance. The IP will be converted to a reserved IP and remain attached to the instance. |
| reserved_ip_list_by_regionA | List all reserved IPs in a specific region. Args: region: The region ID to filter by (e.g., "ewr", "lax") Returns: List of reserved IPs in the specified region |
| reserved_ip_list_unattachedA | List all unattached reserved IPs. Returns: List of reserved IPs that are not attached to any instance |
| reserved_ip_list_attachedB | List all attached reserved IPs. Returns: List of reserved IPs that are attached to instances, including the instance ID they're attached to |
| registry_createA | Create a new container registry subscription. Args: name: Name for the container registry plan: Registry plan ("start_up", "business", "premium", etc.) region: Region code for the registry (e.g., "ewr", "lax", "fra") ctx: FastMCP context for resource change notifications Returns: Created registry information including ID, URN, and configuration |
| registry_updateB | Update container registry plan. Smart identifier resolution: Use registry name or ID. Args: registry_identifier: Registry name or ID to update plan: New registry plan ("start_up", "business", "premium", etc.) ctx: FastMCP context for resource change notifications Returns: Success confirmation |
| registry_deleteB | Delete a container registry subscription. Smart identifier resolution: Use registry name or ID. Args: registry_identifier: Registry name or ID to delete ctx: FastMCP context for resource change notifications Returns: Success confirmation |
| registry_list_plansA | List all available container registry plans. Returns: List of available plans with pricing and feature details |
| registry_generate_docker_credentialsA | Generate Docker credentials for container registry access. Smart identifier resolution: Use registry name or ID. Args: registry_identifier: Registry name or ID expiry_seconds: Expiration time in seconds (optional, default: no expiry) read_write: Whether to grant read-write access (default: True, False for read-only) Returns: Docker credentials including username, password, and registry URL |
| registry_generate_kubernetes_credentialsA | Generate Kubernetes credentials for container registry access. Smart identifier resolution: Use registry name or ID. Args: registry_identifier: Registry name or ID expiry_seconds: Expiration time in seconds (optional, default: no expiry) read_write: Whether to grant read-write access (default: True, False for read-only) base64_encode: Whether to base64 encode the credentials (default: True) Returns: Kubernetes secret YAML configuration for registry access |
| registry_get_docker_login_commandA | Generate Docker login command for easy CLI access. Smart identifier resolution: Use registry name or ID. Args: registry_identifier: Registry name or ID expiry_seconds: Expiration time in seconds (optional, default: no expiry) read_write: Whether to grant read-write access (default: True, False for read-only) Returns: Docker login command and credentials information |
| registry_get_registry_infoB | Get comprehensive registry information including usage and configuration. Smart identifier resolution: Use registry name or ID. Args: registry_identifier: Registry name or ID Returns: Complete registry information with usage statistics and endpoints |
| block_storage_createA | Create a new block storage volume. Args: region: Region code where the volume will be created (e.g., "ewr", "lax", "fra") size_gb: Size in GB (10-40000 depending on block_type) ctx: FastMCP context for resource change notifications label: Optional label for the volume (recommended for easy identification) block_type: Optional block storage type (affects size limits and performance) Returns: Created volume information including ID, cost, and configuration |
| block_storage_updateA | Update block storage volume configuration. Smart identifier resolution: Use volume label or ID. Args: volume_identifier: Volume label or ID to update ctx: FastMCP context for resource change notifications size_gb: New size in GB (can only increase, not decrease) label: New label for the volume Returns: Success confirmation |
| block_storage_deleteB | Delete a block storage volume. Smart identifier resolution: Use volume label or ID. Args: volume_identifier: Volume label or ID to delete ctx: FastMCP context for resource change notifications Returns: Success confirmation |
| block_storage_attachA | Attach block storage volume to an instance. Smart identifier resolution: Use volume label/ID and instance label/hostname/ID. Args: volume_identifier: Volume label or ID to attach instance_identifier: Instance label, hostname, or ID to attach to ctx: FastMCP context for resource change notifications live: Whether to attach without rebooting the instance (default: True) Returns: Success confirmation |
| block_storage_detachA | Detach block storage volume from its instance. Smart identifier resolution: Use volume label or ID. Args: volume_identifier: Volume label or ID to detach ctx: FastMCP context for resource change notifications live: Whether to detach without rebooting the instance (default: True) Returns: Success confirmation |
| block_storage_list_by_regionA | List block storage volumes in a specific region. Args: region: Region code to filter by (e.g., "ewr", "lax", "fra") Returns: List of volumes in the specified region |
| block_storage_list_unattachedA | List all unattached block storage volumes. Returns: List of volumes that are not currently attached to any instance |
| block_storage_list_attachedA | List all attached block storage volumes with instance information. Returns: List of volumes that are currently attached to instances |
| block_storage_get_volume_statusA | Get comprehensive status information for a block storage volume. Smart identifier resolution: Use volume label or ID. Args: volume_identifier: Volume label or ID Returns: Detailed status including attachment, usage, and cost information |
| block_storage_get_mounting_instructionsA | Get instructions for mounting a block storage volume on Linux. Smart identifier resolution: Use volume label or ID. Args: volume_identifier: Volume label or ID Returns: Step-by-step mounting instructions and commands |
| vpc_createA | Create a new VPC. Args: region: Region code where the VPC will be created (e.g., "ewr", "lax", "fra") description: Description/label for the VPC ctx: FastMCP context for resource change notifications v4_subnet: IPv4 subnet for the VPC (e.g., "10.0.0.0", defaults to auto-assigned) v4_subnet_mask: IPv4 subnet mask (e.g., 24, defaults to 24) Returns: Created VPC information including ID and subnet details |
| vpc_updateC | Update VPC description. Smart identifier resolution: Use VPC description or ID. Args: vpc_identifier: VPC description or ID to update description: New description for the VPC ctx: FastMCP context for resource change notifications Returns: Success confirmation |
| vpc_deleteB | Delete a VPC. Smart identifier resolution: Use VPC description or ID. Args: vpc_identifier: VPC description or ID to delete ctx: FastMCP context for resource change notifications Returns: Success confirmation |
| vpc_create_vpc2A | Create a new VPC 2.0 network. Args: region: Region code where the VPC 2.0 will be created (e.g., "ewr", "lax", "fra") description: Description/label for the VPC 2.0 ip_type: IP type ("v4" or "v6", defaults to "v4") ip_block: IP block for the VPC 2.0 (e.g., "10.0.0.0", defaults to auto-assigned) prefix_length: Prefix length (e.g., 24 for /24, defaults to 24) Returns: Created VPC 2.0 information including ID and IP block details |
| vpc_update_vpc2B | Update VPC 2.0 description. Smart identifier resolution: Use VPC 2.0 description or ID. Args: vpc2_identifier: VPC 2.0 description or ID to update description: New description for the VPC 2.0 Returns: Success confirmation |
| vpc_delete_vpc2B | Delete a VPC 2.0 network. Smart identifier resolution: Use VPC 2.0 description or ID. Args: vpc2_identifier: VPC 2.0 description or ID to delete Returns: Success confirmation |
| vpc_attach_to_instanceA | Attach VPC or VPC 2.0 to an instance. Smart identifier resolution: Use VPC/instance description/label/hostname or ID. Args: vpc_identifier: VPC/VPC 2.0 description or ID to attach instance_identifier: Instance label, hostname, or ID to attach to vpc_type: Type of VPC ("vpc" or "vpc2", defaults to "vpc") Returns: Success confirmation |
| vpc_detach_from_instanceA | Detach VPC or VPC 2.0 from an instance. Smart identifier resolution: Use VPC/instance description/label/hostname or ID. Args: vpc_identifier: VPC/VPC 2.0 description or ID to detach instance_identifier: Instance label, hostname, or ID to detach from vpc_type: Type of VPC ("vpc" or "vpc2", defaults to "vpc") Returns: Success confirmation |
| vpc_list_instance_networksA | List all VPCs and VPC 2.0 networks attached to an instance. Smart identifier resolution: Use instance label, hostname, or ID. Args: instance_identifier: Instance label, hostname, or ID Returns: Combined list of VPCs and VPC 2.0 networks attached to the instance |
| vpc_list_by_regionA | List VPCs and VPC 2.0 networks in a specific region. Args: region: Region code to filter by (e.g., "ewr", "lax", "fra") Returns: Combined list of VPCs and VPC 2.0 networks in the specified region |
| vpc_get_network_infoB | Get comprehensive network information for VPC or VPC 2.0. Smart identifier resolution: Use VPC/VPC 2.0 description or ID. Args: identifier: VPC/VPC 2.0 description or ID vpc_type: Type to search ("vpc", "vpc2", or "auto" to search both) Returns: Comprehensive network information with usage recommendations |
| iso_list_isosC | List all available ISO images. Returns: List of available ISO images |
| iso_get_isoC | Get details of a specific ISO image. Args: iso_id: The ISO ID Returns: ISO image details |
| iso_create_isoB | Create a new ISO image from URL. Args: url: The URL to create the ISO from Returns: Created ISO details |
| iso_delete_isoC | Delete an ISO image. Args: iso_id: The ISO ID to delete Returns: Success message |
| iso_list_public_isosA | List public ISO images (filtered from all ISOs). Returns: List of public ISO images |
| iso_list_custom_isosB | List custom ISO images (user-uploaded). Returns: List of custom ISO images |
| iso_get_iso_by_nameC | Get ISO by name or filename. Args: name: ISO name or filename to search for Returns: ISO details if found |
| os_list_operating_systemsB | List all available operating systems. Returns: List of available operating systems |
| os_get_operating_systemB | Get details of a specific operating system. Args: os_id: The operating system ID Returns: Operating system details |
| os_list_linux_osC | List Linux operating systems. Returns: List of Linux operating systems |
| os_list_windows_osC | List Windows operating systems. Returns: List of Windows operating systems |
| os_search_os_by_nameB | Search operating systems by name. Args: name: OS name to search for (partial match) Returns: List of matching operating systems |
| os_get_os_by_nameB | Get operating system by exact name match. Args: name: Exact OS name to find Returns: Operating system details |
| os_list_application_imagesB | List application images (one-click apps). Returns: List of application images |
| os_list_os_by_familyB | List operating systems by family. Args: family: OS family (e.g., 'ubuntu', 'centos', 'windows', 'application') Returns: List of operating systems in the specified family |
| plan_list_plansA | List all available plans. Supports compact table format for reduced token usage. Args: plan_type: Optional plan type filter (e.g., 'all', 'vc2', 'vhf', 'voc') format: Output format - 'compact' (default, table) or 'json' (full details) Returns: Plans in requested format |
| plan_get_planB | Get details of a specific plan. Args: plan_id: The plan ID Returns: Plan details |
| plan_list_vc2_plansA | List VC2 (Virtual Cloud Compute) plans. Args: format: Output format - 'compact' (default) or 'json' Returns: VC2 plans in requested format |
| plan_list_vhf_plansC | List VHF (High Frequency) plans. Args: format: Output format - 'compact' (default) or 'json' Returns: VHF plans in requested format |
| plan_list_voc_plansB | List VOC (Optimized Cloud) plans. Args: format: Output format - 'compact' (default) or 'json' Returns: VOC plans in requested format |
| plan_search_plans_by_specsA | Search plans by specifications. Args: min_vcpus: Minimum number of vCPUs min_ram: Minimum RAM in MB min_disk: Minimum disk space in GB max_monthly_cost: Maximum monthly cost in USD format: Output format - 'compact' (default) or 'json' Returns: Plans matching the criteria in requested format |
| plan_get_plan_by_type_and_specB | Get plans by type and specific vCPU/RAM combination. Args: plan_type: Plan type (vc2, vhf, voc) vcpus: Number of vCPUs ram_gb: RAM in GB format: Output format - 'compact' (default) or 'json' Returns: Matching plans in requested format |
| plan_get_cheapest_planC | Get the cheapest available plan. Args: plan_type: Optional plan type filter Returns: Cheapest plan details |
| plan_get_plans_by_region_availabilityA | Get plans available in a specific region. Args: region: Region code (e.g., 'ewr', 'lax') format: Output format - 'compact' (default) or 'json' Returns: Plans available in the specified region |
| plan_compare_plansA | Compare multiple plans side by side. Args: plan_ids: List of plan IDs to compare format: Output format - 'compact' (default) or 'json' Returns: Plan comparison in requested format |
| startup_script_list_startup_scriptsB | List all startup scripts. Returns: List of startup scripts |
| startup_script_get_startup_scriptA | Get details of a specific startup script. Smart identifier resolution: use script name or UUID. Args: script_identifier: The startup script name or ID Returns: Startup script details |
| startup_script_create_startup_scriptB | Create a new startup script. Args: name: Name for the startup script script: The script content script_type: Type of script ('boot' or 'pxe') Returns: Created startup script details |
| startup_script_update_startup_scriptA | Update a startup script. Smart identifier resolution: use script name or UUID. Args: script_identifier: The startup script name or ID name: New name for the script script: New script content Returns: Updated startup script details |
| startup_script_delete_startup_scriptA | Delete a startup script. Smart identifier resolution: use script name or UUID. Args: script_identifier: The startup script name or ID to delete Returns: Success message |
| startup_script_list_boot_scriptsB | List boot startup scripts. Returns: List of boot startup scripts |
| startup_script_list_pxe_scriptsB | List PXE startup scripts. Returns: List of PXE startup scripts |
| startup_script_search_startup_scriptsB | Search startup scripts by name or content. Args: query: Search term to look for in script names or content Returns: List of matching startup scripts |
| startup_script_create_common_startup_scriptA | Create a common startup script from templates. Args: script_type: Type of script ('docker_install', 'nodejs_install', 'security_updates', 'ssh_setup') ssh_port: SSH port to use for 'ssh_setup' script type (default: 22) Returns: Created startup script details |
| startup_script_get_startup_script_contentA | Get the content of a startup script. Smart identifier resolution: use script name or UUID. Args: script_identifier: The startup script name or ID Returns: Script content |
| billing_get_account_infoB | Get account information including billing details. Returns: Account information and billing details |
| billing_get_current_balanceB | Get current account balance and payment information. Returns: Current balance, pending charges, and payment history |
| billing_list_billing_historyB | List billing history for the specified number of days. Args: days: Number of days to include (default: 30) per_page: Number of items per page (default: 25) Returns: Billing history with transaction details |
| billing_list_invoicesC | List all invoices. Args: per_page: Number of items per page (default: 25) Returns: List of invoices with pagination info |
| billing_get_invoiceB | Get details of a specific invoice. Args: invoice_id: The invoice ID Returns: Invoice details including line items |
| billing_list_invoice_itemsB | List items in a specific invoice. Args: invoice_id: The invoice ID per_page: Number of items per page (default: 25) Returns: Invoice line items with details |
| billing_get_monthly_usage_summaryB | Get monthly usage and cost summary. Args: year: Year (e.g., 2024) month: Month (1-12) Returns: Monthly usage summary with service breakdown |
| billing_get_current_month_summaryB | Get current month usage and cost summary. Returns: Current month usage summary with service breakdown |
| billing_get_last_month_summaryB | Get last month usage and cost summary. Returns: Last month usage summary with service breakdown |
| billing_analyze_spending_trendsB | Analyze spending trends over the past months. Args: months: Number of months to analyze (default: 6) Returns: Spending analysis with trends and recommendations |
| billing_get_cost_breakdown_by_serviceB | Get cost breakdown by service for the specified period. Args: days: Number of days to analyze (default: 30) Returns: Service-wise cost breakdown with percentages |
| billing_get_payment_summaryC | Get payment summary and account status. Returns: Payment summary with account status |
| bare_metal_list_bare_metal_serversA | List all bare metal servers. Returns: List of bare metal servers with details |
| bare_metal_get_bare_metal_serverA | Get details of a specific bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID Returns: Bare metal server details |
| bare_metal_create_bare_metal_serverC | Create a new bare metal server. Args: region: Region to deploy in plan: Bare metal plan ID os_id: Operating system ID iso_id: ISO ID for custom installation script_id: Startup script ID ssh_key_ids: List of SSH key IDs label: Server label tag: Server tag user_data: Cloud-init user data enable_ipv6: Enable IPv6 enable_private_network: Enable private network attach_private_network: Private network IDs to attach attach_vpc: VPC IDs to attach attach_vpc2: VPC 2.0 IDs to attach enable_ddos_protection: Enable DDoS protection hostname: Server hostname persistent_pxe: Enable persistent PXE Returns: Created bare metal server details |
| bare_metal_update_bare_metal_serverB | Update a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID label: New label tag: New tag user_data: New user data enable_ddos_protection: Enable/disable DDoS protection Returns: Updated bare metal server details |
| bare_metal_delete_bare_metal_serverA | Delete a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID to delete Returns: Success message |
| bare_metal_start_bare_metal_serverA | Start a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID Returns: Success message |
| bare_metal_stop_bare_metal_serverA | Stop a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID Returns: Success message |
| bare_metal_reboot_bare_metal_serverA | Reboot a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID Returns: Success message |
| bare_metal_reinstall_bare_metal_serverB | Reinstall a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID hostname: New hostname for the server Returns: Reinstall operation details |
| bare_metal_get_bare_metal_bandwidthA | Get bandwidth usage for a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID Returns: Bandwidth usage information |
| bare_metal_get_bare_metal_neighborsA | Get neighbors (other servers on same physical host) for a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID Returns: List of neighboring servers |
| bare_metal_get_bare_metal_user_dataA | Get user data for a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID Returns: User data information |
| bare_metal_list_bare_metal_plansC | List available bare metal plans. Args: plan_type: Optional plan type filter Returns: List of bare metal plans |
| bare_metal_get_bare_metal_planC | Get details of a specific bare metal plan. Args: plan_id: The plan ID Returns: Bare metal plan details |
| bare_metal_search_bare_metal_plansA | Search bare metal plans by specifications. Args: min_vcpus: Minimum number of vCPUs min_ram: Minimum RAM in GB min_disk: Minimum disk space in GB max_monthly_cost: Maximum monthly cost in USD Returns: List of plans matching the criteria |
| bare_metal_list_bare_metal_servers_by_statusB | List bare metal servers by status. Args: status: Server status to filter by (e.g., 'active', 'stopped', 'installing') Returns: List of bare metal servers with the specified status |
| bare_metal_list_bare_metal_servers_by_regionA | List bare metal servers in a specific region. Args: region: Region code (e.g., 'ewr', 'lax') Returns: List of bare metal servers in the specified region |
| bare_metal_get_bare_metal_server_summaryA | Get a comprehensive summary of a bare metal server. Smart identifier resolution: use server label, hostname, or UUID. Args: server_identifier: The bare metal server label, hostname, or ID Returns: Comprehensive server summary including status, specs, and usage |
| cdn_list_cdn_zonesA | List all CDN zones. Returns: List of CDN zones with details |
| cdn_get_cdn_zoneA | Get details of a specific CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID Returns: CDN zone details |
| cdn_create_cdn_zoneB | Create a new CDN zone. Args: origin_domain: Origin domain for the CDN origin_scheme: Origin scheme (http or https) cors_policy: CORS policy configuration gzip_compression: Enable gzip compression block_ai_bots: Block AI/crawler bots block_bad_bots: Block known bad bots block_ip_addresses: List of IP addresses to block regions: List of regions to enable CDN in Returns: Created CDN zone details |
| cdn_update_cdn_zoneA | Update a CDN zone configuration. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID cors_policy: CORS policy configuration gzip_compression: Enable gzip compression block_ai_bots: Block AI/crawler bots block_bad_bots: Block known bad bots block_ip_addresses: List of IP addresses to block regions: List of regions to enable CDN in Returns: Updated CDN zone details |
| cdn_delete_cdn_zoneA | Delete a CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID to delete Returns: Success message |
| cdn_purge_cdn_zoneA | Purge all cached content from a CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID Returns: Purge operation details |
| cdn_get_cdn_zone_statsB | Get statistics for a CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID Returns: CDN zone statistics including bandwidth, requests, and cache hit ratio |
| cdn_get_cdn_zone_logsA | Get access logs for a CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID start_date: Start date for logs (ISO format: YYYY-MM-DD) end_date: End date for logs (ISO format: YYYY-MM-DD) per_page: Number of items per page (default: 25) Returns: CDN zone access logs with request details |
| cdn_create_cdn_ssl_certificateA | Upload SSL certificate for a CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID certificate: SSL certificate content (PEM format) private_key: Private key content (PEM format) certificate_chain: Certificate chain (optional, PEM format) Returns: SSL certificate details |
| cdn_get_cdn_ssl_certificateA | Get SSL certificate information for a CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID Returns: SSL certificate information including expiry and status |
| cdn_delete_cdn_ssl_certificateA | Remove SSL certificate from a CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID Returns: Success message |
| cdn_get_cdn_available_regionsB | Get list of available CDN regions. Returns: List of available CDN regions with details |
| cdn_analyze_cdn_performanceB | Analyze CDN zone performance over the specified period. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID days: Number of days to analyze (default: 7) Returns: Performance analysis including cache hit ratio, bandwidth usage, and recommendations |
| cdn_setup_cdn_for_websiteA | Set up a CDN zone with optimal settings for a website. Args: origin_domain: Origin domain for the website enable_security: Enable bot blocking and security features enable_compression: Enable gzip compression regions: List of regions to enable (if not specified, uses global) Returns: Created CDN zone with setup details and next steps |
| cdn_get_cdn_zone_summaryA | Get a comprehensive summary of a CDN zone. Smart identifier resolution: use origin domain, CDN domain, or UUID. Args: zone_identifier: The CDN zone origin domain, CDN domain, or ID Returns: Comprehensive CDN zone summary including configuration, stats, and SSL info |
| k8s_list_kubernetes_clustersA | List all Kubernetes clusters in your Vultr account. Returns: List of cluster objects with details including: - id: Cluster ID - label: Cluster label - version: Kubernetes version - region: Region code - status: Cluster status - node_pools: List of node pools - date_created: Creation date - cluster_subnet: Cluster subnet - service_subnet: Service subnet - ip: Cluster IP address |
| k8s_get_kubernetes_clusterA | Get detailed information about a specific Kubernetes cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID (e.g., "production-cluster" or UUID) Returns: Detailed cluster information including configuration and status |
| k8s_create_kubernetes_clusterA | Create a new Kubernetes cluster. Args: label: Label for the cluster region: Region code (e.g., 'ewr', 'lax') version: Kubernetes version (use get_kubernetes_versions for available options) node_pools: List of node pool configurations, each containing: - node_quantity: Number of nodes (minimum 1, recommended 3+) - plan: Plan ID (e.g., 'vc2-2c-4gb') - label: Node pool label - tag: Optional tag - auto_scaler: Optional auto-scaling configuration - min_nodes: Minimum nodes for auto-scaling - max_nodes: Maximum nodes for auto-scaling ctx: FastMCP context for resource change notifications enable_firewall: Enable firewall for cluster ha_controlplanes: Enable high availability control planes Returns: Created cluster information |
| k8s_update_kubernetes_clusterB | Update a Kubernetes cluster configuration. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID ctx: FastMCP context for resource change notifications label: New label for the cluster Returns: Update status message |
| k8s_delete_kubernetes_clusterB | Delete a Kubernetes cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID to delete ctx: FastMCP context for resource change notifications Returns: Deletion status message |
| k8s_delete_kubernetes_cluster_with_resourcesA | Delete a Kubernetes cluster and all related resources. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID to delete ctx: FastMCP context for resource change notifications Returns: Deletion status message |
| k8s_get_kubernetes_cluster_configA | Get the kubeconfig for a Kubernetes cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID Returns: Kubeconfig content for cluster access |
| k8s_get_kubernetes_cluster_resourcesA | Get resource usage information for a Kubernetes cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID Returns: Cluster resource usage including CPU, memory, and storage |
| k8s_get_kubernetes_available_upgradesB | Get available Kubernetes version upgrades for a cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID Returns: List of available Kubernetes versions for upgrade |
| k8s_upgrade_kubernetes_clusterA | Start a Kubernetes cluster upgrade. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID upgrade_version: Target Kubernetes version (use get_kubernetes_available_upgrades) Returns: Upgrade initiation status |
| k8s_list_kubernetes_node_poolsA | List all node pools for a Kubernetes cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID Returns: List of node pools with configuration and status |
| k8s_get_kubernetes_node_poolC | Get detailed information about a specific node pool. Smart identifier resolution: use cluster/node pool labels or UUIDs. Args: cluster_identifier: The cluster label or ID nodepool_identifier: The node pool label or ID Returns: Detailed node pool information |
| k8s_create_kubernetes_node_poolA | Create a new node pool in a Kubernetes cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID node_quantity: Number of nodes (minimum 1, recommended 3+) plan: Plan ID (e.g., 'vc2-2c-4gb') label: Node pool label (must be unique within cluster) ctx: FastMCP context for resource change notifications tag: Optional tag for the node pool auto_scaler: Enable auto-scaling for this node pool min_nodes: Minimum nodes for auto-scaling max_nodes: Maximum nodes for auto-scaling labels: Map of key/value pairs to apply to all nodes Returns: Created node pool information |
| k8s_update_kubernetes_node_poolC | Update a node pool configuration. Smart identifier resolution: use cluster/node pool labels or UUIDs. Args: cluster_identifier: The cluster label or ID nodepool_identifier: The node pool label or ID ctx: FastMCP context for resource change notifications node_quantity: New number of nodes tag: New tag for the node pool auto_scaler: Enable/disable auto-scaling min_nodes: Minimum nodes for auto-scaling max_nodes: Maximum nodes for auto-scaling labels: New map of key/value pairs for nodes Returns: Update status message |
| k8s_delete_kubernetes_node_poolA | Delete a node pool from a Kubernetes cluster. Smart identifier resolution: use cluster/node pool labels or UUIDs. Args: cluster_identifier: The cluster label or ID nodepool_identifier: The node pool label or ID to delete ctx: FastMCP context for resource change notifications Returns: Deletion status message |
| k8s_list_kubernetes_nodesA | List all nodes in a specific node pool. Smart identifier resolution: use cluster/node pool labels or UUIDs. Args: cluster_identifier: The cluster label or ID nodepool_identifier: The node pool label or ID Returns: List of nodes with status and configuration |
| k8s_get_kubernetes_nodeB | Get detailed information about a specific node. Smart identifier resolution: use cluster/node pool/node labels or UUIDs. Args: cluster_identifier: The cluster label or ID nodepool_identifier: The node pool label or ID node_identifier: The node label or ID Returns: Detailed node information |
| k8s_delete_kubernetes_nodeA | Delete a specific node from a node pool. Smart identifier resolution: use cluster/node pool/node labels or UUIDs. Args: cluster_identifier: The cluster label or ID nodepool_identifier: The node pool label or ID node_identifier: The node label or ID to delete ctx: FastMCP context for resource change notifications Returns: Deletion status message |
| k8s_recycle_kubernetes_nodeC | Recycle (restart) a specific node. Smart identifier resolution: use cluster/node pool/node labels or UUIDs. Args: cluster_identifier: The cluster label or ID nodepool_identifier: The node pool label or ID node_identifier: The node label or ID to recycle Returns: Recycle operation status |
| k8s_get_kubernetes_versionsA | Get list of available Kubernetes versions. Returns: List of available Kubernetes versions for new clusters |
| k8s_get_kubernetes_cluster_statusB | Get comprehensive status information for a Kubernetes cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID Returns: Comprehensive cluster status including health, resources, and node status |
| k8s_scale_kubernetes_node_poolA | Scale a node pool to the target number of nodes. Smart identifier resolution: use cluster/node pool labels or UUIDs. Args: cluster_identifier: The cluster label or ID nodepool_identifier: The node pool label or ID target_node_count: Target number of nodes (minimum 1) Returns: Scaling operation details and status |
| k8s_analyze_kubernetes_cluster_costsB | Analyze the estimated costs of a Kubernetes cluster. Smart identifier resolution: use cluster label or UUID. Args: cluster_identifier: The cluster label or ID Returns: Cost analysis including per-node costs and total estimated monthly cost |
| k8s_setup_kubernetes_cluster_for_workloadC | Set up a Kubernetes cluster optimized for specific workload types. Args: label: Label for the new cluster region: Region code (e.g., 'ewr', 'lax') ctx: FastMCP context for resource change notifications workload_type: Type of workload ('web', 'api', 'data', 'development') environment: Environment type ('production', 'staging', 'development') auto_scaling: Enable auto-scaling for node pools Returns: Created cluster information with setup recommendations |
| lb_getB | Get detailed information about a specific load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) Returns: Detailed load balancer information |
| lb_createA | Create a new load balancer. Args: region: Region code (e.g., 'ewr', 'lax') ctx: FastMCP context for resource change notifications balancing_algorithm: Algorithm to use ('roundrobin' or 'leastconn') ssl_redirect: Redirect HTTP traffic to HTTPS http2: Enable HTTP/2 support http3: Enable HTTP/3 support proxy_protocol: Enable proxy protocol timeout: Connection timeout in seconds label: Label for the load balancer nodes: Number of backend nodes health_check: Health check configuration dict with keys: - protocol: 'http', 'https', 'tcp' - port: Port number - path: Path for HTTP checks - check_interval: Check interval in seconds - response_timeout: Response timeout in seconds - unhealthy_threshold: Failures before marking unhealthy - healthy_threshold: Successes before marking healthy forwarding_rules: List of forwarding rule dicts with keys: - frontend_protocol: 'http', 'https', 'tcp' - frontend_port: Frontend port number - backend_protocol: 'http', 'https', 'tcp' - backend_port: Backend port number ssl: SSL configuration dict with keys: - private_key: Private key content - certificate: Certificate content - chain: Certificate chain content firewall_rules: List of firewall rule dicts with keys: - port: Port number - source: Source IP or CIDR - ip_type: 'v4' or 'v6' auto_ssl: Auto SSL configuration dict with keys: - domain_zone: Domain zone - domain_sub: Subdomain global_regions: List of global region codes vpc: VPC ID to attach to private_network: Private network ID (legacy) sticky_session: Sticky session configuration with cookie_name Returns: Created load balancer information |
| lb_updateC | Update an existing load balancer. Args: load_balancer_id: The load balancer ID or label ctx: FastMCP context for resource change notifications ssl: SSL configuration dict sticky_session: Sticky session configuration forwarding_rules: Updated forwarding rules health_check: Updated health check configuration proxy_protocol: Enable/disable proxy protocol timeout: Connection timeout in seconds ssl_redirect: Enable/disable SSL redirect http2: Enable/disable HTTP/2 http3: Enable/disable HTTP/3 nodes: Number of backend nodes balancing_algorithm: Balancing algorithm instances: List of instance IDs to attach Returns: Updated load balancer information |
| lb_deleteB | Delete a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| lb_delete_sslB | Delete SSL certificate from a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) ctx: FastMCP context for resource change notifications Returns: Status message confirming SSL deletion |
| lb_disable_auto_sslA | Disable Auto SSL for a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) Returns: Status message confirming Auto SSL disabled |
| lb_list_forwarding_rulesB | List forwarding rules for a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) Returns: List of forwarding rules |
| lb_create_forwarding_ruleB | Create a forwarding rule for a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) frontend_protocol: Frontend protocol ('http', 'https', 'tcp') frontend_port: Frontend port number backend_protocol: Backend protocol ('http', 'https', 'tcp') backend_port: Backend port number ctx: FastMCP context for resource change notifications Returns: Created forwarding rule information |
| lb_get_forwarding_ruleA | Get details of a specific forwarding rule. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) forwarding_rule_id: The forwarding rule ID Returns: Forwarding rule details |
| lb_delete_forwarding_ruleB | Delete a forwarding rule from a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) forwarding_rule_id: The forwarding rule ID ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| lb_list_firewall_rulesB | List firewall rules for a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) Returns: List of firewall rules |
| lb_get_firewall_ruleB | Get details of a specific firewall rule. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) firewall_rule_id: The firewall rule ID Returns: Firewall rule details |
| lb_configure_basic_web_lbA | Configure a basic web load balancer with standard HTTP/HTTPS rules. Args: region: Region code (e.g., 'ewr', 'lax') label: Label for the load balancer backend_instances: List of instance IDs to attach enable_ssl: Enable SSL/Auto SSL ssl_redirect: Redirect HTTP to HTTPS domain_zone: Domain zone for Auto SSL domain_sub: Subdomain for Auto SSL Returns: Created and configured load balancer information |
| lb_get_health_statusB | Get health status and monitoring information for a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) Returns: Health status and configuration information |
| lb_get_configuration_summaryB | Get a comprehensive configuration summary for a load balancer. Args: load_balancer_id: The load balancer ID or label (e.g., "web-lb", "api-load-balancer", or UUID) Returns: Detailed configuration summary |
| db_createA | Create a new managed database. Args: database_engine: Database engine (mysql, pg, valkey, kafka) database_engine_version: Engine version (MySQL: 8, PostgreSQL: 13-17, Valkey: 7, Kafka: 3.8) region: Region code (e.g., 'ewr', 'lax') plan: Plan ID (e.g., 'vultr-dbaas-hobbyist-cc-1-25-1') label: User-supplied label for the database tag: Optional tag for the database vpc_id: VPC ID to deploy in (or 'new' for new VPC) trusted_ips: List of IP addresses allowed to access (CIDR notation) mysql_sql_modes: MySQL SQL modes to enable (MySQL only) mysql_require_primary_key: Require primary key for tables (MySQL only) mysql_slow_query_log: Enable slow query logging (MySQL only) valkey_eviction_policy: Data eviction policy (Valkey only) kafka_rest_enabled: Enable Kafka REST support (Kafka only, business+ plans) kafka_schema_registry_enabled: Enable Schema Registry (Kafka only, business+ plans) kafka_connect_enabled: Enable Kafka Connect (Kafka only, business+ plans) Returns: Created database information |
| db_updateA | Update a managed database configuration. Args: database_id: The database ID or label to update region: New region (requires migration) plan: New plan ID (for scaling) label: New label for the database tag: New tag for the database vpc_id: New VPC ID timezone: Database timezone (TZ format, e.g., 'UTC', 'America/New_York') trusted_ips: New list of trusted IP addresses (CIDR notation) mysql_sql_modes: MySQL SQL modes (MySQL only) mysql_require_primary_key: Require primary key setting (MySQL only) mysql_slow_query_log: Slow query log setting (MySQL only) valkey_eviction_policy: Eviction policy (Valkey only) kafka_rest_enabled: Kafka REST setting (Kafka only) kafka_schema_registry_enabled: Schema Registry setting (Kafka only) kafka_connect_enabled: Kafka Connect setting (Kafka only) Returns: Updated database information |
| db_deleteA | Delete a managed database. Args: database_id: The database ID or label (e.g., "my-mysql-db" or UUID) Returns: Status message confirming deletion |
| db_get_usageB | Get database usage statistics (CPU, memory, disk). Args: database_id: The database ID or label (e.g., "my-mysql-db" or UUID) Returns: Usage information including CPU, memory, and disk statistics |
| db_analyze_database_performanceA | Analyze database performance and provide optimization recommendations. Args: database_id: The database ID or label (e.g., "my-mysql-db" or UUID) Returns: Performance analysis with health score and optimization recommendations |
| db_list_usersA | List all users in a managed database. Args: database_id: The database ID or label (e.g., "my-mysql-db" or UUID) Returns: List of database users with their permissions |
| db_create_userA | Create a new database user. Args: database_id: The database ID or label username: Username for the new user password: Password (auto-generated if not provided) encryption: Password encryption type (MySQL: caching_sha2_password, mysql_native_password) access_level: Permission level (Kafka: admin, read, write, readwrite) Returns: Created user information |
| db_get_userA | Get information about a specific database user. Args: database_id: The database ID or label username: The username to get information for Returns: User information including permissions |
| db_update_userB | Update a database user's password or permissions. Args: database_id: The database ID or label username: The username to update password: New password access_level: New permission level (Kafka only) Returns: Updated user information |
| db_delete_userA | Delete a database user. Args: database_id: The database ID or label username: The username to delete Returns: Status message confirming deletion |
| db_update_user_access_controlB | Update access control for a database user (Valkey/Redis only). Args: database_id: The database ID or label username: The username to update acl_categories: ACL categories (e.g., ["+@all"]) acl_channels: ACL channels (e.g., [""]) acl_commands: ACL commands acl_keys: ACL keys (e.g., [""]) Returns: Status message confirming update |
| db_list_databasesA | List logical databases within a managed database instance. Args: database_id: The database ID or label Returns: List of logical databases |
| db_create_logical_databaseB | Create a new logical database within a managed database instance. Args: database_id: The database ID or label name: Name for the new logical database Returns: Created logical database information |
| db_get_logical_databaseB | Get information about a logical database. Args: database_id: The database ID or label db_name: The logical database name Returns: Logical database information |
| db_delete_logical_databaseB | Delete a logical database. Args: database_id: The database ID or label db_name: The logical database name to delete Returns: Status message confirming deletion |
| db_list_connection_poolsA | List connection pools for a managed database. Args: database_id: The database ID or label Returns: List of connection pools |
| db_create_connection_poolA | Create a new connection pool. Args: database_id: The database ID or label name: Connection pool name database: Target logical database name username: Database username for the pool mode: Pool mode (session, transaction, statement) size: Pool size (number of connections) Returns: Created connection pool information |
| db_get_connection_poolB | Get information about a connection pool. Args: database_id: The database ID or label pool_name: The connection pool name Returns: Connection pool information |
| db_update_connection_poolA | Update a connection pool configuration. Args: database_id: The database ID or label pool_name: The connection pool name to update database: New target logical database name username: New database username mode: New pool mode (session, transaction, statement) size: New pool size Returns: Updated connection pool information |
| db_delete_connection_poolB | Delete a connection pool. Args: database_id: The database ID or label pool_name: The connection pool name to delete Returns: Status message confirming deletion |
| db_list_backupsA | List available backups for a managed database. Args: database_id: The database ID or label Returns: List of available backups with timestamps and sizes |
| db_restore_from_backupA | Restore a database from a backup to a new instance. Args: database_id: The source database ID or label backup_label: The backup label/timestamp to restore from database_label: Label for the new restored database plan: Plan ID for the new database region: Region for the new database vpc_id: VPC ID for the new database Returns: Information about the restoration process |
| db_fork_databaseB | Fork a database to create a copy. Args: database_id: The source database ID or label label: Label for the forked database region: Region for the new database plan: Plan ID for the new database vpc_id: VPC ID for the new database Returns: Information about the forked database |
| db_create_read_replicaC | Create a read replica of a database. Args: database_id: The source database ID or label label: Label for the read replica region: Region for the read replica plan: Plan ID for the read replica Returns: Information about the created read replica |
| db_promote_read_replicaB | Promote a read replica to a standalone database. Args: database_id: The read replica database ID or label Returns: Status message confirming promotion |
| db_list_available_versionsB | List available versions for database engine upgrades. Args: database_id: The database ID or label Returns: List of available versions for upgrade |
| db_start_version_upgradeC | Start a database engine version upgrade. Args: database_id: The database ID or label version: Target version to upgrade to Returns: Status message confirming upgrade start |
| db_get_maintenance_updatesC | Get available maintenance updates for a database. Args: database_id: The database ID or label Returns: List of available maintenance updates |
| db_start_maintenanceB | Start maintenance on a database. Args: database_id: The database ID or label Returns: Status message confirming maintenance start |
| db_get_migration_statusB | Get the status of an ongoing database migration. Args: database_id: The database ID or label Returns: Migration status information |
| db_analyze_database_migration_statusC | Get enhanced migration status analysis with recommendations. Args: database_id: The database ID or label Returns: Detailed migration analysis with troubleshooting recommendations |
| db_start_migrationA | Start migrating data from an external database. Args: database_id: The destination database ID or label host: Source database hostname port: Source database port username: Source database username password: Source database password database: Source database name ssl: Use SSL connection to source Returns: Status message confirming migration start |
| db_stop_migrationA | Stop an ongoing database migration. Args: database_id: The database ID or label Returns: Status message confirming migration stop |
| db_list_kafka_topicsA | List Kafka topics (Kafka databases only). Args: database_id: The Kafka database ID or label Returns: List of Kafka topics |
| db_create_kafka_topicA | Create a Kafka topic (Kafka databases only). Args: database_id: The Kafka database ID or label name: Topic name partitions: Number of partitions replication: Replication factor retention_hours: Retention time in hours retention_bytes: Retention size in bytes Returns: Created topic information |
| db_get_kafka_topicB | Get information about a Kafka topic. Args: database_id: The Kafka database ID or label topic_name: The topic name Returns: Kafka topic information |
| db_update_kafka_topicB | Update a Kafka topic configuration. Args: database_id: The Kafka database ID or label topic_name: The topic name to update partitions: New number of partitions replication: New replication factor retention_hours: New retention time in hours retention_bytes: New retention size in bytes Returns: Updated topic information |
| db_delete_kafka_topicB | Delete a Kafka topic. Args: database_id: The Kafka database ID or label topic_name: The topic name to delete Returns: Status message confirming deletion |
| db_list_plansA | List all available managed database plans. Returns: List of database plans with pricing and specifications |
| db_setup_mysql_databaseA | Quick setup for a MySQL database with application user and database. Args: region: Region code (e.g., 'ewr', 'lax') plan: Plan ID (e.g., 'vultr-dbaas-hobbyist-cc-1-25-1') label: Label for the database root_password: Root password (auto-generated if not provided) app_user: Application username to create app_password: Application user password (auto-generated if not provided) app_database: Application database name to create Returns: Complete setup information including connection details |
| db_setup_postgresql_databaseA | Quick setup for a PostgreSQL database with application user and database. Args: region: Region code (e.g., 'ewr', 'lax') plan: Plan ID (e.g., 'vultr-dbaas-hobbyist-cc-1-25-1') label: Label for the database version: PostgreSQL version (13-17) app_user: Application username to create app_password: Application user password (auto-generated if not provided) app_database: Application database name to create Returns: Complete setup information including connection details |
| marketplace_get_applicationA | Get detailed information about a specific application. Args: app_id: The application ID, name, short_name, or image_id (e.g., "wordpress", "openlitespeed-wordpress") Returns: Detailed application information |
| marketplace_search_applicationsC | Search applications by name, description, or other criteria. Args: search_term: Search term to match against application names and descriptions app_type: Optional filter by type ('marketplace', 'one-click') vendor: Optional filter by vendor name Returns: List of matching applications |
| marketplace_get_applications_by_vendorA | Get all applications from a specific vendor. Args: vendor: Vendor name (e.g., "vultr", "LiteSpeed_Technologies") Returns: List of applications from the specified vendor |
| marketplace_get_popular_marketplace_appsB | Get popular marketplace applications. Args: limit: Maximum number of applications to return (default: 10) Returns: List of popular marketplace applications |
| marketplace_get_marketplace_app_variablesA | Get configuration variables for a marketplace application. Args: app_id: The marketplace application name, short_name, or image_id (e.g., "openlitespeed-wordpress") Returns: Application variables information including: - variables: List of configuration variables - Each variable contains: name, description, required (boolean) |
| marketplace_get_application_deployment_guideA | Get deployment guidance for an application. Args: app_id: The application ID, name, short_name, or image_id Returns: Deployment guidance including application details and requirements |
| marketplace_list_application_categoriesA | List applications grouped by categories/vendors. Returns: Dictionary with vendors as keys and their applications as values |
| marketplace_get_deployment_examplesB | Get examples of how to deploy popular marketplace applications. Returns: Dictionary with deployment examples and common use cases |
| object_storage_getB | Get detailed information about a specific Object Storage instance. Args: object_storage_id: The Object Storage ID or label (e.g., "my-storage", "backup-bucket", or UUID) Returns: Detailed Object Storage information including access credentials |
| object_storage_createB | Create a new Object Storage instance. Args: cluster_id: The cluster ID where the Object Storage will be created (use list_clusters to see options) label: A descriptive label for the Object Storage instance Returns: Created Object Storage information including access credentials |
| object_storage_updateA | Update an Object Storage instance's label. Args: object_storage_id: The Object Storage ID or label (e.g., "my-storage", "backup-bucket", or UUID) label: New label for the Object Storage instance Returns: Status message confirming update |
| object_storage_deleteA | Delete an Object Storage instance. Args: object_storage_id: The Object Storage ID or label (e.g., "my-storage", "backup-bucket", or UUID) Returns: Status message confirming deletion |
| object_storage_regenerate_keysA | Regenerate the S3 access keys for an Object Storage instance. Args: object_storage_id: The Object Storage ID or label (e.g., "my-storage", "backup-bucket", or UUID) Returns: Object Storage information with new access keys |
| object_storage_list_clustersA | List all available Object Storage clusters. Returns: List of Object Storage clusters with details including: - id: Cluster ID - region: Region code - hostname: S3-compatible hostname for the cluster - deploy: Deployment status |
| object_storage_list_cluster_tiersA | List all available tiers for a specific Object Storage cluster. Args: cluster_id: The cluster ID (use list_clusters to see available clusters) Returns: List of available tiers for the cluster with pricing and limits |
| object_storage_get_s3_configA | Get S3-compatible configuration details for an Object Storage instance. Args: object_storage_id: The Object Storage ID or label (e.g., "my-storage", "backup-bucket", or UUID) Returns: S3 configuration details including: - endpoint: S3-compatible endpoint URL - access_key: S3 access key - secret_key: S3 secret key - region: Storage region - bucket_examples: Example bucket operations |
| object_storage_find_by_regionA | Find all Object Storage instances in a specific region. Args: region: Region code (e.g., "ewr", "lax", "fra") Returns: List of Object Storage instances in the specified region |
| object_storage_get_storage_summaryA | Get a summary of all Object Storage instances. Returns: Summary information including: - total_instances: Total number of Object Storage instances - regions: List of regions with storage counts - status_breakdown: Count by status - cluster_usage: Count by cluster |
| object_storage_validate_s3_accessA | Validate that an Object Storage instance has valid S3 credentials. Args: object_storage_id: The Object Storage ID or label (e.g., "my-storage", "backup-bucket", or UUID) Returns: Validation results including: - valid: Whether the configuration appears valid - endpoint: S3 endpoint URL - has_credentials: Whether access keys are present - suggestions: Any configuration suggestions |
| inference_list_serverless_inferenceA | List all serverless inference subscriptions in your Vultr account. Returns: List of inference subscription objects with details including: - id: Subscription ID (UUID) - label: User-defined label for the subscription - api_key: API key for accessing the inference service - date_created: When the subscription was created |
| inference_get_serverless_inferenceB | Get detailed information about a specific inference subscription. Args: subscription_id: The inference subscription ID or label (e.g., "my-ai-model", or UUID) Returns: Detailed inference subscription information including API key and metadata |
| inference_create_serverless_inferenceB | Create a new serverless inference subscription. Args: label: A descriptive label for the inference subscription (e.g., "production-chatbot", "dev-testing") Returns: Created inference subscription with ID, API key, and configuration details |
| inference_update_serverless_inferenceA | Update an existing serverless inference subscription. Args: subscription_id: The inference subscription ID or current label label: New label for the subscription Returns: Updated inference subscription information |
| inference_delete_serverless_inferenceA | Delete a serverless inference subscription. Warning: This action is irreversible and will immediately terminate the subscription. Args: subscription_id: The inference subscription ID or label to delete Returns: Confirmation of deletion |
| inference_get_inference_usageA | Get usage statistics for a serverless inference subscription. Args: subscription_id: The inference subscription ID or label Returns: Detailed usage information including: - chat: Token usage for chat/completion models - audio: Character usage for text-to-speech models - monthly_allotment: Total tokens/characters allocated - overage: Usage exceeding the monthly limit |
| inference_analyze_inference_usageB | Analyze usage patterns and provide optimization recommendations. Args: subscription_id: The inference subscription ID or label Returns: Comprehensive analysis including: - efficiency_score: Overall utilization efficiency (0-1) - recommendations: List of optimization suggestions - cost_optimization: Potential cost savings opportunities - usage_patterns: Detailed usage breakdown |
| inference_get_inference_deployment_guideB | Get deployment guidance and best practices for an inference subscription. Args: subscription_id: The inference subscription ID or label Returns: Deployment guide with: - api_endpoints: Available API endpoints and documentation - authentication: How to use the API key - best_practices: Optimization and usage recommendations - examples: Sample code and integration patterns |
| inference_monitor_inference_performanceA | Monitor performance metrics and usage trends for an inference subscription. Args: subscription_id: The inference subscription ID or label Returns: Performance monitoring data including: - current_usage: Real-time usage statistics - trends: Usage patterns and projections - alerts: Any usage or performance warnings - health_score: Overall subscription health (0-100) |
| inference_optimize_inference_costsA | Analyze costs and provide optimization recommendations for an inference subscription. Args: subscription_id: The inference subscription ID or label Returns: Cost optimization analysis including: - current_costs: Current usage-based costs - optimization_opportunities: Ways to reduce costs - plan_recommendations: Suggested plan changes - savings_potential: Estimated cost savings |
| storage_gateway_createB | Create a new storage gateway. Args: label: Label for the storage gateway (for easy identification) gateway_type: Type of storage gateway (e.g., "nfs4") region: Region code where the gateway will be created (e.g., "ewr", "lax") export_config: Export configuration with keys: - label: Export label - vfs_uuid: VFS UUID to export - pseudo_root_path: Pseudo root path (e.g., "/") - allowed_ips: List of allowed IP addresses network_config: Network configuration with keys: - primary: Dict with ipv4_public_enabled, ipv6_public_enabled, vpc (optional) tags: Optional list of tags to apply Returns: Created storage gateway information |
| storage_gateway_updateA | Update storage gateway configuration. Smart identifier resolution: Use gateway label or ID. Args: gateway_identifier: Gateway label or ID to update label: New label for the gateway tags: New tags for the gateway Returns: Success confirmation |
| storage_gateway_deleteB | Delete a storage gateway. Smart identifier resolution: Use gateway label or ID. Args: gateway_identifier: Gateway label or ID to delete Returns: Success confirmation |
| storage_gateway_add_exportA | Add a new export to a storage gateway. Smart identifier resolution: Use gateway label or ID. Args: gateway_identifier: Gateway label or ID export_config: Export configuration with keys: - label: Export label - vfs_uuid: VFS UUID to export - pseudo_root_path: Pseudo root path (e.g., "/") - allowed_ips: List of allowed IP addresses Returns: Created export information |
| storage_gateway_delete_exportB | Delete an export from a storage gateway. Smart identifier resolution: Use gateway label or ID. Args: gateway_identifier: Gateway label or ID export_id: Export ID to delete Returns: Success confirmation |
| storage_gateway_list_by_regionB | List storage gateways in a specific region. Args: region: Region code to filter by (e.g., "ewr", "lax", "fra") Returns: List of gateways in the specified region |
| storage_gateway_list_by_typeB | List storage gateways by type. Args: gateway_type: Gateway type to filter by (e.g., "nfs4") Returns: List of gateways of the specified type |
| storage_gateway_list_by_statusC | List storage gateways by status. Args: status: Status to filter by (e.g., "active", "pending") Returns: List of gateways with the specified status |
| storage_gateway_get_gateway_statusA | Get comprehensive status information for a storage gateway. Smart identifier resolution: Use gateway label or ID. Args: gateway_identifier: Gateway label or ID Returns: Detailed status including health, exports, and network configuration |
| storage_gateway_get_mount_instructionsA | Get NFS mount instructions for a storage gateway. Smart identifier resolution: Use gateway label or ID. Args: gateway_identifier: Gateway label or ID Returns: NFS mounting instructions and configuration examples |
| storage_gateway_optimize_gateway_configurationB | Analyze and provide optimization recommendations for a storage gateway. Smart identifier resolution: Use gateway label or ID. Args: gateway_identifier: Gateway label or ID Returns: Configuration analysis and optimization recommendations |
| storage_gateway_get_cost_analysisB | Get cost analysis and projections for a storage gateway. Smart identifier resolution: Use gateway label or ID. Args: gateway_identifier: Gateway label or ID Returns: Detailed cost analysis and projections |
| subaccount_createA | Create a new subaccount. Args: email: Email address for the subaccount (required) subaccount_name: Display name for the subaccount (optional) subaccount_id: Custom identifier for the subaccount (optional) Returns: Created subaccount information |
| subaccount_find_by_emailA | Find subaccounts by email address. Args: email: Email address to search for Returns: List of matching subaccounts |
| subaccount_find_by_nameA | Find subaccounts by name (partial match). Args: name: Name to search for (case-insensitive partial match) Returns: List of matching subaccounts |
| subaccount_get_balance_summaryA | Get a summary of all subaccount balances and charges. Returns: Summary of subaccount financial status |
| subaccount_analyze_costsA | Analyze costs and usage patterns for a subaccount. Args: subaccount_id: The subaccount ID, name, email, or UUID analysis_days: Number of days to analyze (default: 30) Returns: Detailed cost analysis including projections and recommendations |
| subaccount_setup_permissionsB | Configure permissions for a subaccount. Args: subaccount_id: The subaccount ID, name, email, or UUID permissions: List of permissions to grant (e.g., ["instances", "dns", "billing"]) Returns: Permission configuration status |
| subaccount_get_status_overviewB | Get an overview of all subaccount statuses and key metrics. Returns: Comprehensive overview of subaccount health and status |
| subaccount_monitor_usageB | Monitor usage across all subaccounts and identify potential issues. Returns: List of subaccounts with usage monitoring data and alerts |
| user_getA | Get detailed information about a specific user. Args: user_id: The user ID (UUID) or email address (e.g., "user@example.com" or UUID) Returns: Detailed user information including permissions and settings |
| user_createB | Create a new user. Args: email: User's email address first_name: User's first name last_name: User's last name password: User's password ctx: FastMCP context for resource change notifications ctx: FastMCP context for resource change notifications api_enabled: Enable API access for this user service_user: Create as service user (API-only, no portal login) acls: List of permissions to grant. Available permissions: - manage_users: Manage other users - subscriptions_view: View subscriptions - subscriptions: Manage subscriptions - provisioning: Provision resources - billing: Access billing information - support: Access support tickets - abuse: Handle abuse reports - dns: Manage DNS - upgrade: Upgrade plans - objstore: Manage object storage - loadbalancer: Manage load balancers - firewall: Manage firewalls - alerts: Manage alerts Returns: Created user information, including API key if service_user is True |
| user_updateB | Update an existing user's settings. Args: user_id: The user ID (UUID) or email address to update ctx: FastMCP context for resource change notifications api_enabled: Enable/disable API access acls: List of permissions to grant. Available permissions: - manage_users: Manage other users - subscriptions_view: View subscriptions - subscriptions: Manage subscriptions - provisioning: Provision resources - billing: Access billing information - support: Access support tickets - abuse: Handle abuse reports - dns: Manage DNS - upgrade: Upgrade plans - objstore: Manage object storage - loadbalancer: Manage load balancers - firewall: Manage firewalls - alerts: Manage alerts Returns: Updated user information |
| user_deleteB | Delete a user. Args: user_id: The user ID (UUID) or email address to delete ctx: FastMCP context for resource change notifications Returns: Status message confirming deletion |
| user_get_ip_whitelistA | Get the IP whitelist for a user. Args: user_id: The user ID (UUID) or email address Returns: List of IP whitelist entries with subnet, subnet_size, date_added, and ip_type |
| user_get_ip_whitelist_entryA | Get a specific IP whitelist entry for a user. Args: user_id: The user ID (UUID) or email address subnet: The IP address or subnet (e.g., "8.8.8.0") subnet_size: The subnet size (e.g., 24 for /24) Returns: IP whitelist entry details |
| user_add_ip_whitelist_entryA | Add an IP address or subnet to a user's whitelist. Args: user_id: The user ID (UUID) or email address subnet: The IP address or subnet to add (e.g., "8.8.8.0", "192.168.1.100") subnet_size: The subnet size (e.g., 24 for /24, 32 for single IP) ctx: FastMCP context for resource change notifications Returns: Status message confirming addition |
| user_remove_ip_whitelist_entryA | Remove an IP address or subnet from a user's whitelist. Args: user_id: The user ID (UUID) or email address subnet: The IP address or subnet to remove (e.g., "8.8.8.0", "192.168.1.100") subnet_size: The subnet size (e.g., 24 for /24, 32 for single IP) ctx: FastMCP context for resource change notifications Returns: Status message confirming removal |
| user_setup_standard_userB | Set up a new user with standard permission sets. Args: email: User's email address first_name: User's first name last_name: User's last name password: User's password ctx: FastMCP context for resource change notifications permissions_level: Permission level - "basic", "developer", "admin", or "readonly" - basic: subscriptions_view, dns, support - readonly: subscriptions_view, support - developer: subscriptions_view, subscriptions, provisioning, dns, support, objstore, loadbalancer, firewall - admin: all permissions except manage_users - superadmin: all permissions including manage_users Returns: Created user information with applied permissions |
| user_setup_service_userB | Set up a new service user (API-only access) with specified permissions. Args: email: Service user's email address first_name: Service user's first name last_name: Service user's last name ctx: FastMCP context for resource change notifications permissions: List of permissions to grant. If None, grants basic API access. Returns: Created service user information including API key |
| user_analyze_user_permissionsB | Analyze a user's current permissions and provide recommendations. Args: user_id: The user ID (UUID) or email address to analyze Returns: Analysis of user permissions including: - current_permissions: List of current permissions - permission_analysis: Analysis of each permission - security_recommendations: Security recommendations - suggested_changes: Suggested permission changes |
| user_list_available_permissionsA | List all available permissions that can be granted to users. Returns: Dictionary of available permissions with descriptions and risk levels |
| collection_create_collectionA | Create a new service collection. Args: name: Name for the service collection project: Project name to group collections environment: Environment (development, testing, staging, production, or custom) ctx: FastMCP context for resource change notifications description: Optional description region: Vultr region for resources tags: Optional tags for organization created_by: User who created the collection Returns: Created service collection details |
| collection_add_resource_to_collectionB | Add a Vultr resource to a service collection. Args: collection_id: ID of the service collection resource_type: Type of resource (instance, domain, etc.) resource_id: Vultr resource ID ctx: FastMCP context for resource change notifications resource_name: Human-readable name for the resource tags: Optional tags for the resource metadata: Additional metadata for the resource Returns: Success confirmation |
| collection_remove_resource_from_collectionA | Remove a resource from a service collection. Args: collection_id: ID of the service collection resource_type: Type of resource to remove resource_id: Vultr resource ID to remove ctx: FastMCP context for resource change notifications Returns: Success confirmation |
| collection_list_collections_by_projectC | List service collections for a specific project. Args: project: Project name to filter by environment: Optional environment filter Returns: List of matching service collections |
| collection_promote_collection_environmentB | Promote a service collection to a different environment. Args: collection_id: ID of the collection to promote target_environment: Target environment (development, testing, staging, production) ctx: FastMCP context for resource change notifications copy_resources: Whether to copy resources to new environment workflow_triggers: Whether to trigger promotion workflows Returns: Details of the promotion operation |
| collection_update_collection_permissionsC | Update permissions for a service collection. Args: collection_id: ID of the service collection user_id: User ID to grant/revoke permissions permission_level: Permission level (owner, editor, viewer) ctx: FastMCP context for resource change notifications action: Action to take (add, remove) Returns: Success confirmation |
| collection_delete_collectionB | Delete a service collection. Args: collection_id: ID of the collection to delete ctx: FastMCP context for resource change notifications force: Force deletion even if collection has resources Returns: Success confirmation |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| dns_list_domains_resource | List all DNS domains in your Vultr account. |
| instance_list_instances_resource | List all instances in your Vultr account. |
| ssh_key_list_ssh_keys_resource | List all SSH keys in your Vultr account. |
| backup_list_backups_resource | List all backups in your Vultr account. |
| firewall_list_groups_resource | List all firewall groups in your Vultr account. |
| snapshot_list_snapshots_resource | List all snapshots in your Vultr account. |
| region_list_regions_resource | List all available Vultr regions. |
| reserved_ip_list_reserved_ips_resource | List all reserved IPs. |
| registry_list_registries_resource | List all container registries. |
| registry_list_plans_resource | List all available container registry plans. |
| block_storage_list_volumes_resource | List all block storage volumes. |
| vpc_list_vpcs_resource | List all VPCs. |
| vpc_list_vpc2s_resource | List all VPC 2.0 networks. |
| k8s_list_clusters_resource | List all Kubernetes clusters in your Vultr account. |
| lb_list_load_balancers_resource | List all load balancers in your Vultr account. |
| db_list_databases_resource | List all managed databases in your Vultr account. |
| db_list_database_plans_resource | List all available managed database plans. |
| marketplace_list_applications_resource | List all marketplace and one-click applications. |
| marketplace_list_marketplace_applications_resource | List only marketplace applications. |
| marketplace_list_oneclick_applications_resource | List only one-click applications. |
| object_storage_list_object_storage_resource | List all Object Storage instances in your Vultr account. |
| object_storage_list_clusters_resource | List all Object Storage clusters. |
| inference_list_inference_subscriptions_resource | List all serverless inference subscriptions in your Vultr account. |
| storage_gateway_list_gateways_resource | List all storage gateways. |
| subaccount_list_subaccounts_resource | List all subaccounts in your Vultr account. |
| user_list_users_resource | List all users in your Vultr account. |
| collection_list_collections_resource | List all service collections. |
| collection_list_projects_resource | List all projects with their environment breakdown. |
TDQS
Scored across 322 tools
The server exposes 322 tools across many Vultr services, with heavy overlap among list/get/search/summary/analyze/setup variants (e.g., OS, plan, and backup tools). Although prefixes and descriptions help, an agent can easily misselect between near-duplicate query and convenience tools.
Names generally follow module_prefix + verb_noun in snake_case (instance_create, dns_list_records, firewall_create_rule), which is predictable. Minor deviations like redundant cdn_get_cdn_zone or plan_list_plans exist but do not break the pattern.
322 tools is extreme for any MCP server; many are convenience wrappers or narrow analytics helpers that could be collapsed into parameters. This far exceeds a well-scoped surface and increases selection cost.
The surface covers a wide range of Vultr services with CRUD, lifecycle, analytics, and setup helpers for instances, DNS, databases, Kubernetes, storage, billing, users, and more. Obvious domain operations are present, so it is effectively complete.