原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Coolftp

作者:anivdel版本 0.1.4i★ –i在你的电脑上运行
注册名称io.github.anivdel/coolftp

安装

概览

作者提供的说明(英文原文)

Deploy a site to its SFTP/FTP host from a coding agent. Changed files only, undo, live checks.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 开发者工具

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 注册中心没有列出需要填写的密钥。

你需要

  • npm已安装 Node.js(用于 npx 命令)

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json

{
  "mcpServers": {
    "coolftp": {
      "command": "npx",
      "args": [
        "-y",
        "coolftp",
        "mcp"
      ]
    }
  }
}

在终端中运行这条命令

claude mcp add coolftp -- npx -y coolftp mcp

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "coolftp": {
      "command": "npx",
      "args": [
        "-y",
        "coolftp",
        "mcp"
      ]
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "coolftp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "coolftp",
        "mcp"
      ]
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。

你的选择通过 Cookie 保存在这台设备上,无需账户。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 anivdel 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

与“开发者工具”中的其他服务器比较i

  • 星标数多于此分类中其他 1395 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 1395 个服务器的 65% 更新
  • 基础检查结果等于或优于此分类中其他 1395 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Coolftp 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(0.1.4)于25天前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。

有什么可以替代它?

同一分类中有:GitHub, Desktop Commander, Cloudflare MCP

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

GitHub

作者:github

Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

电脑或云端★ 34,245MIT4天前更新
安装

Desktop Commander

作者:wonderwhy-er

MCP server for terminal commands, file operations, and process management

在你的电脑上运行★ 10,225MIT16天前更新
安装

Cloudflare MCP

作者:cloudflare

Cloudflare MCP servers

在云端运行★ 4,446Apache-2.014个月前更新
安装

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

coolFTP

Let Claude deploy your site to your SFTP or FTP host, with undo and a check that it is actually live. One line in Claude Code:

/plugin install coolftp --marketplace anivdel/coolFTP

Then say "set up coolFTP for this project" and "deploy this". Only files whose content changed go up, the git commit is recorded next to the deploy, the site is fetched afterward to prove it answers, and "undo that" puts the previous version back, no git needed. Works with any host that speaks SFTP or FTP: Hostinger, HostGator, Bluehost, GoDaddy, any cPanel box, your own VPS. Free for 1 site and MIT; Pro ($49 once) unlocks unlimited sites. Website: coolftp.com.

The plugin, the coolftp CLI and the MCP server run on macOS, Linux and Windows with Node 18 or newer, and Cursor, Codex or any agent with a shell can drive them too. The Windows desktop app is an optional companion: with it open, you watch every agent call live and click to approve deletes, undos and rollbacks.

With the desktop app open, agents ask before they delete anything:

Why

Every FTP client assumes a human is clicking. coolFTP assumes a human is watching and an agent is doing.

  • Hash-based deploys. A manifest on the server records the SHA-256 of every deployed file. Timestamps lie; hashes do not.
  • Undo, no git needed. Every deploy moves the files it overwrites or deletes into a backup folder on the server first. coolftp undo puts them back, even from a dirty tree.
  • Deploy history with git. Each deploy stores the commit, branch, dirty flag, message, byte count, which agent ran it, and whether the site verified live.
  • One-command rollback. coolftp rollback restores the previous live commit through a temporary git worktree.
  • Verification. Give a site its public URL and every deploy fetches the changed pages, compares static files byte for byte with what you uploaded, and exits non-zero when the site does not answer. coolftp verify does the same on demand.
  • Live agent feed and approval dialog, in the desktop app. Deletes, --delete deploys, rollbacks and undos wait for your click while the app is open. Deploys show as a progress card, and a Windows notification tells you how they ended.
  • Safety by default. Pinned SSH host keys, passwords encrypted with your Windows account, a first-deploy guard that refuses to delete files it never uploaded, changed files swapped into place rather than overwritten, sizes confirmed by the server, resumable deploys.
packages/core   shared TypeScript library: transports, sites, hash manifest, sync, deploy

packages/cli coolftp command line + coolftp mcp MCP server for agents packages/app Electron desktop app (two-pane browser, transfer queue, live agent feed) site/ landing page for coolftp.com scripts/ build + end-to-end test

Install

The CLI and the MCP server run anywhere Node 18 or newer does: Windows, macOS, Linux, a headless box, CI.

npm i -g coolftp

coolftp --version

No install at all: npx coolftp ... runs the same thing.

The desktop app is Windows for now: the installer, a portable .exe and the Claude Desktop extension (.mcpb) are on the download page with their SHA-256s.

Build from source
npm install

npm run build npm run app # opens the desktop app node packages/cli/dist/coolftp.js --help

To get a global coolftp command from this checkout instead of npm: cd packages/cli && npm link.

Add a server

# SFTP with your existing ~/.ssh key or the ssh-agent

coolftp site add coolftp.com --host coolftp.com --user deploy --root /var/www/html

FTPS with a password (shared hosts)

coolftp site add oldhost --host ftp.oldhost.net --user me --protocol ftps --password '...' --root /public_html

coolftp site test coolftp.com

Or use the Sites button in the app. Sites live in %USERPROFILE%\.coolftp\sites.json on Windows and ~/.config/coolftp/sites.json elsewhere. (Up to 0.1.4 the Windows folder was %APPDATA%\coolftp; the first run of a newer version copies it over. COOLFTP_HOME overrides the folder.) On Windows, passwords in that file are encrypted with DPAPI under your account; on macOS and Linux they are stored as-is until a keychain backend lands, so prefer keys for SFTP there.

Link a project and deploy

cd my-site

coolftp init coolftp.com --local-dir dist --build "npm run build" coolftp diff # preview coolftp deploy -m "first deploy" coolftp deploy --delete # also remove remote files deleted locally coolftp deploy --commit -m "msg" # git add -A, git commit, then deploy coolftp undo # put the previous versions back coolftp verify # re-run the live checks coolftp history

Exit codes: 0 deployed (and verified, when the site has a URL), 1 something failed before or during the upload, 3 the files landed but the live checks did not pass. -q drops progress and per-file output and keeps the result line, warnings, errors and the checks. Deploys of more than 20 files print one progress line every few seconds instead of a line per file, and long plans are summarised by folder.

coolftp init writes .coolftp.json:

{ "site": "coolftp.com", "localDir": "dist", "build": "npm run build", "ignore": ["*.map"] }

Commit it. Add a .coolftpignore (gitignore syntax) for anything that must never go up. .git, node_modules, .env*, *.log and the coolFTP files are always excluded.

When a site's FTP root is not the web root (shared hosts often log you in one level above public_html), point the project at the right folder and tell coolFTP where it is served:

coolftp init myhost --remote-root /public_html --url https://example.com

Every command then works relative to that folder: coolftp push js/app.js js/app.js, coolftp ls, coolftp stat, coolftp cat, coolftp rm all resolve against /public_html, the same place deploy writes to. Paths starting with / are still absolute on the server. The url makes the changed-file URLs and the post-deploy check point at https://example.com/js/app.js rather than at the FTP path.

A push confirms the uploaded size with the server, reports any folder it had to create (with a warning when a single file opens a new top-level folder, which is what a stale public_html/ prefix looks like), and records a file pushed inside the project's remote directory in the deploy manifest, so the next deploy does not send it again.

Git Bash rewrites arguments that start with / into Windows paths before any program sees them. coolFTP undoes that when it recognises the Git install prefix and refuses anything else that looks like a drive path, so coolftp ls /public_html works from Git Bash too. If you hit the refusal, use a relative path or set MSYS_NO_PATHCONV=1.

Let Claude Code drive it

The coolFTP plugin is the one-step way: it starts the MCP server, teaches Claude how to deploy safely, adds /coolftp:setup, /coolftp:deploy, /coolftp:undo and /coolftp:live, and shows each deploy in a live panel beside the chat. In Claude Code:

/plugin install coolftp --marketplace anivdel/coolFTP

Answer y to add the marketplace, then pick a scope. In the Claude desktop app: + next to the prompt box, Plugins, Add marketplace anivdel/coolFTP, then add coolftp. It needs Node 18 or newer and nothing else; the desktop app is optional. Then say "set up coolFTP for this project". Details in plugins/coolftp.

The MCP server by hand

For other MCP clients, or to wire Claude Code yourself without the plugin. With the CLI installed from npm, on macOS and Linux:

claude mcp add --scope user coolftp -- coolftp mcp

On Windows, npm installs coolftp as a .cmd shim, so go through cmd:

claude mcp add --scope user coolftp -- cmd /c coolftp mcp

Without a global install: claude mcp add --scope user coolftp -- npx -y coolftp mcp (again behind cmd /c on Windows). --scope user registers it for every project on the machine; drop it to register for the current project only.

Cursor, Windsurf and other MCP clients take the same server in their mcp.json:

{ "mcpServers": { "coolftp": { "command": "coolftp", "args": ["mcp"] } } }

From a source checkout instead of npm, point at the built file:

claude mcp add coolftp -- node "C:\path\to\cool FTP\packages\cli\dist\coolftp.js" mcp

Tools exposed: coolftp_sites, coolftp_license, coolftp_status, coolftp_init, coolftp_diff, coolftp_deploy, coolftp_undo, coolftp_verify, coolftp_rollback, coolftp_history, coolftp_ls, coolftp_stat, coolftp_read, coolftp_write, coolftp_upload, coolftp_download, coolftp_mkdir, coolftp_delete, coolftp_rename. Results are summarised for an agent: counts and a folder breakdown instead of thousands of paths, a live verdict on every deploy, and the transfer log collapsed after 20 files. The server checks on every call whether the desktop app is running, so the app can be opened and closed during a session.

Use it from the Claude Desktop app

The same MCP server ships as a Claude Desktop extension. npm run mcpb packs it into release/coolFTP- .mcpb (the download page carries the built one); open that file in Claude Desktop and hit Install. Claude gets the coolftp_* tools, and every call still routes through the desktop app while it is open, so deploys show up there and deletes, undos and rollbacks wait for your click. A chat has no working directory, so set Default project folder in the extension's settings or name the folder in the chat; a project's own .coolftp.json is found either way. The bundle is unsigned for now, which the install dialog points out.

server.json describes the server for the MCP Registry twice over: as the coolftp npm package (run with npx coolftp mcp) and as the .mcpb bundle. npm run mcpb keeps the versions and the bundle hash current. The release steps, npm publish included, are in docs/PUBLISHING.md.

Safety rails for agent-driven deploys

  • Approval dialog. While the desktop app is open, an agent call that deletes a path, deploys with --delete, rolls back, or undoes a deploy pops a dialog in the app and waits for your click. No answer within two minutes is a deny. There is a checkbox to auto-approve for the rest of the session.
  • First-deploy delete guard. Before a manifest exists on the server, --delete is refused if the target folder contains files coolFTP never uploaded. Pass --delete-untracked to override.
  • Undo. Before a deploy overwrites or deletes a file, the live copy is renamed into .coolftp/backup/ / on the server, so nothing extra is transferred. coolftp undo restores those versions, removes the files that deploy added, and is itself undoable; --dry-run shows the work first, --to reverts an older deploy when nothing later touched its files. The last five deploys keep their backups (coolftp init --keep-backups , 0 to turn it off). The Deploys tab has an Undo button.
  • Rollback. coolftp rollback restores the previous commit that was live for the project, using a temporary git worktree so your working tree is untouched. --to targets any point in history. The Deploys tab in the app has the same buttons.
  • Verification. Give a site a public --url (or a project one with coolftp init --url) and every deploy prints the URLs of changed files, fetches the homepage and up to four pages and reports the status codes, and compares up to four static files byte for byte with the local copy. A stat

只显示了开头部分;其余内容请在仓库中阅读

问 PopNx