Nippy
Publish websites from Claude, the terminal, or CI — drop a folder, get a link that doesn't expire. Wraps the nippy.host publish pipeline: create sites, update in place, read files, passwords, SEO settings, and visitor analytics.
README
@nippyhost/cli
Publish websites to nippy.host from the terminal, CI, or Claude. Drop a folder, get a link — photos become a gallery, files become a download page, sites just work. Links don't expire.
npx @nippyhost/cli login # one-time: approve in your browser, done
npx @nippyhost/cli deploy ./dist --site demo # → https://demo.nippy.site
The bin is called nippy, so a global install gives you the short form:
npm i -g @nippyhost/cli
nippy deploy ./photos --site henderson-wedding
Commands
| Command | What it does |
|---|---|
nippy login |
Opens your browser to approve the CLI on nippy.host (OAuth, no copy-paste) and stores the resulting scoped token in ~/.config/nippy/ (chmod 600). --paste for headless/SSH machines |
nippy deploy [path] --site <name> |
Publish a folder, single file, or zip. Existing site → updated in place, same URL; missing → created. --new forces a fresh site, --json for scripts |
nippy sites / nippy sites info <name> |
List sites / show one site's files |
nippy open <name> |
Open https://<name>.nippy.site |
nippy whoami |
Which credential is active, and does it work |
nippy mcp install [--client …] |
Add the MCP server to Claude Desktop, Claude Code, or Cursor |
nippy mcp serve |
Run the MCP server on stdio (assistants call this) |
Use from Claude (MCP)
On claude.ai (or any client that takes a remote MCP server): no install.
Add a custom connector with the URL https://api.nippy.host/mcp — approval
is the same OAuth consent screen as nippy login (Streamable HTTP,
OAuth 2.1 + PKCE, dynamic client registration). The remote server has the
same tools plus start_upload / start_revision / finalize_upload for
files of any type and size.
Claude Desktop, Claude Code, or Cursor (local, stdio):
npx nippy-mcp # Claude Desktop
npx nippy-mcp --client claude-code # Claude Code
npx nippy-mcp --client cursor # Cursor
Then just ask: "publish this page on Nippy". Tools include publish_site,
update_site (same URL, surgical file changes), list_sites,
read_site_file, check_site_name, plus paid-plan tools for passwords,
SEO meta, search-indexing, and visitor analytics. Small binaries (images,
PDFs, fonts) go inline with encoding: "base64" — up to 4 MB per file,
12 MB per call; use nippy deploy for anything bigger.
Use in CI
# any CI — the token comes from a secret
- run: NIPPY_TOKEN=${{ secrets.NIPPY_TOKEN }} npx @nippyhost/cli deploy ./dist --site docs --json
NIPPY_TOKEN always overrides the stored login.
Tokens & security
nippy loginuses the same OAuth consent screen as Nippy's AI connectors; the login shows up under Connected apps in Settings → API & MCP, where you can disconnect it any time. For CI, create a token there instead — free account works (1 live site, 25 MB, no card).- Tokens are scoped (deploy/read/manage/analytics) and revocable. They can never delete sites, touch billing, or manage your account — those need the dashboard.
- Plan limits are enforced server-side and reported honestly: hitting one tells you exactly what the limit is.
Notes
- A folder without
index.htmlbecomes a gallery (all images) or a tidy download page (mixed files) automatically. - Zips are unpacked locally before upload.
- Site names are subdomains of
nippy.site: lowercase letters, digits, hyphens. If a name's taken you get the next free suffix back.
MIT · nippy.host · help
About this repository
This is the source mirror for @nippyhost/cli
and nippy-mcp. Development happens
in the Nippy monorepo (where the API client is generated and the test suites
run); the source here is published for reading, issues, and releases.
cli/— thenippycommand + MCP server (@nippyhost/cli)sdk/— the publish SDK: init → presigned upload → finalize choreographyupload-rules/— client-side validation rules shared with the platform
Bugs and feature requests → Issues.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.