Open Components

com.uxfront由 uxfront.com 发布v1.0.0更新于 Oct 24, 2026

Guidelines for UI components with a perfect UX, DX and AX, whether humans or AI agents write them.

已验证Streamable HTTP可网页运行知识与记忆开发者工具

概览

AI 生成的概览

一个远程 MCP 服务器,为助手提供 Open Components UI 标准:组件契约、检查清单规则、文档和参考实现。

可以做什么
列出已覆盖的组件、基础规范和路线图条目,并按主题或 ID 搜索整个标准中的页面与规则。以 YAML 读取组件或基础规范的契约:API、DOM 契约、令牌以及每条带 ID、级别和范围的检查清单规则。以 markdown 读取文档页面,可整页或指定章节,并按框架筛选示例。按组件、ID、范围、层级、级别或检查方式筛选检查清单规则。获取已发布组件的参考实现及其测试、辅助函数和主题令牌。
适用场景
在构建或审查应遵循 Open Components 标准的 UI 组件时使用,或需要某条规则的理由、可引用的规则 ID,以及 Button 等组件的可用参考实现时使用。
运行要求
通过 streamable HTTP 连接 mcp.opencomponents.dev 远程端点;README 称其免费且无需登录。未声明任何软件包、环境变量或请求头。
安装前请注意
仅对已发布的文档和代码进行只读访问;未声明凭据、付费或写入操作。返回内容为第三方指导,应用到代码库前请自行审阅。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Open Components,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/com.uxfront%2Fopen-components/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "open-components": {
      "type": "http",
      "url": "https://mcp.opencomponents.dev/mcp"
    }
  }
}

README

[Open Components]

Open Components

Open Components is the standard for perfect UI components: guidelines for building UI components with a perfect user experience, developer experience and agentic experience, whether humans or AI agents write them.

Open Components is part of UXFront, written and maintained by @alexgrozav.


[Open Components - The standard for perfect UI components]


Homepage · Documentation · Changelog · llms.txt · Issue Tracker


[Website] [llms.txt] [Last commit]



Table of contents

The standard

The standard has three layers, one for each audience a component serves. A component meets the standard when it meets all three.

  • User experience (UX): components behave the way people expect them to, with any input, on any device and for every ability. Accessible, predictable, every state, adaptive.
  • Developer experience (DX): one clear API, learned once and used everywhere. Knowing one component means knowing them all. Consistent, type-safe, composable, controllable.
  • Agentic experience (AX): components that AI agents can read, reason about and build with, so their output meets the same bar as yours. Semantic, described, deterministic, verifiable.

Learn the guidelines once, then hold every component to the same high standards, whether you or your agents write it.

Reading the standard

Start with the Introduction, which walks through the three layers and what each one asks of a component. The guidelines live as markdown in content/docs/, so you can also read them right here on GitHub.

For agents

If your agent supports MCP, connect it to our MCP server at https://mcp.opencomponents.dev/mcp, free and with no sign-in. It gives agents the contracts, every rule and the docs a section at a time, as tools. The MCP Server page shows how to connect Claude, Codex, Cursor, VS Code, Gemini CLI, Grok, Hermes Agent and other clients.

Or install our agent plugin, in plugins/open-components, which connects the same server along with skills that build and review components the way the standard asks. It's an Agent Plugin, so it works in VS Code, GitHub Copilot, Cursor, Codex, Claude Code and other clients that support the format. The Agent Plugin page shows how to install it.

Every page of the documentation is also published as markdown, so agents can read the standard and check their work against it:

  • https://opencomponents.dev/raw/<path>.md holds one page, as in /raw/docs/getting-started/introduction.md for the introduction.
  • https://opencomponents.dev/raw/<path>.yaml holds a page's contract, with every rule from its checklist, as in /raw/docs/components/button.yaml. It's every requirement in a fraction of the page's length.
  • /schemas/contract.json is the JSON Schema every contract follows, so you can validate them, and contracts of your own. Each contract names it on its first line, so editors that use the YAML language server check it as you type.
  • /llms.txt lists every page and every contract.
  • /llms-full.txt holds them all in one file. Point your agent at it to give it the whole standard in one request.

Bugs and feature requests

Found a bug on the site, a gap in the guidelines or an idea for a new one? Please first search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

Contributing

Please read through our contributing guide. There you can find how to run the site locally, edit the guidelines and deploy. Everyone taking part in the project agrees to follow our Code of Conduct.

Thanks goes to these wonderful people!

Creator

Alex Grozav

If you use Open Components in your daily work and feel that it has made your life easier, please consider sponsoring me on GitHub Sponsors. 💖

Copyright and license

Copyright © 2026 UXFront. The site code is released under the MIT License. The guidelines in content/ and the agent plugin in plugins/open-components/ are released under the Creative Commons Attribution 4.0 License: you can share and adapt them, commercially too, as long as you credit Open Components.

来源:README.md,提交 95746d1

工具

6

get-contract

Get Contract

Returns the contract of a component or a foundation, as YAML: its API (props, slots and events), its DOM contract (element, role, states, keyboard and parts), its tokens, and every rule in its checklist, each with a stable ID (like button/keep-focus), a level (must or should), a scope (component, usage or both) and how to check it. It holds every requirement in a fraction of the page's length, and it's the same file as https://opencomponents.dev/raw/docs/<path>.yaml. WHEN TO USE: first, before you build, review or explain a component or its tokens. WHEN NOT TO USE: for some of the rules only (by scope, layer, level or check), use list-rules. For the reasoning or the examples behind a rule, use get-page with its sections.

输入参数component必填

get-page

Get Page

Reads a docs page as markdown, whole or just the sections you name. Component pages explain why each rule exists, with examples in React, Vue, Svelte, Angular, Solid, Astro and Vanilla: pass a framework to keep only its examples. WHEN TO USE: for the reasoning, an example or the details behind a rule (like the sections ["Loading"] of the button's page), or for a page without a contract, like the introduction or the roadmap. WHEN NOT TO USE: for the requirements alone, use get-contract or list-rules, which are much shorter. To find which page or section covers a topic, use search-docs. A page longer than about 8,000 tokens, like the button's, returns its outline instead: every heading with its anchor and length, so you can ask for the sections you need. So do sections that are too long to return together.

输入参数path必填sectionsframework

get-reference-implementation

Get Reference Implementation

Returns a shipped component's reference implementation: a Vue 3 component that meets every rule in its checklist, the tests that prove it, the helpers it shares with other components and its theme tokens. The live examples on the site run on this code. WHEN TO USE: to build a component that meets the standard, in Vue or by porting it and its tests to another framework, or to see how a rule is met in code. WHEN NOT TO USE: for the requirements, use get-contract. For how the component is used in another framework, use get-page with that framework.

输入参数filescomponent必填

list-components

List Components

Lists what the Open Components standard covers: the components that have shipped (like Button), the foundations every component follows (like Design Tokens), and the components planned on the Roadmap. WHEN TO USE: to check whether a component has a standard yet, to get the name the other tools take for it, or to see what's planned. WHEN NOT TO USE: if you already know the component, call get-contract directly. To find a topic in the docs, use search-docs. Shipped entries come with their page, their contract and how many rules they have. Planned ones have no page, contract or rules yet: hold them to the three layers and Design Tokens, following the Button's structure, as the build-component prompt does.

输入参数status

list-rules

List Rules

Lists checklist rules as records, filtered by component, ID, scope, layer, level or check. Each rule has a stable ID to cite in reviews and commits, its level (must or should), its scope, its requirement, how to check it (like a unit test, a review or axe's button-name rule) and a link to it. WHEN TO USE: to review code rule by rule, to get only the rules that apply to a task, to look rules up by ID, or to find the ones a tool can check. Pass scope ["component", "both"] to build or review a component, and ["usage", "both"] to review a screen that uses it. WHEN NOT TO USE: for a component's API, DOM contract and tokens, use get-contract, which has every rule too. It returns up to 50 rules at a time, and total counts every rule that matches. When there are more, pass nextOffset as offset, with the same filters, to get the next page. A component meets the standard when it meets every must rule. Each should rule is expected unless there's a good reason not to follow it.

输入参数idschecklayerlevellimitscopeoffsetautomatedcomponent

search-docs

Search Docs

Searches the whole standard, every section of every page and every checklist rule, and returns the best matches: where each one is, a short excerpt, and for rules, their ID, level and scope. WHEN TO USE: to find where a topic is covered when you don't know the page or the section, like "focus after delete", "spinner", "aria-pressed" or "dark mode". Then read a section with get-page, or rules with list-rules. WHEN NOT TO USE: to list a component's rules, use list-rules. To see which components there are, use list-components. Search for a few specific words rather than a whole question.

输入参数typelimitquery必填component

版本历史

1
  1. v1.0.0最新Oct 10, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分