iotamine-mcp
An MCP server for the Iotamine cloud VPS platform. Connect it to Claude Desktop, Claude Code, Cursor, or any other MCP-compatible client to manage your account directly — the same actions available on the dashboard.
This is a thin wrapper around the real Iotamine REST API — the exact same API the dashboard itself uses. It doesn't duplicate any account logic, store any of your data, or run any service of its own; it just translates MCP tool calls into ordinary API requests on your behalf, using your own API key.
Setup
1. Get an API key
From your Iotamine dashboard → API Keys → Create Key. Choose a scope:
- Read-only — can look up anything (VPS list, stats, billing, invoices, ...) but can't change anything. Use this if you're not fully in control of what calls the tools — an AI assistant, a script you didn't write yourself.
- Read & write — can also do everything the read-only scope can, plus create/destroy/modify things. Required for any of the write tools below; a read-only key gets a clean, clear rejection if a write tool is called with it.
2. Install and run
Using uv (recommended — no separate install step):
uvx iotamine-mcp
Or with pip:
pip install iotamine-mcp
iotamine-mcp
First run on a fresh machine takes longer — uvx/pip need to download the package and its
dependencies once. If you're wiring this into an MCP client (below) and it fails with a timeout
the very first time, run the command above directly in a terminal first, let it finish, then
retry from the client — every run after the first is near-instant.
Already using an older version? uvx caches its own resolution of "latest" — it won't
automatically notice a new release. Run uvx --refresh iotamine-mcp once in a terminal (or clear
~/.cache/uv) to pick up new tools, then restart your MCP client.
3. Add it to your MCP client
Claude Code:
claude mcp add iotamine uvx --args iotamine-mcp --env IOTAMINE_API_KEY="your-key-here"
Claude Desktop: Settings → Developer → Edit Config (or directly edit
~/Library/Application Support/Claude/claude_desktop_config.json on macOS,
%APPDATA%\Claude\claude_desktop_config.json on Windows,
~/.config/Claude/claude_desktop_config.json on Linux):
{
"mcpServers": {
"iotamine": {
"command": "uvx",
"args": ["iotamine-mcp"],
"env": {
"IOTAMINE_API_KEY": "your-key-here"
}
}
}
}
Cursor: same JSON shape, in ~/.cursor/mcp.json (all projects) or .cursor/mcp.json in one
project — or via Settings → MCP → Add new MCP server.
Set IOTAMINE_API_KEY as an environment variable in your client's config, not hardcoded anywhere
else — the same rule any API key deserves. This is not the same thing as the "Connectors" picker
some clients show for remote/OAuth servers — that only accepts a server URL, and won't list this
package at all; the config-file route above is what actually runs it.
Write tools require confirmation
Every tool that spends money, destroys something, or otherwise changes account state takes an
explicit confirm: true argument and refuses to run without it. This is deliberate — it means a
model has to be told (by you, or by its own judgment reading the tool's description) exactly what
it's about to do before it can actually do it. Always expect your assistant to explain the action
and its cost (if any) before it sets confirm: true.
Tools
78 tools in total. Read-only ones work with either key scope; everything else needs a
read_write-scoped key (still true for create_ticket/reply_to_ticket — any write needs that
scope, full stop). The one difference: those two don't require confirm=true the way spend/
destroy tools do — opening a ticket or replying to one doesn't cost anything or destroy anything.
VPS — lifecycle
list_vps, get_vps, create_vps, destroy_vps, start_vps, stop_vps, poweroff_vps,
restart_vps, reinstall_vps, resize_vps, change_vps_hostname, change_vps_root_password
VPS — monitoring & management
get_vps_console, get_vps_stats, get_vps_bandwidth_history, get_vps_metrics_history,
get_bandwidth_overview, get_vps_billing, get_vps_pricing, get_vps_smtp_status,
get_vps_build_log, list_vps_available_os
VPS — backups
list_vps_backups, get_vps_backup_cost, create_vps_backup, delete_vps_backup,
restore_vps_backup
VPS — its own disks, IPs, reverse DNS, firewall
list_vps_disks, add_disk_to_vps, remove_disk_from_vps, list_attachable_ips_for_vps,
add_ip_to_vps, remove_ip_from_vps, set_vps_reverse_dns, list_firewall_rules,
update_firewall_rules
Standalone IP addresses
list_ip_addresses, get_ip_address, check_available_ips, purchase_ip,
list_attachable_vps_for_ip, attach_ip, detach_ip, release_ip
Standalone volumes
list_volumes, get_volume, list_available_volume_sizes, purchase_volume,
get_volume_task_status, list_attachable_vps_for_volume, list_available_os_for_volume,
install_os_on_volume, resize_volume, attach_volume, set_volume_as_boot, detach_volume,
release_volume
SSH keys
list_ssh_keys, create_ssh_key, delete_ssh_key
Billing & account
get_quota, get_account_balance, list_invoices, get_usage_billing,
get_usage_billing_line_items, list_transactions, get_transaction
Catalogs
list_os_images, list_regions
Activity & data export
list_activity_logs, export_data
Support tickets
list_ticket_departments, list_tickets, get_ticket, create_ticket, list_ticket_replies,
reply_to_ticket
Maintenance
list_maintenance_events
Configuration
| Environment variable | Required | Default |
|---|---|---|
IOTAMINE_API_KEY |
Yes | — |
IOTAMINE_API_URL |
No | https://iotamine.com/api/ |
Development
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest
Metadata
Release files for iotamine-mcp 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| iotamine_mcp-0.3.1.tar.gz | 23.5 kB | With provenance | Details for iotamine_mcp-0.3.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| iotamine_mcp-0.3.1-py3-none-any.whl | Python 3 | none | any | Details for iotamine_mcp-0.3.1-py3-none-any.whl |
Total release size: 47.5 kB
Release files / iotamine_mcp-0.3.1.tar.gz
| Download URL | iotamine_mcp-0.3.1.tar.gz |
|---|---|
| Size | 23.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
459e155164a58bb5d7b84d24dbcf3d4530f5594d6b5b70d2575c2d86fff1d246
|
|
BLAKE2b-256 checksum How to use checksums |
db78a44c4a4e2c12b816f4914bb5e2b9e9b54e5f092c2da4cb482f1d3649b647
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 14, 2026.
Transparency logRelease files / iotamine_mcp-0.3.1-py3-none-any.whl
| Download URL | iotamine_mcp-0.3.1-py3-none-any.whl |
|---|---|
| Size | 24.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c7b4f6109fab4681ff18b2bc853fb95123ae961c5406f2ecab43cf7897ea9151
|
|
BLAKE2b-256 checksum How to use checksums |
8335c7e13dca8d8e3c5e7b61fbc53f671664ff92f1ace1ce3222f85bf9da576e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 14, 2026.
Transparency logSecurity for iotamine-mcp 0.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for iotamine_mcp-0.3.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 14, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.