Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SPOTINST_TOKENYesYour Spotinst API token
SPOTINST_ACCOUNT_IDYesYour Spotinst account ID (e.g., act-xxxxxxxx)

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
probe_token_capabilitiesA

Probe which Spot.io API endpoints the current token can access. Call this first to understand what tools will work with your token. Returns a report of accessible vs denied endpoints.

list_accountsA

List all Spotinst accounts accessible with the current token.

list_all_clustersA

List ALL Ocean clusters across ALL accounts and cloud providers (AWS + Azure). Scans every account in parallel and returns a unified list with account and cloud info. Returns compact summaries by default (id, name, region, account, capacity). Set verbose=true for full cluster configs (networking, instance types, autoscaler).

Args: verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing cluster settings, troubleshooting, or comparing configs.

list_clustersA

List AWS Ocean Kubernetes clusters in a Spotinst account. Returns compact summaries by default (id, name, region, capacity). Set verbose=true for full cluster configs (networking, instance types, autoscaler).

Args: account_id: Optional account ID to query (e.g. act-be5e7ffe). Defaults to SPOTINST_ACCOUNT_ID env var. verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing cluster settings, troubleshooting, or comparing configs.

get_clusterA

Get details of a specific AWS Ocean cluster.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var.

list_clusters_azureA

List Azure Ocean clusters in a Spotinst account. Returns compact summaries by default (id, name, capacity). Set verbose=true for full cluster configs (networking, VM sizes, autoscaler).

Args: account_id: Account ID for an Azure account (e.g. act-9785011e). verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing cluster settings, troubleshooting, or comparing configs.

get_cluster_azureA

Get details of a specific Azure Ocean cluster.

Args: cluster_id: The Ocean cluster ID (e.g. o-390ef886) account_id: Account ID for an Azure account.

list_vngsA

List AWS Ocean Virtual Node Groups (VNGs / launch specs). Returns compact summaries by default (id, name, oceanId). Set verbose=true for full VNG configs (AMI, subnets, resource limits, labels).

Args: ocean_id: Optional Ocean cluster ID to filter by (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing VNG settings, troubleshooting, or comparing configs.

get_vngA

Get details of a specific AWS VNG (launch spec).

Args: vng_id: The VNG/launch spec ID (e.g. ols-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var.

list_vngs_azureA

List Azure Ocean Virtual Node Groups. Returns compact summaries by default (id, name, oceanId). Set verbose=true for full VNG configs (VM sizes, labels, resource limits).

Args: ocean_id: Optional Ocean cluster ID to filter by (e.g. o-390ef886) account_id: Account ID for an Azure account. verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing VNG settings, troubleshooting, or comparing configs.

get_vng_azureA

Get details of a specific Azure VNG.

Args: vng_id: The VNG ID (e.g. vng-14e08b61) account_id: Account ID for an Azure account.

list_elastigroupsA

List all Elastigroups in a Spotinst account. Returns compact summaries by default (id, name, region, capacity). Set verbose=true for full Elastigroup configs (compute, networking, scaling).

Args: account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing Elastigroup settings, troubleshooting, or comparing configs.

get_elastigroupA

Get details of a specific Elastigroup.

Args: group_id: The Elastigroup ID (e.g. sig-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var.

get_cluster_nodesA

List all nodes in an Ocean cluster (AWS or Azure).

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws) limit: Max items to return (default: 50). Set limit=0 for all results.

get_cluster_costsA

Get aggregated cost breakdown for an Ocean cluster (AWS or Azure).

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) start_time: Start time in ISO 8601 format (e.g. 2026-03-01T00:00:00Z) end_time: End time in ISO 8601 format (e.g. 2026-03-20T00:00:00Z) group_by: Group costs by: namespace (default: namespace). Only 'namespace' is currently supported by the API. account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws) limit: Max namespace aggregations to return, sorted by cost descending (default: 50). Set limit=0 for all.

get_right_sizingA

Get right-sizing resource suggestions for workloads in an Ocean cluster (AWS or Azure). Results are sorted by savings potential (biggest CPU delta first) and truncated to limit.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) namespace: Optional namespace to filter suggestions account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws) limit: Max items to return, sorted by savings potential (default: 50). Set limit=0 for all results.

list_rollsA

List all deployment rolls for an Ocean cluster (AWS or Azure).

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

get_rollA

Get details of a specific Ocean cluster roll (AWS or Azure).

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) roll_id: The roll ID (e.g. scr-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

get_cluster_logA

Get scaling and activity log events for an Ocean cluster (AWS or Azure).

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) from_date: Start date in YYYY-MM-DD format (e.g. 2026-03-19) to_date: End date in YYYY-MM-DD format (e.g. 2026-03-20) severity: Filter by severity: ALL, INFO, WARN, ERROR (default: ALL) limit: Max number of log entries (default: 500) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

get_allowed_instance_typesA

Get the list of allowed EC2 instance types for an AWS Ocean cluster.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var.

list_stateful_nodesA

List all Stateful Nodes (Managed Instances) in an AWS account. Returns compact summaries by default (id, name, region, capacity). Set verbose=true for full configs (compute, networking, persistence).

Args: account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing node settings, troubleshooting, or comparing configs.

get_stateful_nodeA

Get details of a specific AWS Stateful Node (Managed Instance).

Args: node_id: The Managed Instance ID (e.g. smi-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var.

list_stateful_nodes_azureA

List all Azure Stateful Nodes in an account. Returns compact summaries by default (id, name, capacity). Set verbose=true for full configs (compute, networking, persistence).

Args: account_id: Account ID for an Azure account. verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing node settings, troubleshooting, or comparing configs.

get_stateful_node_azureB

Get details of a specific Azure Stateful Node.

Args: node_id: The Azure Stateful Node ID account_id: Account ID for an Azure account.

get_cluster_schedulingA

Get scheduling and auto-scaler configuration for an Ocean cluster (AWS or Azure). Shows shutdown hours, scheduled tasks, and auto-scaler settings.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

get_cluster_healthA

Composite health check for an Ocean cluster. Returns node status, recent errors, and active rolls in one call.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

get_cost_trendingA

Get cost trends over multiple time periods for an Ocean cluster.

Shows week-over-week or custom period cost changes.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) periods: Number of time periods to compare (default: 4) period_days: Days per period (default: 7 for weekly) group_by: Group costs by: namespace (default: namespace). Only 'namespace' is currently supported by the API. account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

get_savings_summaryA

Get a 30-day cost/savings summary for an Ocean cluster. Shows total spend, spot savings, and cost breakdown.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

filter_clusters_by_tagA

Filter Ocean clusters by tag key (and optionally tag value). Works for AWS and Azure. Returns compact summaries by default. Set verbose=true for full cluster configs.

Args: tag_key: Tag key to filter by (e.g. environment, team) tag_value: Optional tag value to match (e.g. production). If empty, matches any value for the key. account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws) verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing cluster settings, troubleshooting, or comparing configs.

filter_vngs_by_tagA

Filter VNGs by tag key (and optionally tag value). Works for AWS and Azure. Returns compact summaries by default. Set verbose=true for full VNG configs.

Args: tag_key: Tag key to filter by (e.g. team, workload-type) tag_value: Optional tag value to match. If empty, matches any value for the key. ocean_id: Optional Ocean cluster ID to filter by account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws) verbose: Return full configurations instead of compact summaries (default: false). Use when analyzing VNG settings, troubleshooting, or comparing configs.

export_cluster_yamlA

Export an Ocean cluster configuration as YAML. Useful for GitOps comparison or backup.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

export_vng_yamlA

Export a VNG configuration as YAML. Useful for GitOps comparison or backup.

Args: vng_id: The VNG ID (e.g. ols-abc12345 for AWS, vng-abc12345 for Azure) account_id: Optional account ID to query. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

remove_instancesA

DESTRUCTIVE: Remove instances from an Ocean cluster using a named strategy. This is the RECOMMENDED tool for instance removal — it picks the right API call for you. Requires confirm=true.

Strategies:

  • "drain_and_replace": Gracefully drain pods (respects PDBs), terminate, Ocean replaces. Uses rolling restart. SAFEST option for production. (Default if not specified)

  • "replace": Immediately terminate instances, Ocean auto-scales replacements. Faster but no graceful drain — pods are killed abruptly.

  • "remove_permanently": Terminate instances AND reduce cluster capacity. Instances are gone and NOT replaced. Use for downsizing.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) instance_ids: Comma-separated instance IDs (e.g. i-abc123,i-def456) strategy: One of: drain_and_replace, replace, remove_permanently confirm: Must be true to execute. Safety guard. batch_size_percentage: For drain_and_replace only: % of nodes per batch (default: 20) account_id: Optional account ID. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws). Note: replace and remove_permanently are AWS-only.

initiate_rollA

DESTRUCTIVE: Initiate a rolling restart of nodes in an Ocean cluster. This will drain and replace nodes in batches. Requires confirm=true.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) confirm: Must be true to execute. Safety guard against accidental rolls. batch_size_percentage: Percentage of nodes to roll per batch (default: 20) batch_min_healthy_percentage: Min healthy nodes per batch (default: 50) respect_pdb: Respect PodDisruptionBudgets (default: true) launch_spec_ids: Comma-separated VNG IDs to roll (e.g. ols-abc,ols-def). Empty = all. instance_ids: Comma-separated instance IDs to roll. Empty = all in scope. account_id: Optional account ID. Defaults to SPOTINST_ACCOUNT_ID env var. cloud: Cloud provider: aws or azure (default: aws)

detach_instancesA

DESTRUCTIVE: Detach and optionally terminate instances from an AWS Ocean cluster. Requires confirm=true.

Args: cluster_id: The Ocean cluster ID (e.g. o-abc12345) instance_ids: Comma-separated EC2 instance IDs (e.g. i-abc123,i-def456) confirm: Must be true to execute. Safety guard. should_terminate: Terminate instances after detach (default: true) should_decrement_capacity: Reduce target capacity (default: true) account_id: Optional account ID. Defaults to SPOTINST_ACCOUNT_ID env var.

update_vngA

DESTRUCTIVE: Update an AWS VNG (launch spec) configuration. Requires confirm=true. Pass updates as a JSON string.

Args: vng_id: The VNG/launch spec ID (e.g. ols-abc12345) updates_json: JSON string of fields to update (e.g. '{"resourceLimits": {"maxInstanceCount": 20}}') confirm: Must be true to execute. Safety guard. account_id: Optional account ID. Defaults to SPOTINST_ACCOUNT_ID env var.

update_vng_azureA

DESTRUCTIVE: Update an Azure VNG configuration. Requires confirm=true. Pass updates as a JSON string.

Args: vng_id: The VNG ID (e.g. vng-14e08b61) updates_json: JSON string of fields to update confirm: Must be true to execute. Safety guard. account_id: Account ID for an Azure account.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/arnstarn/mcp-server-spotinst'

If you have feedback or need assistance with the MCP directory API, please join our Discord server