Cloudsmith CLI MCP Server

Manage Cloudsmith repositories, packages and workspaces from an assistant, via the official CLI

Official · Cloudsmith Ltd Python Local · stdio Developer toolsDevOps and monitoring

68 popularity score ★ 78 repo ↓ 202k/mo

Connect your client

Local (PyPI)

Add in one click

Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.

Or add it by command or config

It needs CLOUDSMITH_API_KEY. Replace each <NAME> with your value.

FirstTerminal
pip install --upgrade cloudsmith-cli
Claude CodeTerminal
claude mcp add cloudsmith-cli -e CLOUDSMITH_API_KEY=<CLOUDSMITH_API_KEY> -- cloudsmith mcp start
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "cloudsmith-cli": {
      "command": "cloudsmith",
      "args": [
        "mcp",
        "start"
      ],
      "env": {
        "CLOUDSMITH_API_KEY": "<CLOUDSMITH_API_KEY>"
      }
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "cloudsmith-cli": {
      "command": "cloudsmith",
      "args": [
        "mcp",
        "start"
      ],
      "env": {
        "CLOUDSMITH_API_KEY": "<CLOUDSMITH_API_KEY>"
      }
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "cloudsmith-cli": {
      "type": "stdio",
      "command": "cloudsmith",
      "args": [
        "mcp",
        "start"
      ],
      "env": {
        "CLOUDSMITH_API_KEY": "<CLOUDSMITH_API_KEY>"
      }
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.cloudsmith-cli]
command = "cloudsmith"
args = ["mcp", "start"]

[mcp_servers.cloudsmith-cli.env]
CLOUDSMITH_API_KEY = "<CLOUDSMITH_API_KEY>"
Gemini CLITerminal
gemini mcp add --scope user -e CLOUDSMITH_API_KEY=<CLOUDSMITH_API_KEY> cloudsmith-cli cloudsmith -- mcp start

Settings 3

CLOUDSMITH_API_KEY Required: Cloudsmith API key; not needed if a key is saved in the CLI credentials file or you signed in with `cloudsmith auth` (SSO).
CLOUDSMITH_PROFILE Optional: Named CLI profile whose credentials and settings to use.
CLOUDSMITH_API_HOST Optional: API host to call instead of the default Cloudsmith API.

What it does

Cloudsmith is a hosted package and artifact registry. Its official command-line tool, cloudsmith-cli, has a built-in MCP server started with `cloudsmith mcp start`. The server does not ship a fixed tool list: at start-up it downloads Cloudsmith's v1 and v2 OpenAPI specifications and turns each API operation (GET, POST, PUT, PATCH, DELETE) into a tool, so the tools follow the live API rather than the CLI release.

Because that produces far more tools than fit in a model's context, only a subset is exposed by default. About 28 groups (webhooks, entitlements, package upload, OpenID and SAML settings, GPG/RSA keys, upstreams, retention and others) are off unless you list them in `mcp_allowed_tool_groups` or `mcp_allowed_tools` in `~/.cloudsmith/config.ini`. `cloudsmith mcp list_tools -a` and `cloudsmith mcp list_groups -a` print what is available.

One fact the docs leave out: in the 1.28.0 source, any tool whose name contains delete, destroy or remove is withheld unless the server is started with `-D` (`--allow-destructive-tools`), even when its group is allowed; `-a` (`--all-tools`) exposes everything, destructive tools included. API responses are returned to the model in TOON, a compact text encoding, rather than raw JSON (server.py at v1.28.0).

`cloudsmith mcp configure` writes the client entry for Claude Desktop, Claude Code, Cursor, VS Code (Copilot) and Gemini CLI, with `-P` to bind an entry to a named credentials profile.

What it needs

RuntimePython

The Cloudsmith CLI 1.28.0: `pip install --upgrade cloudsmith-cli` (Python 3), or a standalone binary from the GitHub releases page that bundles Python. A Cloudsmith account with an API key (saved by the CLI or set as CLOUDSMITH_API_KEY); SSO users must run `cloudsmith auth` before starting the client, since the server cannot run the SSO flow. Network access to api.cloudsmith.io (or your CLOUDSMITH_API_HOST).

Limits

Tools are built from the API spec at start-up, so the exact list depends on the live API and on your allow-lists; there is no fixed published list. Many groups (webhooks, entitlements, package upload and validation, signing keys, SAML/OpenID, teams, retention and more) are hidden by default to save context. Tools with delete, destroy or remove in the name are hidden unless started with -D or -a. The SSO sign-in cannot be completed from inside an MCP client. It speaks stdio only.

Who it suits

Teams already on Cloudsmith who want an assistant to look up packages, repositories and workspace settings, or make changes through the same API the CLI uses, under their existing CLI credentials. The default set leans to everyday repository and package work; widen it with the allow-lists, and add -D only when you accept that the model can delete things. Not useful without a Cloudsmith account; for other registries pick a server for that registry.

Similar servers