La mascotte ours polaire NordBastion assise à un poste de travail de contrôle de mission tactique avec des moniteurs terminaux holographiques flottants affichant du code cyan, un clavier mécanique avec des touches illuminées en cyan et le bouclier-N cyan appuyé à côté, dans une salle de console nordique en pierre apparente avec une fenêtre éclairée par une aurore
API.v1 · REST · MCP · API

Pilotez NordBastion depuis du code.
Sans KYC, payé en crypto, entièrement scriptable.

Inscrivez-vous, créez une clé, puis testez l’accès. Aucun dépôt n’est requis.

Démarrage rapide

Créez votre clé API avant de payer.

Inscrivez-vous, créez une clé, puis testez l’accès. Aucun dépôt n’est requis.

cURL

Utilisez le jeton d’accès obtenu à l’inscription ou à la connexion pour créer une clé API aux permissions limitées. La clé est renvoyée en clair une seule fois.

# bash + curl + jq
# Set NB_EMAIL and NB_PASSWORD in your environment.
set -eu
: "${NB_EMAIL:?Set NB_EMAIL}" "${NB_PASSWORD:?Set NB_PASSWORD}"
API=https://nordbastion.com/v1
TOKEN=$(jq -n '{email:env.NB_EMAIL,password:env.NB_PASSWORD}' |
  curl --fail-with-body -sS "$API/auth/register" \
    -H 'Content-Type: application/json' --data-binary @- |
  jq -er '.tokens.access_token')
KEY=$(curl --fail-with-body -sS "$API/auth/api-keys" \
  -H "Authorization: Bearer $TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"name":"agent-read","scope":"read"}' |
  jq -er '.plaintext')
curl --fail-with-body -sS "$API/account/balance" \
  -H "Authorization: Bearer $KEY"
# Store KEY in your secret store. Do not print it.
unset TOKEN KEY

Python

Créez votre clé API avant de payer.

import os
import requests

api = "https://nordbastion.com/v1"
with requests.Session() as client:
    signup = client.post(api + "/auth/register", json={
        "email": os.environ["NB_EMAIL"],
        "password": os.environ["NB_PASSWORD"],
    }, timeout=30)
    signup.raise_for_status()
    token = signup.json()["tokens"]["access_token"]
    created = client.post(api + "/auth/api-keys",
        headers={"Authorization": f"Bearer {token}"},
        json={"name": "agent-read", "scope": "read"},
        timeout=30)
    created.raise_for_status()
    key = created.json()["plaintext"]
    # Store key in your secret store; never log it.
    balance = client.get(api + "/account/balance",
        headers={"Authorization": f"Bearer {key}"},
        timeout=30)
    balance.raise_for_status()
    print(balance.json())

L’accès par clé API est indépendant des paiements. Maximum 10 clés actives par compte ; révoquez les clés inutilisées.

Compatibilité et versions

Le point d’accès MCP hébergé est mis à jour ici. Les téléchargements stdio versionnés comprennent le code source et les empreintes SHA-256.

MCP hébergé

https://nordbastion.com/mcp
Version
1.1.0
Versions du protocole
2026-07-28 · 2025-11-25 · 2025-06-18 · 2025-03-26
Dernière vérification
2026-09-15

Envoyez les identifiants dans l’en-tête Authorization, ou dans l’argument access_token si votre client MCP ne permet pas de définir les en-têtes.

L’autorisation OAuth dans le navigateur n’est pas disponible. Utilisez un jeton Bearer ou l’argument explicite access_token.

Server metadata · MCP specification

MCP · register_account → create_api_key

{"name":"register_account","arguments":{
  "email":"agent@example.com",
  "password":"YOUR_STRONG_PASSWORD"
}}

{"name":"create_api_key","arguments":{
  "name":"agent-read",
  "scope":"read",
  "access_token":"ACCESS_TOKEN_FROM_SIGNUP"
}}

{"name":"get_balance","arguments":{
  "access_token":"PLAINTEXT_FROM_CREATE_API_KEY"
}}

Générez les clés SSH localement. Transmettez uniquement la clé publique ; conservez la clé privée sur votre appareil.

ssh-keygen -t ed25519 -f ~/.ssh/nordbastion_agent
# add_ssh_key: public_key = contents of the .pub file

Télécharger MCP 0.2.0

Python ≥ 3.10 · MCP SDK 2.2.0 · MIT

Wheel · Code source · SHA-256 · Changelog

pip install https://nordbastion.com/downloads/nordbastion_mcp-0.2.0-py3-none-any.whl
nordbastion-mcp

Référence des points de terminaison

OpenAPI 3.1 · llms-agents.txt

Les SDK Python, TypeScript, Go et Rust ainsi que la CLI sont prévus. Utilisez REST ou MCP dès aujourd’hui.

MethodPoint de terminaisonPortéeÉtat
POST/v1/auth/registerpublicLIVE
POST/v1/auth/loginpublicLIVE
POST/v1/auth/login/totppublicLIVE
POST/v1/auth/token/refreshpublicLIVE
POST/v1/auth/recoverpublicPLANNED
GET/v1/auth/sessionsfullLIVE
DELETE/v1/auth/sessions/{token_id}fullLIVE
POST/v1/auth/totp/setupfullLIVE
POST/v1/auth/totp/enablefullLIVE
POST/v1/auth/totp/disablefullLIVE
POST/v1/auth/passwordfullLIVE
POST/v1/auth/api-keysfullLIVE
GET/v1/auth/api-keysreadLIVE
DELETE/v1/auth/api-keys/{key_id}fullLIVE
GET/v1/accountreadLIVE
PATCH/v1/accountfullPLANNED
GET/v1/account/balancereadLIVE
GET/v1/account/usagereadLIVE
GET/v1/account/audit-logreadLIVE
GET/v1/billing/coinspublicLIVE
POST/v1/billing/topupsbillingLIVE
GET/v1/billing/topupsreadLIVE
GET/v1/billing/topups/{order_number}readLIVE
POST/v1/billing/topups/{order_number}/cancelbillingLIVE
GET/v1/billing/bonus-tierspublicLIVE
GET/v1/catalogpublicLIVE
GET/v1/catalog/vpspublicLIVE
GET/v1/catalog/dedicatedpublicLIVE
GET/v1/catalog/bastionspublicLIVE
GET/v1/catalog/imagespublicLIVE
GET/v1/catalog/{code}publicLIVE
POST/v1/serversserversLIVE
GET/v1/serversreadLIVE
GET/v1/servers/{order_number}readLIVE
PATCH/v1/servers/{order_number}serversLIVE
DELETE/v1/servers/{order_number}serversLIVE
POST/v1/ssh-keysserversLIVE
GET/v1/ssh-keysreadLIVE
GET/v1/ssh-keys/{id}readLIVE
DELETE/v1/ssh-keys/{id}serversLIVE
POST/v1/webhooksfullLIVE
GET/v1/webhooksreadLIVE
DELETE/v1/webhooks/{id}fullLIVE
POST/v1/webhooks/{id}/testfullLIVE
GET/v1/transparency/canarypublicLIVE
GET/v1/transparency/peeringpublicLIVE
GET/v1/transparency/statuspublicLIVE
GET/v1/agents/directorypublicLIVE
POST/v1/agents/directoryfullLIVE
POST/v1/oauth/registerpublicLIVE
POST/v1/oauth/tokenpublicLIVE
POST/v1/oauth/revokepublicLIVE
GET/v1/oauth/introspectpublicLIVE

Paiement

Explorez et testez avant d’alimenter votre compte. Les recharges en cryptomonnaie sont nécessaires uniquement pour les services payants.

POST /v1/billing/topups · {"amount_usd":50,"crypto":"XMR"} · USD 30–10,000

x402 permet les paiements USDC signés sur Base via le point d’accès aux recharges. Attendez la confirmation du solde avant de commander.

x402: POST /v1/billing/topups · X-Payment-Mode: x402 · {"amount_usd":50}

Limites de débit

API key: 120 / min · 3,000 / hour · public: 30 / min · HTTP 429 + Retry-After

L’activité du compte est consignée dans le journal d’audit de l’API. Les identifiants et le contenu des requêtes en sont exclus.

Obtenir une clé API

Hébergement privé, conçu dans le Nord.