1. Conduid
  2. Cloud
  3. Spotinfo
MCP server · Cloud

Spotinfo

CLI for exploring Spot instance pricing across AWS, GCP and Azure. Inspect Spot instance types, savings, price, and AWS interruption frequency — offline, from embedded data.

82Excellent

Scored 11 hours ago · breakdown

About Spotinfo

Spotinfo is an MCP server published by alexei-led in the Cloud category: cLI for exploring Spot instance pricing across AWS, GCP and Azure. Inspect Spot instance types, savings, price, and AWS interruption frequency — offline, from embedded data.

The repository has 164 stars and 13 forks, with the last commit 5 days ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/alexei-led/spotinfo

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Spotinfo

Powered by Claude · Grounded in docs

I know everything about Spotinfo. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 11 hours ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • ✓Tests presentA test suite exists in the repository.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

v3.0.0v3.0.0 · 12 Aug 2026spotinfo now answers the same question the same way on AWS, GCP and Azure. Before this release, the same question gave two different documents. The CLI and the MCP server used different defaults, different schemas and different flag names.…
v2.5.0v2.5.0 · 7 Aug 2026New command `spotinfo recommend` finds Spot instance candidates. The command needs a CPU architecture, a minimum CPU count, and a minimum memory size. Use `--instance` to limit the instance types. Use `--workload` to set the accepted…
v2.4.0v2.4.0 · 6 Aug 2026Prices are correct again The AWS price feed that `spotinfo` used stopped on 2024-05-13. Every instance family after that date showed a price of `$0.0000`. This release uses the price feed behind the AWS spot pricing page. This feed updates…
v2.3.0v2.3.0 · 27 Feb 2026Full Changelog: https://github.com/alexei-led/spotinfo/compare/v2.2.1...v2.3.0
v2.2.1v2.2.1 · 13 Feb 2026What's Changed fix: resolve zero prices for newer instance types by @alexei-led in https://github.com/alexei-led/spotinfo/pull/7 Full Changelog: https://github.com/alexei-led/spotinfo/compare/2.2.0...v2.2.1

README

CI Docker Go Report Card MCP Compatible

spotinfo

Pick a Spot machine on AWS, GCP or Azure from one command line. No credentials. Every price ships inside the binary, so --offline answers in about a tenth of a second.

The problem

Spot capacity is far cheaper than On-Demand — between 40% and 85% off in the snapshots that ship with this tool. Finding the right machine does not scale by hand:

  • Each cloud publishes prices in a different place, in a different shape, on a different schedule. AWS has a JSON feed and an interruption Advisor. GCP has server-rendered HTML pages. Azure has a REST API and a separate documentation site for vCPU and memory.
  • The consoles rank by price. They do not rank by "cheapest machine with at least 4 vCPU and 16 GiB that my workload can survive losing".
  • A price page has no memory of yesterday, so a script that reads one is a scraper you now own.

The result is that most teams pick one instance family, hard-code it, and stop looking.

What spotinfo does

One command ranks real machines against a real requirement, and says where the number came from.

$ spotinfo recommend --cloud azure --architecture arm64 --min-vcpu 4 --min-memory-gib 16
RANK  CLOUD  REGION        MACHINE            ARCHITECTURE  vCPU  MEMORY GiB  USD/HOUR    SAVINGS  RISK          WHY
   1  azure  centralindia  Standard_D4ps_v6   arm64            4        16.0  0.017076        81%  unavailable   ARCHITECTURE_MATCH,COST_POLICY,KNOWN_POSITIVE_PRICE,RESOURCE_MINIMUMS_MET
   2  azure  centralindia  Standard_D4ps_v5   arm64            4        16.0  0.018665        81%  unavailable   ARCHITECTURE_MATCH,COST_POLICY,KNOWN_POSITIVE_PRICE,RESOURCE_MINIMUMS_MET
   3  azure  centralindia  Standard_D4pds_v5  arm64            4        16.0  0.022361        81%  unavailable   ARCHITECTURE_MATCH,COST_POLICY,KNOWN_POSITIVE_PRICE,RESOURCE_MINIMUMS_MET

Four properties make that output worth trusting:

It works with no credentials. Price snapshots ship inside the binary, and a weekly job refreshes them through a reviewed pull request. AWS and Azure additionally read live feeds when they can reach them — AWS on every run, Azure when you name one or two regions — and fall back to the snapshot when they cannot. --offline skips every price and risk request; only --with-score still reaches a cloud, because no snapshot carries a placement figure.

It says what it does not know. GCP and Azure publish no redistributable interruption data, so every candidate reports RISK: unavailable. It is never a zero and never a low bucket. A cloud that measures nothing must not outrank a cloud that measures honestly. On GCP, --live-risk fetches a per-project preemption rate for the ranked page — Google measures it differently from AWS, so it is shown and never filtered on.

It refuses questions it cannot answer, and says why. --workload web caps interruption frequency at an AWS Spot Advisor bucket boundary. Ask for it on a cloud that measures something else and the command stops before it reads a price, naming the vendor limit rather than a feature nobody built:

$ spotinfo recommend --cloud gcp --workload web --architecture x86_64 --min-vcpu 4 --min-memory-gib 16
spotinfo: gcp: unsupported capability: risk: the web workload caps interruption frequency at 5%, an AWS Spot Advisor bucket boundary, and gcp publishes no figure measured that way; workload cost applies no ceiling and answers on every cloud

Every answer carries its source. The JSON report names each source URL and the SHA-256 of the document that was read, so a reader can fetch it again and compare.

Install

# macOS with Homebrew
brew install alexei-led/tap/spotinfo

# Linux and Windows
curl -L https://github.com/alexei-led/spotinfo/releases/latest/download/spotinfo_linux_amd64.tar.gz | tar xz

# Docker
docker pull ghcr.io/alexei-led/spotinfo:latest

macOS, Linux and Windows, on AMD64 and ARM64. Full instructions: Installation.

Use it

# Cheapest Arm machine with 4 vCPU and 16 GiB, on each cloud
spotinfo recommend --cloud aws   --architecture arm64 --min-vcpu 4 --min-memory-gib 16
spotinfo recommend --cloud gcp   --architecture arm64 --min-vcpu 4 --min-memory-gib 16
spotinfo recommend --cloud azure --architecture arm64 --min-vcpu 4 --min-memory-gib 16

# A web tier that must survive interruption: AWS only, interruption capped at 5%
spotinfo recommend --architecture x86_64 --min-vcpu 2 --min-memory-gib 8 --workload web

# The five cheapest AWS regions for a machine. Every region is the default
spotinfo recommend --architecture x86_64 --min-vcpu 4 --min-memory-gib 16 --top 5

# A versioned JSON report for a pipeline
spotinfo recommend --cloud azure --architecture arm64 --min-vcpu 4 --min-memory-gib 16 \
  --output json

# Browse what a cloud publishes, with prices and a risk column
spotinfo list --machine "m5\." --region us-east-1

# Add AWS placement scores. This one needs AWS credentials
spotinfo list --machine "m5\." --region us-east-1 --with-score

Two commands, on purpose, and both answer on all three clouds. spotinfo list requires nothing and answers "what is there". spotinfo recommend requires an architecture and a size floor and answers "what should I run". They share a vocabulary, not a purpose. See Quick start and the Usage guide.

Cloud coverage

AWS GCP Azure
spotinfo list yes yes yes
spotinfo recommend yes yes yes
Interruption risk published unavailable, or opt-in live unavailable
Workloads cost, web, ci, batch cost cost
Operating systems linux, windows linux linux, windows
Architectures x86_64, arm64 x86_64, arm64 x86_64, arm64
Credentials optional optional never used

Region lists, machine counts and the reasoning behind each limit: Cloud coverage.

MCP server

spotinfo is a Model Context Protocol server, so an assistant can ask these questions directly.

{
  "mcpServers": {
    "spotinfo": { "command": "spotinfo", "args": ["--mcp"] }
  }
}

Ask: "Cheapest arm64 Azure Spot VM with 4 vCPUs and 16 GiB", or "Compare m5.large spot prices across US regions". Three tools answer: list_spot_machines, recommend_spot_machines and list_cloud_regions.

Setup: MCP server and Claude Desktop.

Documentation

Document What is in it
Quick start The first five minutes
Installation Every install method, and how to check one
Usage guide Every flag, every output format
Cloud coverage What each cloud serves, and what it refuses
Examples Pipelines, Terraform, CI, cost monitors
MCP server Tools, arguments, assistant setup
API reference The spotinfo.list/v1 and spotinfo.recommend/v3 contracts
AWS placement scores What a score means, and does not
Data sources Every feed, snapshot, cache and refresh rule
Troubleshooting Errors, causes, fixes
Migrating to v2 Every renamed flag, tool, schema and field
Multi-cloud parity What GCP and Azure cannot do yet, and why

AWS credentials

Credentials are optional. Without them, spotinfo answers from the AWS feeds and the embedded snapshot. With them, two more features work:

Feature Permission
Live price for machines the static feed prices at $0 ec2:DescribeSpotPriceHistory
Placement scores (--with-score) ec2:GetSpotPlacementScores

Credentials load through the standard AWS SDK chain. The chain is probed once per run, so a machine without credentials skips both calls instead of waiting for each to time out.

GCP credentials are optional too. Application Default Credentials and a project — from --gcp-project or GOOGLE_CLOUD_PROJECT — are needed for --live-risk and for --with-score, and a Cloud Billing Catalog API key in --gcp-billing-key prices GCP regions beyond the committed snapshot. Azure needs no credentials at all. See Cloud coverage.

Development

Go 1.26+, make, golangci-lint.

make build            # hermetic: embeds the committed data, downloads nothing
make test             # unit and end-to-end tests, no credentials, no network
make lint
make verify-data      # manifests, source contracts, parser contracts, coverage floors

Contributions are welcome. Read CLAUDE.md for the repository rules. Make sure that every test passes before you open a pull request.

License

Apache 2.0. See LICENSE.

README fetched from the repository 11 hours ago. The original is authoritative.

Questions

About Spotinfo

How do I install Spotinfo?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Spotinfo safe to use with an AI agent?

Its trust score is 82 out of 100 (excellent). It passes 5 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Spotinfo still maintained?

Yes — the latest release is v3.0.0 (12 Aug 2026), and the last commit was 5 days ago. The repository has 164 stars and 29 open issues.