Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Recommends MCP servers, plugins and skills for a repo, from what is actually in it.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
链接指向作者自己的文件;我们不托管也不重新打包它。打开文件后,Claude Desktop 会进行安装。
在终端中运行这条命令
浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 Protemir 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.1)于16天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 MCPB。
同一分类中有:Spec Driven Development, Remote Desktop Commander, debuff
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ 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.
Let coding agents play, test and tune your 2D web game: live state, explained errors, replays, fuzz.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Which MCP servers, plugins and skills does your repo actually need? stackhint looks at the project and at what Claude Code and Codex already have set up, then tells you, pointing at the file that made it think so. It can also add a server for you, after showing the exact change.
It runs locally, has no dependencies and sends nothing anywhere.
Try it in any project (Node.js 20+, nothing to install):
npx -y github:Protemir/stackhint recommend
Or add it to Claude Code and ask "which MCP servers would help here?":
/plugin marketplace add Protemir/stackhint
/plugin install stackhint@stackhint
That is the real output on examples/dotnet-shop, a small ASP.NET Core API (npm run demo reproduces it). Every line in "Why now" points at a file; a README that only says "we might try Kubernetes one day" gets no Kubernetes suggestion.
What it reads: manifests (*.csproj, package.json, pyproject.toml, go.mod, Cargo.toml, Gradle, Composer, Gemfile), compose files, Kubernetes and Terraform files, CI, .env.example key names, README links and git history, plus your Claude Code and Codex configs. It knows 143 tools (MCP servers, plugins, skills, CLIs), checked by hand against the vendors' docs, including the retired ones, so stackhint check can tell you what to replace.
There are thousands of MCP servers, and a good share of the "top 10" lists still point at servers that were archived in 2025. The reference Postgres server, for example, has a known read-only bypass and no fixes. I wanted something that looks at my repo, knows what I already have configured in Claude Code and Codex, and tells me what is worth adding and what to replace, without sending my code anywhere and without touching my config behind my back.
How it compares to what exists:
claude-code-setup plugin has Claude itself look at the codebase and suggest automations. It is good, but it works only in Claude Code, costs tokens on every run, doesn't check what you already have, and doesn't install anything.stackhint needs Node.js 20 or newer. It has no runtime dependencies.
Run it without installing (downloads from GitHub):
npx -y github:Protemir/stackhint recommend
Or install the command globally:
npm install -g github:Protemir/stackhint
The plugin adds a stackhint skill, so Claude can answer "which MCP servers would help here?", and a quiet session-start hint (see Proactive mode).
/plugin marketplace add Protemir/stackhint
/plugin install stackhint@stackhint
From a shell: claude plugin marketplace add Protemir/stackhint and then claude plugin install stackhint@stackhint.
Codex reads the same repository as a plugin marketplace:
codex plugin marketplace add Protemir/stackhint
Then install stackhint from /plugins. Codex asks you to approve plugin hooks in /hooks before they run.
Download stackhint- .mcpb from the latest release and open it: Claude Desktop installs it as an extension. Pass the project folder as path when you ask for recommendations. The same server is in the official MCP Registry as io.github.Protemir/stackhint.
stackhint can also run as a read-only MCP server with five tools (recommend_tools, explain_tool, search_tools, tooling_status, plan_install). It can never install anything; plan_install only shows the plan and the command for you to run.
stackhint setup claude # or: stackhint setup codex
setup shows what it will add (an MCP server entry and the skill file) and asks first. To do it by hand:
claude mcp add --scope user stackhint -- npx -y github:Protemir/stackhint mcp
codex mcp add stackhint -- npx -y github:Protemir/stackhint mcp
| Command | What it does | |||
|---|---|---|---|---|
stackhint scan [path] | Shows what it detected and the evidence for each signal | |||
stackhint recommend [path] | Ranked suggestions. --task "..." for task-specific advice, `--host claude\ | codex, --all` | ||
stackhint explain | Why, what it can access, setup, the exact JSON/TOML it would add, and the vendor's own command | |||
stackhint install --host | Shows the plan and diff, asks, then applies. --dry-run, `--scope user\ | project\ | local, --access read\ | write, --param k=v` |
stackhint try --host | Starts a server for one session without changing any config | |||
stackhint status | What is configured for Claude Code and Codex | |||
stackhint check | Reviews it: archived servers, secrets written into config, write access where read-only exists, duplicates. --strict exits 1 on problems (useful in CI) | |||
stackhint registry search | Searches the local registry. --remote also queries the official MCP Registry (opt-in) | |||
stackhint dismiss | Never suggest again. --for 14d to snooze, --project for this repo only | |||
stackhint rollback [id] | Lists installs made by stackhint, or undoes one | |||
stackhint config ... | show, get , set | |||
stackhint doctor | Checks Node, config files, host CLIs and common problems | |||
stackhint mcp | Runs the read-only MCP server over stdio |
Every command takes --format text|md|json. Exit codes: 0 ok, 1 error, 2 usage error, 3 not approved, 4 blocked.
*.csproj, Directory.Packages.props, package.json, requirements*.txt (also requirements/ folders and UTF-16 files), pyproject.toml (Poetry, uv, PDM), Pipfile, go.mod (direct requirements only), Cargo.toml, pom.xml, build.gradle(.kts), Gradle version catalogs, composer.json, Gemfile, pubspec.yaml, Prisma schemas.postgres:17), Kubernetes manifests, Helm charts, Argo CD and Flux objects, Terraform providers, Pulumi, Bicep, CDK, and the configs of Wrangler, Vercel, Netlify, Fly.io, Render, Railway, Heroku, DigitalOcean, Firebase and Supabase..http files, Postman collections, protobuf, GraphQL, Playwright/Cypress/Jest/Vitest/pytest configs.appsettings*.json connection strings and .env.example key names, only to learn which database or service is used. Values are never stored or printed.git log). Issue keys like SHOP-123 suggest Jira; 8+ commits with the same shape ("add migration ...") suggest a skill..vscode/mcp.json, .cursor/mcp.json).A project that merely mentions a technology in prose does not get a recommendation for it. Signals carry a strength, and most entries need concrete evidence (requiresAny).
Each registry entry lists the signals that make it relevant, with a weight. The score is:
fit = relevance × (0.55 + 0.25 × value + 0.2 × immediacy) × compatibility × overlap
score = 100 × (fit − setup cost − risk), clamped to 0..100
gh counts partially);These numbers are editorial estimates, not measurements, and stackhint says so in its output. Confidence (high/medium/low) reflects how strong the evidence is and whether compatibility and metadata are verified. stackhint explain prints the full breakdown.
Claude Code: ~/.claude.json (user scope and per-project local scope), the project .mcp.json, approvals in .claude/settings*.json, enabled plugins and the MCP servers they bundle, skills and commands, and an admin-managed managed-mcp.json.
Codex: ~/.codex/config.toml (or $CODEX_HOME), a trusted project's .codex/config.toml, enabled plugins, and skills in ~/.agents/skills, .agents/skills and ~/.codex/skills.
It reports each tool as configured, disabled, not configured, incompatible or unknown (for example when a config file can't be parsed). "Configured" means it is in the config. stackhint does not claim a server is running unless you ask it to verify with the host's CLI (install --verify).
Installing changes your configuration, so stackhint follows the same steps every time:
--yes. --dry-run never asks and never writes.codex mcp get. For Claude Code, --verify runs claude mcp get.stackhint rollback restores the file byte-for-byte, or runs claude mcp remove. If you edited the file after the install, rollback refuses unless you pass --force.Where it writes:
| Host | Scope | How |
|---|---|---|
| Claude Code | project | merges into .mcp.json (usually committed; Claude asks each person to approve it) |
| Claude Code | local (default), user | runs claude mcp add, because ~/.claude.json is rewritten by Claude Code all the time |
| Codex | user (default) | appends one [mcp_servers. ] table to ~/.codex/config.toml, leaving the rest byte-for-byte |
| Codex | project | appends to .codex/config.toml (Codex reads it only in trusted projects) |
Rules it follows:
X-MCP-Readonly for GitHub, --access-mode=restricted for Postgres MCP Pro, --read-only f只显示了开头部分;其余内容请在仓库中阅读