GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者提供的说明(英文原文)
9 MCP servers for React/TypeScript — dep auditing, a11y, test gen, and TypeScript enforcement.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"react-toolkit": {
"command": "npx",
"args": [
"-y",
"mcp-react-toolkit"
]
}
}
}在终端中运行这条命令
claude mcp add react-toolkit -- npx -y mcp-react-toolkit粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"react-toolkit": {
"command": "npx",
"args": [
"-y",
"mcp-react-toolkit"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"react-toolkit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-react-toolkit"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 Nishant-Chaudhary5338 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.0.1)于6个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:GitHub, Desktop Commander, Cloudflare MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
MCP servers for React + TypeScript development automation. Works with Claude Desktop, Cline, Cursor — and as plain CLI scripts — one protocol, zero duplication.
59 tools across 9 categories — component scaffolding, code quality, a full CRUD-feature factory, CRA→Vite migration, and more. Every tool ships as its own MCP server, built and tested independently.
Here's the thing nobody tells you when you start building agentic workflows: the loop itself is what's expensive, not the model. An agent working without any composed tools does everything the slow way — read a file, think, write a file, read it back to check its own work, repeat — and every single one of those turns re-sends the whole conversation so far as input tokens. By the time you're 20 steps into a real multi-file task, that resent context alone can be running 50K+ tokens per call. It adds up fast, and it's not really about which model you're using.
I didn't just take that on faith — a few sources back it up with real numbers. LeanOps measured agent loops running about 3.2× the tokens of a single direct call at 5 steps, ~30× at 50 steps, and past 100× once you're deep into a typical build-and-debug session — because re-sent context is roughly 62% of the bill. Vantage found similar: real agentic sessions run an input-to-output ratio around 25:1 (a direct call is closer to 1:1), with a 50-turn session routinely hitting a million input tokens, and non-agentic usage on comparable work costing something like 200× less per interaction on the same team. And a recent arXiv paper on agentic tokenomics puts agentic tasks at roughly 1000× the tokens of single-turn work, with up to 30× variance run to run on the exact same task — so it's not just expensive, it's unpredictable.
That's the problem this toolkit's composed tools are built to get rid of. workflow-runner's schema_to_feature and cra-to-vite don't add one more tool call into an agent's existing loop — they replace what would otherwise be 7 or 8 separate read/write/verify turns with a single in-process call that runs the whole generator or migration pipeline and hands back the finished result. That's the "50-turn loop collapses into 1 call" shape the research above says saves 10–100×, which is a very different thing from just bolting one extra tool onto an unchanged loop (that only gets you the 20–40% range).
To keep myself honest, I also ran a real, measured benchmark rather than just trusting the theory — ax-benchmark, 6 tasks, claude -p running headless, three arms (agent alone, agent with one MCP tool call added into its loop, and the tool called directly with no agent at all). This is a conservative baseline on purpose, since it only tests adding a single tool call into an otherwise unchanged loop, not the deeper pipeline collapse described above:
| Agent alone | Agent + one MCP tool | Tool called directly | |
|---|---|---|---|
| Analysis tasks (review, a11y, legacy-code) | baseline | ~41% lower cost | ~100% free, ~15× faster (when in scope) |
| All 6 tasks, blended | baseline | ~19% lower cost | — |
| New code (component, tests) | baseline | roughly cost-neutral | not applicable to novel work |
Two things worth being upfront about: cost is the fair metric here, not wall-time — the agent-alone arm ran headless with no shell access and over-explored on open-ended tasks, which inflated its time without touching its actual cost. And on small, novel, single-file work, the overhead of the tool's structured output can offset what it saves — the real win shows up on repetitive, mechanical, multi-file work, which also happens to be exactly where the multi-turn-loop tax above hits hardest.
Published on npm as mcp-react-toolkit. No clone or build required:
npx mcp-react-toolkit --list # list all 59 tools
npx mcp-react-toolkit legacy-analyzer # run one as an MCP server (stdio)
Add it to Claude Desktop / Cursor / Cline:
// claude_desktop_config.json
{ "mcpServers": { "legacy-analyzer": { "command": "npx", "args": ["-y", "mcp-react-toolkit", "legacy-analyzer"] } } }
Swap in any tool name from npx mcp-react-toolkit --list. Restart your client and the tool appears.
Most MCP tools return raw JSON. These return that JSON plus an interactive HTML dashboard — health score, sortable issue triage, light/dark toggle, and one-click fix actions that call other tools in the toolkit. One self-contained artifact, no server, no external requests:
| Where you run it | What you get |
|---|---|
| Claude Desktop (MCP Apps) | Renders inline in the conversation (sandboxed iframe) |
| Claude Code · Cursor · CLI | JSON plus a clickable file:// link to the same dashboard |
| Any browser | The same HTML, standalone |
Analysis tools (legacy-analyzer, component-reviewer, dep-auditor, etc.) get an audit view — grade, category cards, filterable issue table. Generators (component-factory, code-modernizer, etc.) get a result view — files created/changed, diffs, follow-ups. Powered by the internal @mcp-showcase/ui-kit package: dependency-free, ~30 KB per report.
| Tool | What it does |
|---|---|
component-factory | Scaffold React components from 41 shadcn/ui templates — with tests + Storybook |
component-reviewer | Audit TypeScript errors, a11y issues, test coverage — graded A+ to F |
component-fixer | Auto-fix broken imports, missing deps, inline style refactors |
component-improver | Extend a component with variants, comprehensive stories, and edge-case tests |
storybook-generator | Auto-generate Storybook stories — Default, variants, sizes, callbacks, play functions |
| Tool | What it does |
|---|---|
typescript-enforcer | Scan for any types, unsafe casts, missing modifiers — 7 rules, scored 0–10 |
accessibility-checker | WCAG 2.1 audit — alt text, label associations, ARIA roles, keyboard navigation |
a11y-autofixer | Apply safe a11y fixes (img alt, blank rel, htmlFor, tabIndex) |
quality-pipeline | 5-stage audit (tests · types · perf · a11y · design tokens), graded A–F |
review-gate | Static A–F quality gate for generated/changed code |
enforce-design-tokens | Flag hardcoded colors/spacing/radii/shadows, suggest tokens, grade A–F |
render-analyzer | Detect unnecessary re-renders, missing memo, inline objects/functions |
performance-audit | Memory leaks, heavy imports, unoptimized images, deep nesting |
bundle-budget-guard | Gate gzipped asset sizes against per-pattern budgets — fail CI on regressions |
code-modernizer | AST-based JS/JSX → TypeScript conversion, PropTypes → interfaces |
react-compiler-migrator | Flag redundant useMemo/useCallback/memo for the React 19 Compiler |
codemod-runner | Generic regex codemod engine + named built-ins; dry-run by default |
refactor-executor | Execute refactor plans safely — move/rename/split, update imports, rollback |
redux-state-analyzer | Audit Redux for anti-patterns (selectors, mutations, RTK Query migration hints) |
api-contract-differ | Diff two API snapshots → breaking vs additive changes — CI gate against breaks |
i18n-extractor | Scan JSX for hardcoded strings → i18n keys + message catalog |
generate-tests | Analyze a TS/React source file and generate a Vitest test suite |
test-gap-analyzer | Find unimplemented functions, uncovered branches, missing edge cases |
test-data-factory | FieldSchema → typed fixture factory for tests/stories |
fix-failing-tests | Run the suite, classify failures by root cause, generate targeted fixes |
legacy-analyzer | 22-tool health audit for any React/Next.js/Remix app — scores 0–100, migration hints |
| Tool | What it does |
|---|---|
dep-auditor | Unused deps, duplicate versions, circular imports, bundle impact analysis |
monorepo-manager | Workspace listing, dependency graph, health check, shared dep finder |
lighthouse-runner | Static HTML audit — meta tags, a11y, OG/Twitter cards, canonical, JSON-LD |
json-viewer | Interactive HTML JSON viewer — collapsible, searchable, dark/light |
One JSON API sample (or OpenAPI schema) fans out into a full, typed CRUD feature. Every generator keys off the shared FieldSchema contract, so the pieces compose.
| Tool | What it does |
|---|---|
infer-fields | JSON sample / OpenAPI → typed FieldSchema (types, FK relations, table/form defaults) |
zod-schema-generator | FieldSchema → Zod schema + inferred TS type |
api-client-generator | FieldSchema → RTK Query slice or TanStack Query hooks, with cache tags |
form-generator | FieldSchema → React Hook Form + Zod form (create / edit) |
table-generator | FieldSchema → TanStack Table (sort / filter / paginate) |
detail-generator | FieldSchema → typed detail view + delete action |
crud-composer | Wire the pieces into routes — React Router 7 or Next App Router |
form-wizard-generator | FieldSchema → multi-step RHF+Zod wizard with per-step validation |
msw-mock-generator | FieldSchema → MSW handlers + seed data, so the feature runs against a mock API |
workflow-runner | Runs the whole chain end-to-end, gated by review-gate — files + journal + A–F grade |
e2e-generator | FieldSchema → Playwright CRUD flow spec (create→edit→delete + a11y) |
playwright-scaffolder | Scaffold the Playwright harness — config, fixtures, base POM, auth setup |
visual-regression-setup | Playwright toHaveScreenshot specs for routes/stories — catch CSS drift |
Migrate a Create React App project to Vite: analyze → plan → scaffold → migrate → verify.
| Tool | What it does |
|---|---|
cra-to-vite | Orchestrator — runs the six tools below in sequence, one call, graded report |
craconfig-analyzer | Deep CRA config inspection (react-scripts, env, proxy, jest, browserslist, SVG) |
dependency-remapper | CRA deps → Vite plan (remove/add with versions + unmapped) |
env-var-migrator | REACT_APP_* → import.meta.env.VITE_*, in source and .env files |
jest-to-vitest-migrator | jest.* → vi.*, adds the right imports, flags manual-review cases |
vite-project-scaffolder | Generates vite.config.ts, main.tsx, strict tsconfig, a Vitest block |
webpack-config-translator | Best-effort webpack/CRACO → Vite translation + manual-review list |
| Tool | What it does |
|---|---|
barrel-generator | Generate an index.ts barrel re-exporting a folder — no drifting export lists |
type-from-json | JSON sample → plain TS interfaces (nested objects become their own interfaces) |
zustand-store-generator | State shape → typed Zustand store (setters, reset, persist/devtools) |
svg-to-component | Raw SVG → typed React component (SVGProps, currentColor) — SVGR-grade |
env-config-generator | Zod-validated typed env module (Vite/Next) — fail fast on missing/bad vars |
states-scaffolder | Loading/empty/error state components + a switch wrapper for a data view |
|
只显示了开头部分;其余内容请在仓库中阅读