# Cloudsmith — how to use (mcp.ai)

Connect your Cloudsmith account and use 10 tools for developer tools straight from your AI agent. Connect with your own API key. Cloudsmith is a cloud-native artifact management platform for securely managing, distributing, and governing software packages across teams and repositories.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_cloudsmith?ms=1787295660000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `cloudsmith_get_current_user`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/cloudsmith`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/cloudsmith/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/cloudsmith/get/current/user` — Return the identity authenticated by the connected Cloudsmith API key. Fails if Cloudsmith reports authenticated=false, even when the HTTP response is 200.
- `POST https://api.mcp.ai/api/cloudsmith/get/package` — Get metadata, status, checksums, licensing, and security state for one package in a Cloudsmith repository.
  - body: { repo: string, owner: string, identifier: string, include_connected_repositories?: boolean }
- `POST https://api.mcp.ai/api/cloudsmith/get/quota` — Return current storage and bandwidth usage and allowances for a Cloudsmith namespace without inferring a billing plan name.
  - body: { owner: string }
- `POST https://api.mcp.ai/api/cloudsmith/get/rate/limits` — Return Cloudsmith's current per-resource request limits, remaining counts, intervals, and throttling state for the authenticated principal.
- `POST https://api.mcp.ai/api/cloudsmith/get/repository` — Get configuration, visibility, usage, and capability details for one Cloudsmith repository without returning repository signing keys or certificates.
  - body: { owner: string, identifier: string }
- `POST https://api.mcp.ai/api/cloudsmith/list/organizations` — List Cloudsmith organizations associated with the authenticated principal so an agent can discover namespace slugs for later calls.
  - body: { sort?: string, page_size?: integer, next_cursor?: string }
- `POST https://api.mcp.ai/api/cloudsmith/list/repository/vulnerabilities` — List vulnerability scan summaries for packages in a Cloudsmith repository.
  - body: { repo: string, owner: string, page_size?: integer, next_cursor?: string }
- `POST https://api.mcp.ai/api/cloudsmith/search/audit/log` — Search paginated audit events for a Cloudsmith namespace by event, actor, or timestamp text.
  - body: { owner: string, query?: string, page_size?: integer, next_cursor?: string }
- `POST https://api.mcp.ai/api/cloudsmith/search/packages` — Search packages in a Cloudsmith repository by name, filename, version, distribution, architecture, format, or status.
  - body: { repo: string, sort?: string, owner: string, query?: string, page_size?: integer, next_cursor?: string, include_connected_repositories?: boolean }
- `POST https://api.mcp.ai/api/cloudsmith/search/repositories` — Search and list repositories within a Cloudsmith namespace, returning identifiers and summary state without repository signing keys.
  - body: { sort?: string, owner: string, query?: string, page_size?: integer, next_cursor?: string }

## Example prompts
- "What can I do in Cloudsmith?"
- "Show me a summary of my Cloudsmith account"

## More
- Page: https://mcp.ai/cloudsmith
- Agent spec (llms.txt): https://mcp.ai/cloudsmith/llms.txt
- Postman collection: https://mcp.ai/cloudsmith/postman.json
