Skip to main content
Glama

should-i-render

npm version license: MIT measured index

should-i-render 是一个只读 MCP 服务器,用于从经过测量和精选的快照中挑选 React 组件。它以简洁的判定和测试架事实来回答组件适配问题,而不是返回源代码转储。

当前捆绑的快照包含已发布的 should-i-render 索引。它通过 stdio 运行,不需要 API 密钥、数据库或网络访问,并将每个文本响应限制在约 500 个 token 以内。

托管在 vibecodng.com 的免费测试版会读取实时索引,每个 API 密钥每个 UTC 日包含 100 次工具调用。在浏览器中创建密钥,然后将支持 HTTP 的 MCP 客户端连接到 https://vibecodng.com/mcp。当你需要私有、离线、版本化且无配额限制的快照时,请使用这个 npm 包。

本地使用

{
  "mcpServers": {
    "should-i-render": {
      "command": "node",
      "args": ["/path/to/should-i-render/server.js"]
    }
  }
}

需要 Node 20 或更高版本。运行 npm test 来验证捆绑的快照、工具元数据、结构化响应以及响应上限。

使用 npm 时无需检出代码:

{
  "mcpServers": {
    "should-i-render": {
      "command": "npx",
      "args": ["-y", "should-i-render@0.1.0"]
    }
  }
}

托管服务日后可能会为更新鲜的数据、更高的配额和团队工作流增加付费计划。已发布的离线包仍将根据以下许可证提供。

工具

  • find_component({task, pattern?, style?, palette?}) 根据组件描述、模式、风格和测量结果,对最多三个经过验证且可渲染的匹配项进行排序。失败警告不会出现在推荐中。传入调色板 slug 以附加其 CSS 变量。

  • palette_pick({mood?}) 返回一到三个精选的可访问调色板,包含十六进制角色和可复制的 CSS 变量块。

  • check_component({name}) 返回完整的判定、跳过条件和测量条带。

  • alternatives({name}) 对同模式候选进行排序。

  • install_plan({name}) 返回依赖项、裸测试架差距、提供者要求、设置说明、许可证、作者署名、测量的画廊页面、上游源代码,以及在源支持时提供精确的 shadcn 命令。

  • skip_list({pattern, style?}) 将明确的失败警告和测量结果最差的条目排在前面。

每个工具都包含标题、只读注解、输出模式,以及与受限文本响应一起的结构化内容。

调色板

该包捆绑了 24 个原创四色调色板。每个调色板定义 accentsurfacetextmuted;每个文本与表面组合都通过了 WCAG AA 对比度 4.5:1 或更高的验证。使用 palette_pick 并传入调色板 slug 或情绪,例如 darklightpastelneonretroearthwarmcoldmono

:root {
  --bw-accent: #E85D4A;
  --bw-surface: #FFF7F1;
  --bw-text: #34231F;
  --bw-muted: #775F57;
}

自动主题化适用于第一方组件;第三方条目需要手动映射。

测量条带的含义

RENDERS 是准备的测试架挂载结果。A11Y 是记录的 axe 违规总数。KB 是相对于测试架基线的边际 gzip 包体大小。BARE 是在没有准备的 shadcn 风格辅助函数的情况下的第二次构建和挂载过程。PROVIDER 表示测量到了缺少提供者的挂载错误。

风格轴

模式和风格回答不同的问题。模式是组件做什么,例如按钮、日历、轮播或文本显现。风格是其所属的视觉世界,例如 minimal-flat、brutalism、spatial、bento 或 dark-futuristic。当交互已固定但产品语言不固定时,同时按两者过滤非常有用。

风格是编辑性分类,而非包能力。两个具有相同模式和风格的条目在依赖关系、可访问性发现、包体成本、裸兼容性和提供者要求方面仍可能有很大差异。

数据

data/components.json 是已发布组件记录的某个时间点导出。它包含描述、测量结果、来源和作者署名、许可证元数据、模式和风格,以及相对预览路径。它不包含预览图片或视频字节。data/palettes.json 是随附的调色板目录。

设置 SHOULD_I_RENDER_DATA=/path/to/components.json 以测试具有相同结构的另一个快照。

限制

  • 测试架目前仅测量 React 组件。

  • 覆盖范围是精选的,而非穷举式的注册表爬取。

  • 快照是某个时间点的;上游组件 API 和依赖项在导出后可能会发生变化。

  • 测试架结果是受控测量,而非生产 QA。它们不能替代你应用中进行的浏览器、设计系统、可访问性、安全性或用户测试。

  • 演示是根据每个组件的源 API 编写的,并驱动截图。演示可以覆盖预期状态,而不一定覆盖每个 prop、交互、服务器行为或数据加载路径。

  • 干净的可访问性计数意味着记录的演示在此测试架中没有 axe 发现。它不是可访问性认证。

  • 判定和风格标签是编辑判断,基于记录的测量结果和源 API。

许可证

服务器代码采用 MIT 许可证。编译后的索引元数据采用 CC BY 4.0,并注明来源 mrkeyoor.com;各个组件源项目保留其自己的许可证和作者署名。

贡献

  • 发现错误的判定或过时的组件记录?打开一个 issue

  • 欢迎对 MCP 服务器和排序逻辑进行代码更改。在开启拉取请求之前,请将响应保持在限制范围内并运行 npm test

  • data/components.json 是从测量的 vibecodng 索引生成的,因此数据修正应首先作为 issue 提出,而不是直接编辑快照。

-
license - not tested
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mrkeyoor/should-i-render'

If you have feedback or need assistance with the MCP directory API, please join our Discord server