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

ShieldFive

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

安装

概览

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

Move files off your computer into an E2E-encrypted vault, verified first. Decrypts locally.

PopNx MCP 的三大支柱

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

它能帮你做什么

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

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 其他
  • 你需要填写:SHIELDFIVE_GRANT

安装

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

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 需要你自己填写: SHIELDFIVE_GRANT, SHIELDFIVE_MCP_ROOTS

标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。

你需要

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

你用的是哪个应用?

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

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

{
  "mcpServers": {
    "shieldfive": {
      "command": "npx",
      "args": [
        "-y",
        "@shieldfive/mcp"
      ],
      "env": {
        "SHIELDFIVE_GRANT": "your-value",
        "SHIELDFIVE_MCP_ROOTS": "your-value"
      }
    }
  }
}

在终端中运行这条命令

claude mcp add shieldfive --env SHIELDFIVE_GRANT=your-value --env SHIELDFIVE_MCP_ROOTS=your-value -- npx -y @shieldfive/mcp

运行前请先填写空着的值。

在 Cursor 中打开

或者自己复制设置

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

{
  "mcpServers": {
    "shieldfive": {
      "command": "npx",
      "args": [
        "-y",
        "@shieldfive/mcp"
      ],
      "env": {
        "SHIELDFIVE_GRANT": "your-value",
        "SHIELDFIVE_MCP_ROOTS": "your-value"
      }
    }
  }
}

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

在 VS Code 中打开

或者自己复制设置

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

{
  "servers": {
    "shieldfive": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@shieldfive/mcp"
      ],
      "env": {
        "SHIELDFIVE_GRANT": "your-value",
        "SHIELDFIVE_MCP_ROOTS": "your-value"
      }
    }
  }
}

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

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

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

需要你填写的值

  • SHIELDFIVE_GRANT 机密 env
    Connection string from ShieldFive → Settings → AI assistants. Optional: `npx @shieldfive/mcp login` stores it in the OS keychain instead.
  • SHIELDFIVE_MCP_ROOTS env
    Local directories the local tools may use, separated by the platform path separator. Optional.

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

它能做什么

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

基础检查i

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

  • ✓ 通过

    作者与仓库一致

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

  • … 尚未检查

    仍在维护

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

  • … 尚未检查

    有许可证

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

  • – 不适用

    端点有响应

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

  • – 不适用

    使用 OAuth 登录

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

  • … 尚未检查

    工具描述中没有隐藏指令

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

与“其他”中的其他服务器比较i

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

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

常见问题

ShieldFive 安全吗?

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

它需要哪些密钥或代码?

你需要填写:SHIELDFIVE_GRANT

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

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

它还在维护吗?

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

哪些应用可以使用它?

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

有什么可以替代它?

同一分类中有:Spec Driven Development, Remote Desktop Commander, Apify MCP Server

替代选择

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

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

Spec Driven Development

作者:formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

在你的电脑上运行★ 440MIT14个月前更新
安装

Remote Desktop Commander

作者:desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

在云端运行★ 211昨天更新
安装

Apify MCP Server

作者:apify

Extract data from any website with thousands of scrapers, crawlers, and automations on Apify Store ⚡

在云端运行今天更新
安装

作者的 README

打开 README

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

@shieldfive/mcp

A Model Context Protocol server that lets Claude, ChatGPT, Cursor or a local model work with two things:

  • your ShieldFive vault, end-to-end encrypted: move files off your computer into it — each one encrypted here, uploaded, read back and matched byte for byte before its original is moved to a local trash folder, never deleted — and find duplicates, see what takes the space, rename, move and move to the Bin. It works on the folders you grant, decrypts on your machine, and every change can be undone;
  • folders on your own disk: the same tidying jobs, with no network access at all.

ShieldFive's servers never see a file name or a byte of content in the clear, and that holds with this server running too. Decryption happens inside this process, on your computer. What the assistant then does with what it reads is a separate question, answered under Security model.

Connect your vault in 60 seconds

Requires Node 20 or newer.

  1. Add the server to your assistant. For Claude Desktop, add this to claude_desktop_config.json (Cursor uses the same block in ~/.cursor/mcp.json):
   {

"mcpServers": { "shieldfive": { "command": "npx", "args": ["-y", "@shieldfive/mcp@0.7.1"] } } }

For Claude Code: claude mcp add shieldfive -- npx -y @shieldfive/mcp@0.7.1

The version is pinned on purpose: the server can read your connection, so pin the release you reviewed and change the number when you choose to upgrade, instead of running whatever was published last.

  1. Restart the assistant and ask it to *tidy up my ShieldFive vault*. It calls vault_connect, which opens ShieldFive in your browser.
  2. In that tab, choose the folders, *Read only* or *Read and organize*, and an expiry (1 hour to 90 days), then click Authorize.

That is the whole setup: the connection is delivered straight to the server running on your computer — over 127.0.0.1, never through ShieldFive — and stored in your system keychain. Nothing is copied by hand.

To connect before you start a conversation, run npx -y @shieldfive/mcp@0.7.1 login: same browser page, same result. login --paste takes a connection string you copied from Settings → AI assistants instead, for a machine with no browser.

npx @shieldfive/mcp@0.7.1 status shows which connection is configured and whether ShieldFive still accepts it. npx @shieldfive/mcp@0.7.1 logout removes it from the keychain and from the fallback file below. Revoking it in ShieldFive is what cuts off access everywhere.

Where no system keychain can be used (a Linux machine without a Secret Service, for example), the connection is saved instead to a file only your user account can read: ~/Library/Application Support/shieldfive-mcp/connection on macOS, %APPDATA%\shieldfive-mcp\connection on Windows, $XDG_CONFIG_HOME/shieldfive-mcp/connection (default ~/.config) on Linux, or $SHIELDFIVE_MCP_CONFIG_DIR/connection. The server says when it does this. The file is not encrypted, since any key for it would sit on the same disk; it is protected by file permissions (0600) like an SSH key. Without it, every restart would need a new connection, and ShieldFive caps how many can be live at once. A later successful keychain save deletes the file.

For CI, set SHIELDFIVE_GRANT to the connection string instead. Anything that can read the server's environment can then read the connection, so prefer the keychain wherever there is one. Setting SHIELDFIVE_GRANT=none keeps one client local-only on a machine whose keychain holds a connection for another.

How the browser hand-off is kept honest
  • The page never accepts a callback URL, only a port number, and builds http://127.0.0.1: /callback itself. A crafted link cannot send your connection anywhere but your own machine.
  • The listener accepts exactly one delivery: a POST to /callback, Host exactly the loopback address (so a rebound DNS name is refused), no Origin but ShieldFive's, and a 256-bit state compared in constant time. Then it closes.
  • The connection string travels in a form body, never in a URL, so it does not land in browser history.
  • The listener exists only while a connection is being authorized, and for at most 10 minutes.

Security model

In plain terms:

  • The connection string holds two things. A *token* the server checks on every request, and a *secret* that never leaves your machine. ShieldFive stores only a hash of the token and has never seen the secret.
  • The secret opens only the folders you chose. When you create a connection, your browser wraps those folders' keys under a key derived from the secret. It wraps nothing else: not your vault root key, not your password, not your post-quantum secret key. Subfolders open through the vault's normal folder-key chain. A folder you did not choose cannot be opened with anything this server holds.
  • ShieldFive enforces scope, expiry and revocation on every request. The checks in this process only produce clearer errors; the server is the boundary. Revoking a connection makes its next request fail. Nothing is cached that would outlive a revocation.
  • Decryption happens here, in memory. No plaintext, key or ciphertext is written to disk. The vault modules do not import the filesystem, and a test asserts that.
  • Nothing is deleted. vault_trash moves items into a folder in your Bin that belongs to the connection. There is no permanent-delete tool, and the API a connection can reach has no delete route. Every rename, move and trash appears in *Settings → AI assistants → Activity* with an Undo button.
  • Every change is previewed first. Mutating tools report a plan, and the confirmed call must carry that plan's token and is refused if the items changed in between.
  • You approve destructive changes yourself, where your client can ask. For the tools marked destructive (vault_trash, vault_move_in, move_local, trash_local), a confirmed call first shows you the approved plan through MCP elicitation, in your client's own prompt, and goes ahead only if you accept. Declining changes nothing. A client without elicitation keeps the preview-and-token flow above.
  • Listing is separate from reading contents. vault_list_files, vault_search_files and vault_storage_stats return names and metadata only. vault_read_file is the only tool that returns file contents, and vault_find_duplicates the only other one that decrypts them (it returns hashes). Start the server with --no-contents (or SHIELDFIVE_MCP_CONTENTS=off) and those two are not registered at all; a connection without the "read" permission is refused them too.

What this does not protect:

  • Your AI provider sees what the assistant reads. File names, and the contents of files the assistant opens, go to the assistant, and for a cloud assistant that means to its provider, like the rest of your conversation. The only way to avoid that is a local model.
  • Revoking cannot un-read. Anything the assistant has already read stays read. Nothing else survives it: file contents are streamed through ShieldFive on each request, so there is no download link to outlive a revocation.
  • A connection is built from what the server shows your browser when you create it. Every later extension is checked against your own keys, so a compromised server cannot widen a connection afterwards. At the moment of creation, though, a compromised server could mislabel which folder you picked.
  • A copied connection string is a live key to the folders it covers until it expires or you revoke it. Keep it in the keychain (or the 0600 fallback file the server writes when there is no keychain).
  • Files can contain instructions aimed at the assistant. This server marks every name and file content as data, fences file contents in a block the file cannot close, caps vault_trash at 50 items per call, requires a preview for every change, and keeps every change undoable. A model can still be talked into a reversible mistake inside the folders you granted.

The full design, including the threat model and the reasoning behind each decision, is in docs/mcp-grants-design.md.

Vault tools

vault_connect is always available. The rest are registered once a connection exists — connecting mid-conversation announces them with notifications/tools/list_changed. Everything below names things by id; paths are for people.

ToolNeedsWhat it does
vault_connect—opens ShieldFive in the browser to authorize a connection, and stores it in the keychain
vault_list_filesreadfiles and folders in scope, with decrypted names, paths, sizes, dates
vault_search_filesreadby name, path, extension, size or date, run locally over decrypted names
vault_storage_statsreadtotals, the biggest folders and files, a breakdown by type
vault_find_duplicatesread (contents)same-size files decrypted in memory and compared by SHA-256; budgeted, and says when a result is a lower bound
vault_read_fileread (contents)the only tool that returns contents: text files as fenced, untrusted content (up to 1 M characters); other types return details only
vault_renameorganizerename a file or folder
vault_moveorganizemove into another folder in scope
vault_create_folderorganizecreate a folder in scope
vault_uploadwriteencrypt a local file here and put it in the vault, then read it back and compare before you are told it is safe to remove the original
vault_trashorganizeup to 50 items into the connection's folder in the Bin
vault_move_inwritefree up space: up to 50 local files uploaded and verified one by one, each original moved to the local trash only after its copy reads back identical — one approval, nothing deleted

Limits a user may meet:

  • Post-quantum files uploaded from a phone or the CLI show as readable: false until you next open ShieldFive on the web, which adds the key the connection needs. Files uploaded in the web app are ready straight away.
  • The first listing of a large vault takes a while. Each name costs about 70 ms of Argon2id, spread over your CPU cores (about 20 seconds for 2,000 names on 8 cores). Names are cached in memory for the rest of the session.
  • Items at the very top of a whole-vault connection can be read and moved into a folder, but not renamed in place, and nothing can be moved to the top. Their names are sealed under your vault root key, which a connection never holds.
  • Uploads need a connection that may add files ("Read, organize and add files" when you authorize it) and an upload allowance, which you choose then. Each file is at most 512 MB. Uploads and moves read local files, so the server needs roots as well as a connection.
  • Moving files in frees no space by itself. vault_move_in puts each verified original in .shieldfive-mcp-trash, with a manifest naming its vault copy; the space comes back when you empty that directory.

Local files

Every path after the package name is a root. The local tools can read and write inside those directories and nowhere else, and make no network request.

npx @shieldfive/mcp@0.7.1 ~/Documents ~/Downloads

In claude_desktop_config.json:

{

"mcpServers": { "shield

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

问 PopNx