Docs / Developers

NoctHost MCP server: create servers from Claude, Cursor and VS Code

By the NoctHost TeamUpdated June 27, 2026

Connect an AI assistant to NoctHost over MCP: list sizes and prices, get a quote, create a server with your SSH key, reboot or destroy it from the chat.

What it does

The NoctHost MCP server gives an assistant eight tools over your account: check the balance, list what can be deployed with prices, quote an order, create servers, list and inspect them, reboot, stop or start them, and destroy them. Servers run on Vultr, DigitalOcean, Hetzner and Linode, plus NVIDIA GPU servers on OVHcloud, in 33 cities, and are billed per hour from your prepaid balance, which you top up with crypto or a card in the dashboard.

The endpoint is https://mcp.nocthost.com/mcp (Streamable HTTP). It calls the same REST API as the dashboard and the API reference, with your API key, so every rule of your account applies as is: balance check, server limit, hourly billing.

1. Create an API key

In the dashboard open Profile, API keys, name the key after the client (for example claude-code) and pick what it may do. read covers balance, sizes, prices and servers; deploy covers creating servers, reboot, stop, start and the root password; destroy covers deleting servers. A key without destroy is a good default for an assistant: it can build, and you delete from the dashboard.

The key is shown once. It goes into the client config below as Authorization: Bearer nh_.... Keys created before scopes existed keep all three.

2. Connect your client

Claude Code, Cursor and VS Code talk to the server directly. Claude Desktop reaches remote servers with an API key through the mcp-remote bridge, which needs Node.js. Any other client needs the URL, the Streamable HTTP transport and the Authorization header.

Claude Code
claude mcp add --transport http nocthost https://mcp.nocthost.com/mcp \
  --header "Authorization: Bearer nh_your_key"
Claude Desktop (claude_desktop_config.json)
{
  "mcpServers": {
    "nocthost": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.nocthost.com/mcp", "--header", "Authorization:${NOCTHOST_AUTH}"],
      "env": { "NOCTHOST_AUTH": "Bearer nh_your_key" }
    }
  }
}
Cursor (~/.cursor/mcp.json)
{
  "mcpServers": {
    "nocthost": {
      "url": "https://mcp.nocthost.com/mcp",
      "headers": { "Authorization": "Bearer nh_your_key" }
    }
  }
}
VS Code (.vscode/mcp.json, asks for the key once)
{
  "inputs": [
    { "type": "promptString", "id": "nocthost-key", "description": "NoctHost API key", "password": true }
  ],
  "servers": {
    "nocthost": {
      "type": "http",
      "url": "https://mcp.nocthost.com/mcp",
      "headers": { "Authorization": "Bearer ${input:nocthost-key}" }
    }
  }
}
Any other MCP client
URL:       https://mcp.nocthost.com/mcp
Transport: Streamable HTTP (stateless, POST)
Header:    Authorization: Bearer nh_your_key

3. Ask in plain words

"Spin up a small Ubuntu server in Frankfurt for an hour, here is my key: ssh-ed25519 AAAA..."

"What is the cheapest GPU I can get in Europe tonight, and how long does my balance last with it?"

"List my servers and destroy the ones labelled test."

The assistant calls list_options and quote, tells you the hourly and monthly price, and creates the server after you agree. create_server waits up to two minutes for the server to become ACTIVE (most are ready within one or two) and returns the IP and a ready ssh root@... command.

Tools

get_account: balance, hourly spend, how long the balance lasts, servers and the account limit.

list_options: sizes (shared vCPU, dedicated CPU, GPU, bare metal) with vCPU, RAM, disk, traffic, hourly and monthly price, and the clouds and cities each one deploys in. Filters: city, country or continent, cloud, kind, GPU, minimum vCPU, RAM or disk, maximum hourly price.

quote: price of a plan in a city for a number of servers and hours, and whether your balance covers the first hour.

create_server: creates 1 to 10 servers and returns ids, IPv4 and SSH commands. list_servers and get_server show status and IPs. server_power reboots, stops or starts. destroy_server deletes a server.

There is also a resource, nocthost://catalog (clouds, cities, plans, OS images), and a prompt, deploy-a-server, that walks through city, size, price and SSH key.

Money and safety

One create_server call makes at most 3 servers and at most $1 per hour in total unless the assistant passes a higher max_hourly_usd. Above that the server is not created and the tool returns the price instead, so the assistant has to come back to you with the number.

Give the assistant your SSH public key. Without one, a random root password is generated and returned once, and it stays in the chat history: log in, add a key and change it.

destroy_server needs confirm: true and the exact server label; without both it only describes what it would delete. Billing for a server stops in the hour it is destroyed. A stopped server is still billed while it exists.

The MCP server cannot top up your balance. When the balance is short, the assistant gets a link to the billing page and the amount needed. Your key is only passed through to our API, never stored or logged.

Ready to try it?

Hourly billing means trying costs cents.

Deploy a server