# netrun-mcp

> Publish websites and Telegram bots to Netrun straight from Cursor, Claude Code, Codex and any other MCP client

Latest version **0.2.0** (published 2026-09-24) · MIT license · 0 weekly downloads

## Install

```sh
npm install netrun-mcp
pnpm add netrun-mcp
yarn add netrun-mcp
bun add netrun-mcp
```

Provides the command `netrun-mcp`.

## Health

**Score 60/100 (C)** — status: active.

Positive: esm support; no vulnerabilities; recently updated; high maintenance score.

Warnings: low downloads; no types; pre 1.0.

## Facts

| | |
|---|---|
| Version | 0.2.0 |
| Published | 2026-09-24 |
| First published | 2026-09-22 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | ESM |
| Node | >=18 |
| Dependencies | 4 |
| Unpacked size | 61 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 1 |
| Maintainers | netrun.io |
| Keywords | mcp, model-context-protocol, netrun, deploy, hosting, telegram-bot, cursor, claude-code |

## Links

- npm: https://www.npmjs.com/package/netrun-mcp
- Repository: https://github.com/fadeynotchenko/netrun-mcp
- Homepage: https://netrun.io/mcp
- Issues: https://github.com/fadeynotchenko/netrun-mcp/issues
- npm.io page: https://npm.io/package/netrun-mcp

## Dependencies (4)

- [zod](https://npm.io/package/zod.md) ^3.25.76
- [fflate](https://npm.io/package/fflate.md) ^0.8.2
- [ignore](https://npm.io/package/ignore.md) ^7.0.5
- [@modelcontextprotocol/sdk](https://npm.io/package/@modelcontextprotocol/sdk.md) ^1.30.0

## Recent versions

- 0.2.0 (latest) — 2026-09-24
- 0.1.0 — 2026-09-22

## README

# netrun-mcp

<!-- Файл собирается из web/src/features/mcp/catalog.ts командой `npm run sync:mcp`. Правки руками затрутся. -->

Publish websites and Telegram bots to Netrun — upload a folder from your editor, get a URL.

Connect Netrun to your AI editor and just ask: “publish this bot”. The agent uploads your code folder and sends back the link. MCP is the common way to connect external services to AI editors. With Netrun connected, you tell the agent in chat that you want the project online: it uploads the code folder, asks for a token if the code needs one, waits for the build and gives you the link. Works in Cursor, Claude Code, Codex, Claude Desktop, VS Code and Windsurf.

> Publish this bot to Netrun
>
> I fixed the greeting — update the project
>
> Why is the bot silent? Check the logs
>
> Change the bot token and restart

## Setup (one minute)

1. Sign in at [netrun.io](https://netrun.io) → **MCP** (https://netrun.io/mcp) → create an access key.
2. Connect your editor. The MCP page gives you a ready button or command with the key already inside; the generic form is:

```json
{
  "mcpServers": {
    "netrun": {
      "command": "npx",
      "args": ["-y", "netrun-mcp@latest"],
      "env": {
        "NETRUN_API_KEY": "nru_…"
      }
    }
  }
}
```

- **Cursor** — click *Add to Cursor* on the MCP page, or put the JSON above into `~/.cursor/mcp.json`.
- **Claude Code** — `claude mcp add netrun -s user -e NETRUN_API_KEY=nru_… -- npx -y netrun-mcp@latest`
- **Codex** — `codex mcp add netrun --env NETRUN_API_KEY=nru_… -- npx -y netrun-mcp@latest`
- **Claude Desktop, VS Code, Windsurf** — the JSON above in the MCP servers config.

Node.js has to be installed — AI editors usually ship with it.

## What the agent can do

| Tool | What it does |
| --- | --- |
| `netrun_publish` | Uploads a project folder and puts it online — a new project or a new version of an existing one. Detects the stack (Python, Node, Go, Rust, PHP, static HTML, Docker, docker-compose), asks for missing secrets, waits for the build and returns the URL or the failure reason. |
| `netrun_status` | Is the project running, its URL, what blocks it, which secrets are already set and why the last publish failed. |
| `netrun_logs` | Last lines of the application output — the first place to look when a bot goes silent. |
| `netrun_set_secrets` | Saves tokens and API keys as environment variables (stored encrypted) and re-publishes so the app picks them up. |
| `netrun_domains` | Points your own domain at the site and checks whether the registrar settings have taken effect. Until they have, it shows which records to add. |
| `netrun_control` | Start, stop or restart a project. |
| `netrun_list_projects` | All projects of the account with URLs and state. |
| `netrun_whoami` | The plan, how many projects are available and how much free running time bots have left. |

## What it deliberately cannot do

- The agent cannot pay, renew a plan or buy places — you do that in the dashboard.
- It cannot delete projects or files from persistent storage either — anything irreversible stays with you.
- If the code needs a token or a password, the agent asks you before publishing — it never makes values up.
- The access key lives only in your editor config; you can revoke it in the dashboard at any time.

## How it works

This package is a thin courier: it zips the folder (honouring `.gitignore`), sends it to the Netrun API with your key, and asks for status and logs. Building, running, HTTPS and addresses all happen on Netrun.

Environment variables: `NETRUN_API_KEY` (required), `NETRUN_API_URL` (default `https://api.netrun.io/v1`), `NETRUN_APP_URL` (default `https://netrun.io`).

- Registry: `io.github.fadeynotchenko/netrun`
- Source: https://github.com/fadeynotchenko/netrun-mcp

MIT

---
_Source: https://npm.io/package/netrun-mcp · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
