Développeurs → MCP

Serveur MCP pour votre IA

NameOcean propose un serveur MCP distant accessible via une seule URL. Connectez votre client IA une fois et il pourra gérer votre DNS, votre SSL, vos serveurs d'applications, vos e-mails et vos webhooks avec 64 outils. Vous vous connectez dans le navigateur : aucune clé à coller, rien à installer.

https://nameocean.net/mcp

Connecter votre client

Claude Code

Claude Code
$ claude mcp add --transport http nameocean https://nameocean.net/mcp

Lancez ensuite /mcp dans Claude Code et choisissez nameocean pour vous connecter.

Claude Desktop et claude.ai

Paramètres → Connecteurs → Ajouter un connecteur personnalisé. Nommez-le NameOcean et utilisez l'URL https://nameocean.net/mcp. Claude ouvre la page de connexion NameOcean la première fois.

Cursor

~/.cursor/mcp.json
{
  "mcpServers": {
    "nameocean": {"url": "https://nameocean.net/mcp"}
  }
}

VS Code

.vscode/mcp.json
{
  "servers": {
    "nameocean": {"type": "http", "url": "https://nameocean.net/mcp"}
  }
}

OpenCode

~/.config/opencode/opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "nameocean": {"type": "remote", "url": "https://nameocean.net/mcp", "enabled": true}
  }
}

Avec la CLI

nameocean mcp install détecte Claude Code, Cursor et OpenCode sur votre ordinateur et ajoute le serveur à chacun d'eux. Installer la CLI.

Clients sans connexion par navigateur

Envoyez une clé API dans un en-tête : Authorization: Bearer no_live_…. Les outils disposent alors exactement des autorisations de la clé : une clé limitée à dns:read peut consulter, mais pas modifier.

Que demander

  • "Fais pointer blog.example.com vers 203.0.113.10 et active le SSL."
  • « Configure les e-mails pour example.com : une boîte pour hello@, redirige sales@ vers mon Gmail et vérifie le DNS. »
  • « Déploie ce projet sur mon serveur et montre-moi les logs s'il ne démarre pas. »
  • « Déplace tous les enregistrements de example.com vers l'IP du nouveau serveur. Montre-moi d'abord le plan. »
  • « Envoie un webhook à https://example.com/hooks quand un domaine est sur le point d'expirer. »

Ce que votre IA peut et ne peut pas faire

  • Il ne peut ni enregistrer ni renouveler un domaine, ni ajouter du crédit. Il vérifie la disponibilité et le prix, puis vous redirige vers nameocean.net/domains pour l'achat.
  • La création d'un serveur d'applications est facturée mensuellement : elle nécessite donc deux appels. Le premier renvoie le prix, que l'IA vous affiche ; le second ne s'exécute qu'après votre accord. Une clé API à portée limitée doit également disposer de billing:write pour cela.
  • Les mots de passe des boîtes mail et les valeurs des variables d'environnement ne sont jamais transmis au modèle ; vous les consultez dans le tableau de bord.
  • Les outils qui suppriment, arrêtent ou écrasent sont marqués comme destructifs : les clients qui demandent confirmation pour ce type d'outils vous consultent donc d'abord.
  • Toutes ses modifications figurent dans Tableau de bord → Activité, avec l'application qui les a effectuées. Vous pouvez déconnecter une application à tout moment dans Tableau de bord → Applications connectées.
  • Les connexions d'applications et les clés API nécessitent l'activation de la connexion en deux étapes sur votre compte.

Outils

Les descriptions sont lues par votre IA, c'est pourquoi elles sont en anglais. lecture lecture seule · écriture effectue une modification · destructif supprime, arrête ou écrase

Account and domains

get_account
lecture
Your email, account credit (USD) and how many domains and DNS zones you have.
check_domain
lecture
Is a domain available to register, and its register/renew price in USD. Registering is done by the user in the dashboard.
list_activity
lecture
The account's activity log, newest first: changes made through the API, the CLI and MCP (by which key or app), refused calls, and API key and app changes. Use it to show the user what was done.
list_domains
lecture
Domains registered in your account with expiry, auto-renew and nameservers.
get_domain
lecture
One domain: nameservers, lock, auto-renew and SSL status.
update_domain
écriture
Turn auto-renew or the transfer lock on or off.
set_nameservers
destructif
Change a domain's nameservers. Pass 2-4 hostnames, or ["nameocean"] to go back to NameOcean DNS. Moving away from NameOcean DNS stops DNS records, server bindings and email from working.

DNS

list_dns_zones
lecture
DNS zones hosted on NameOcean DNS.
create_dns_zone
écriture
Host a domain's DNS on NameOcean (free).
list_dns_records
lecture
All records of a DNS zone with their type and id.
add_dns_record
écriture
Add a DNS record. Fields by type: A {hostname, ip}, CNAME {hostname, target}, MX {hostname, priority, target}, TXT {hostname, text}, SRV {hostname, priority, weight, port, target}, PTR {hostname, target}, REDIRECT {hostname, target URL, save_path}. Changes reach the nameservers within seconds.
update_dns_record
écriture
Change fields of an existing record (find its type and id with list_dns_records).
delete_dns_record
destructif
Delete a DNS record by type and id.
export_dns_zone
lecture
The zone as a DNS-as-code file (JSON, records in {name, type, value, ttl} form), without ids. Start from this to change many records at once with plan_dns_zone / apply_dns_zone.
plan_dns_zone
lecture
Compare a full list of records with the zone and show what apply_dns_zone would create, change and delete. Changes nothing. Show the plan to the user before applying it.
apply_dns_zone
destructif
Make the zone match a full list of records, in one transaction (nothing changes when one record is refused). Run plan_dns_zone first, get the user's OK for its deletes, and pass its serial so a zone changed in between is refused.

SSL

get_ssl
lecture
SSL certificate status of a zone and its download link.
issue_ssl
écriture
Issue a free wildcard Let's Encrypt certificate for a zone on NameOcean DNS.

Serveurs d'applications

list_servers
lecture
Your app servers with SSH command, git remote, open ports and bound domains.
get_server
lecture
One app server in detail.
open_port
écriture
Open a port on a server. 80 (behind HTTPS on 443) and SSH are open already; NameOcean assigns the external port.
close_port
destructif
Close an open port by its id (see get_server).
bind_domain
écriture
Serve a domain or subdomain from a server over HTTPS. The domain must use NameOcean DNS; DNS records and the certificate are set up automatically.
unbind_domain
destructif
Stop serving a domain from a server, by binding id (see get_server).
list_server_plans
lecture
App server plans you can create: CPU, memory, disk and monthly price (USD).
create_server
écriture
Create an app server; it is billed monthly. First call without confirm to get the price, show it to the user, and call again with confirm: true only after they agree.
start_server
écriture
Start a stopped server.
stop_server
destructif
Stop a server (its sites go down; billing continues). Ask the user first.
restart_server
destructif
Reboot a server (a short outage). Ask the user first.
list_backups
lecture
A server's backups (free, nightly and manual; the last 7 days, at most 7).
backup_server
écriture
Start a backup of a server now.
restore_backup
destructif
Replace EVERYTHING on a server with one of its backups. Can't be undone: get the user's explicit OK for this backup first.
list_apps
lecture
Supervisor programs on an app server and whether they run.
restart_apps
écriture
Restart every app (supervisor) on a server and reload nginx, e.g. after changing config.
read_logs
lecture
The last lines of an app's output (a supervisor program), or nginx / nginx-access.
list_env
lecture
Names of a server's env variables (values are secrets and are not shown here).
set_env
écriture
Set or remove env variables every app on the server gets, then restart the apps.
add_ssh_key
écriture
Let a public SSH key log in to a server as root (needed for git push from a new machine).
list_deploys
lecture
The commit a server runs now and its recent deploys.
finish_deploy
écriture
After `git push` to the server's git remote: check the commit arrived, restart the apps, reload nginx and record the deploy. Returns each app's state and the output.
get_deploy_guide
lecture
How to deploy code to a server: git remote, SSH, layout, ports and supervisor examples.

E-mail

list_email_domains
lecture
Domains with paid NameOcean email hosting: plan, storage, mailbox count, expiry.
get_email_domain
lecture
A mail domain's mailboxes, aliases, mailing lists and the IMAP/SMTP settings for mail apps.
check_email_dns
lecture
Look up a mail domain's NS, MX, SPF, DKIM and DMARC now and say which differ from what NameOcean mail needs (with the expected values).
create_mailbox
écriture
Create a mailbox (username@domain) on a mail domain. A password is generated; it is not returned here, the user reads it in the dashboard. quota_gb comes out of the plan's storage (default 1).
update_mailbox
écriture
Change a mailbox's display name or quota (GB).
reset_mailbox_password
écriture
Give a mailbox a new generated password. The old one stops working at once (mail apps must be updated); the new one is shown to the user in the dashboard, not returned here. Ask the user first.
delete_mailbox
destructif
Delete a mailbox with ALL its mail and aliases. Can't be undone: confirm with the user first.
add_email_alias
écriture
Deliver another address of the domain to a mailbox (e.g. sales@ to info@).
remove_email_alias
destructif
Delete an alias of a mail domain.
list_email_forwarding
lecture
Free email forwarding: every domain registered in the account, whether forwarding is on, and if it is off, why it can't be turned on.
get_email_forwarding
lecture
A domain's forwarding aliases (and whether their targets confirmed) and mail webhooks.
enable_email_forwarding
écriture
Turn free email forwarding on for a domain registered at NameOcean: writes its MX record. If the zone has other MX records (another mail provider) this fails unless replace_mx is true, which removes them - ask the user before that.
disable_email_forwarding
destructif
Turn forwarding off for a domain (removes the MX record; aliases are kept).
add_email_forward
écriture
Forward localpart@domain to another address. A new target address gets a confirmation mail; forwarding starts once its owner confirms.
remove_email_forward
destructif
Stop forwarding localpart@domain.
list_forwarded_mail
lecture
Mail a forwarding domain received in the last 30 days: from, subject, status (forwarded, spam, quota, bounced...). Never the body.
send_email
écriture
Send an email from one of the user's mailboxes or aliases (a domain with NameOcean email hosting whose SPF and DKIM are set up). Before calling, show the user the from address, the recipients, the subject and the body, and send only after they say yes. Returns one id per recipient; delivery results come later in list_sent_email.
list_sent_email
lecture
Mail sent with the API in the last 30 days and what happened to each recipient (queued, delivered, delayed, failed, suppressed), with the SMTP error. Never the body.

Webhooks

list_webhooks
lecture
Webhook endpoints that receive this account's events (domain, DNS, SSL), with the event types they want.
create_webhook
écriture
Send account events to an https URL. events: types such as dns.record.created, groups such as dns.*, or ["*"]; the event list is at https://nameocean.net/developers/webhooks/. Returns the signing secret.
delete_webhook
destructif
Stop sending events to a webhook endpoint and delete it.
send_test_event
écriture
Post a webhook.test event to an endpoint now and show what it answered.
list_webhook_deliveries
lecture
Recent deliveries to a webhook endpoint: event, status, attempts, the receiver's answer.

Protocole

Streamable HTTP, sans état, versions du protocole 2025-11-25, 2025-06-18 et 2025-03-26. La connexion utilise OAuth 2.1 avec PKCE et l'enregistrement dynamique des clients ; les métadonnées du serveur se trouvent à /.well-known/oauth-protected-resource. Les outils appellent le même code que l'API REST : les contrôles de propriété, les portées et les limites de débit sont donc identiques.