Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Move files off your computer into an E2E-encrypted vault, verified first. Decrypts locally.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
SHIELDFIVE_GRANT, SHIELDFIVE_MCP_ROOTS标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 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/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"shieldfive": {
"command": "npx",
"args": [
"-y",
"@shieldfive/mcp"
],
"env": {
"SHIELDFIVE_GRANT": "your-value",
"SHIELDFIVE_MCP_ROOTS": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .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_MCP_ROOTS env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 shieldfive 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 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
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Extract data from any website with thousands of scrapers, crawlers, and automations on Apify Store ⚡
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
A Model Context Protocol server that lets Claude, ChatGPT, Cursor or a local model work with two things:
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.
Requires Node 20 or newer.
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.
vault_connect, which opens ShieldFive in your browser.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.
http://127.0.0.1: /callback itself. A crafted link cannot send your connection anywhere but your own machine./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.In plain terms:
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.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.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:
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_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.
| Tool | Needs | What it does |
|---|---|---|
vault_connect | — | opens ShieldFive in the browser to authorize a connection, and stores it in the keychain |
vault_list_files | read | files and folders in scope, with decrypted names, paths, sizes, dates |
vault_search_files | read | by name, path, extension, size or date, run locally over decrypted names |
vault_storage_stats | read | totals, the biggest folders and files, a breakdown by type |
vault_find_duplicates | read (contents) | same-size files decrypted in memory and compared by SHA-256; budgeted, and says when a result is a lower bound |
vault_read_file | read (contents) | the only tool that returns contents: text files as fenced, untrusted content (up to 1 M characters); other types return details only |
vault_rename | organize | rename a file or folder |
vault_move | organize | move into another folder in scope |
vault_create_folder | organize | create a folder in scope |
vault_upload | write | encrypt 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_trash | organize | up to 50 items into the connection's folder in the Bin |
vault_move_in | write | free 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:
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.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.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
只显示了开头部分;其余内容请在仓库中阅读