npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@aidalinfo/ovhcloud-mcp

v2.1.1

Published

OVHcloud MCP server (Aidalinfo fork of hlebtkachenko/ovhcloud-mcp) — VPS, Public Cloud, domains, DNS, billing, SSH, API explorer

Readme

OVHcloud MCP Server

License: MIT Node.js Version TypeScript

MCP server for OVHcloud. Manage VPS, Public Cloud projects & instances, domains, DNS, billing, and execute SSH commands from any MCP-compatible client.

35 tools + full API discovery across 500+ OVH endpoints.

Requirements

Installation

git clone https://github.com/aidalinfo/ovhcloud-mcp.git
cd ovhcloud-mcp
npm ci
npm run build

Configuration

Cursor

~/.cursor/mcp.json

{
  "mcpServers": {
    "ovhcloud": {
      "command": "npx",
      "args": ["-y", "@aidalinfo/ovhcloud-mcp"],
      "env": {
        "OVH_APPLICATION_KEY": "your_app_key",
        "OVH_APPLICATION_SECRET": "your_app_secret",
        "OVH_CONSUMER_KEY": "your_consumer_key"
      }
    }
  }
}

Claude Desktop

claude_desktop_config.json (location)

{
  "mcpServers": {
    "ovhcloud": {
      "command": "npx",
      "args": ["-y", "@aidalinfo/ovhcloud-mcp"],
      "env": {
        "OVH_APPLICATION_KEY": "your_app_key",
        "OVH_APPLICATION_SECRET": "your_app_secret",
        "OVH_CONSUMER_KEY": "your_consumer_key"
      }
    }
  }
}

Claude Code

.mcp.json in your project root, or ~/.claude.json globally:

{
  "mcpServers": {
    "ovhcloud": {
      "command": "npx",
      "args": ["-y", "@aidalinfo/ovhcloud-mcp"],
      "env": {
        "OVH_APPLICATION_KEY": "your_app_key",
        "OVH_APPLICATION_SECRET": "your_app_secret",
        "OVH_CONSUMER_KEY": "your_consumer_key"
      }
    }
  }
}

Any MCP client (stdio)

The server uses stdio transport. Point your MCP client to:

npx -y @aidalinfo/ovhcloud-mcp

With environment variables set for authentication (see below).

Environment Variables

Authentication (one of two modes, auto-detected):

| Variable | Mode | Description | |----------|------|-------------| | OVH_APPLICATION_KEY | API key | Application key | | OVH_APPLICATION_SECRET | API key | Application secret | | OVH_CONSUMER_KEY | API key | Consumer key | | OVH_CLIENT_ID | OAuth2 | Service account ID | | OVH_CLIENT_SECRET | OAuth2 | Service account secret | | OVH_ENDPOINT | Both | ovh-eu (default), ovh-ca, ovh-us |

SSH (optional):

| Variable | Description | |----------|-------------| | SSH_HOST | Default SSH host | | SSH_PORT | Default SSH port (default: 22) | | SSH_USER | Default SSH username | | SSH_PASSWORD | SSH password | | SSH_PRIVATE_KEY_FILE | Path to private key file |

Tools

VPS

| Tool | Description | |------|-------------| | ovh_vps_list | List all VPS with hardware details | | ovh_vps_info | Server state, hardware, IPs, service status | | ovh_vps_monitoring | CPU and network statistics | | ovh_vps_ips | List assigned IPs | | ovh_vps_reboot | Reboot a VPS | | ovh_vps_start | Start a stopped VPS | | ovh_vps_stop | Stop a running VPS | | ovh_vps_snapshot | Get snapshot info | | ovh_vps_create_snapshot | Create a new snapshot |

Public Cloud

| Tool | Description | |------|-------------| | ovh_cloud_projects | List all Public Cloud projects (id, name, status) | | ovh_cloud_project_info | Project details + region count | | ovh_cloud_instances | List instances (VMs) — one project or all projects | | ovh_cloud_instance_info | Full VM detail: flavor, image, network | | ovh_cloud_regions | List regions available in a project | | ovh_cloud_flavors | List instance flavors (VM sizes), filterable by region | | ovh_cloud_images | List OS images, filterable by region | | ovh_cloud_volumes | List storage volumes |

Domains & DNS

| Tool | Description | |------|-------------| | ovh_domain_list | List all domains and DNS zones | | ovh_domain_zone_info | Nameservers, DNSSEC status | | ovh_domain_dns_records | List records with type/subdomain filters | | ovh_domain_dns_record_detail | Single record details | | ovh_domain_dns_create | Create DNS record | | ovh_domain_dns_update | Update DNS record | | ovh_domain_dns_delete | Delete DNS record | | ovh_domain_dns_refresh | Force zone refresh |

Account & Billing

| Tool | Description | |------|-------------| | ovh_account_info | Account details (name, email, country) | | ovh_services | List active services with renewal info | | ovh_invoices | Recent invoices with PDF links | | ovh_invoice_detail | Full invoice with line items |

API Explorer

Discover and inspect any OVH API endpoint without writing code.

| Tool | Description | |------|-------------| | ovh_api_catalog | List all API categories (vps, cloud, email, dedicated, etc.) | | ovh_api_search | Search endpoints by keyword across all or specific categories | | ovh_api_endpoint_detail | Parameters, types, and descriptions for any endpoint |

SSH

| Tool | Description | |------|-------------| | ovh_ssh_exec | Execute a command on a remote server | | ovh_ssh_check | Test SSH connectivity |

Raw API

| Tool | Description | |------|-------------| | ovh_api_raw | Call any OVH API endpoint directly |

Docker

docker build -t ovhcloud-mcp .
docker run --rm \
  -e OVH_APPLICATION_KEY=... \
  -e OVH_APPLICATION_SECRET=... \
  -e OVH_CONSUMER_KEY=... \
  ovhcloud-mcp

Multi-stage build, runs as non-root node user.

Security

  • Path injection prevention — .., ?, # rejected in API paths
  • 30-second timeout on all HTTP requests
  • Error responses truncated to 500 characters
  • All parameters validated with Zod schemas
  • SSH output capped at 100 KB to prevent memory issues
  • Docker container runs as unprivileged user

Testing

npm test

Architecture

src/
  index.ts              Auth detection, tool registration
  ovh-client.ts         API client (SHA1-HMAC + OAuth2), path validation
  tools/
    vps.ts              VPS management (9 tools)
    cloud.ts            Public Cloud projects & instances (8 tools)
    domain.ts           Domains and DNS (8 tools)
    raw.ts              Raw API calls (1 tool)
    account.ts          Account and billing (4 tools)
    explorer.ts         API spec search and discovery (3 tools)
    ssh.ts              Remote command execution (2 tools)
tests/
  ovh-client.test.ts    Path validation and client tests
  cloud.test.ts         Public Cloud tool tests

Tech Stack

  • TypeScript
  • @modelcontextprotocol/sdk
  • Zod (schema validation)
  • ssh2 (SSH client)
  • Native fetch

API Reference

License

MIT