最近我在尝试一套非常实用的 AI + UI 开发流程,彻底改变了我写界面的方式。以往写 UI,动手敲代码很累,修改也费时。而这次,借助一个叫 MCP Server 的工具,配合 AI 辅助,让 AI 理解组件用法、结构,直接帮我生成高质量的界面代码。
这套流程的亮点在于:上下文丰富,规则明确,定制灵活,且多服务开发环境能高效管理。本文我将分享具体操作步骤和实战经验,同时也聊聊多服务本地开发的那些痛点,顺带介绍一个我用的轻量级本地开发平台 ServBay,帮你一键搞定多个服务启动和端口管理。
现在很多开发者都用 Cursor、Claude 这类 AI 代码辅助工具,输入一句“帮我写登录页”,马上就出一堆代码。
但是成品往往不符合预期:
根本原因是:AI 缺少上下文。
它根本不懂你用的组件库(比如 ShadCN UI)结构和用法,只是简单“堆积代码片段”,没法理解组件间的组合逻辑。
MCP Server(Model-Component-Protocol Server)就是为了解决这个问题诞生的。它本质上是一个 Node 服务,能把组件库的结构、用法、依赖关系,封装成 AI 能理解的接口。
举个例子:
这样,AI 就能根据真实规则,准确调用组件,不再乱拼。
MCP Server 的源码在 GitHub 上开源,点这里。
安装很简单:
npx @jpisnice/shadcn-ui-mcp-server
建议绑定 GitHub 个人访问令牌,提升请求配额:
npx @jpisnice/shadcn-ui-mcp-server --github-api-key ghp_你的token
启动后,AI 客户端(比如 Cursor)可以访问它的接口,获取组件列表、示例代码、依赖元信息。
rule.mdc 是定义 AI 生成流程的关键“剧本”。
示例内容:
@rule.mdc
我想用 ShadCN UI 组件构建一个现代网站,先做登录页,包含邮箱、密码输入框和登录按钮。
登录成功后跳转到仪表盘页面,仪表盘有卡片布局,每张卡片展示 MCP Server 的信息。
请帮我列出需要用到的关键组件和页面结构。
按顺序实现,保持代码风格一致,便于扩展和维护。
这文件会告诉 AI 要做什么、怎么做、用哪些组件、执行顺序,避免 AI 乱写。
Cursor 是个强大的 AI 代码助手,能集成 MCP Server。
你只要在 Cursor 设置中添加 MCP Server 地址和令牌,AI 就会自动用 MCP Server 提供的组件上下文生成代码。
比如我输入:
@rule.mdc
Cursor 会根据规则,调用 MCP Server 接口,解析组件结构,生成符合规范的代码。
这过程 AI 不再“瞎写”,而是一步步按照规则文件和组件说明搭建页面。
ShadCN UI 默认样式美观,但很多项目会撞款。
TweakCN 是一个可视化主题编辑器,可以在浏览器里拖拽调色、调整间距、字体,实时预览。
编辑好主题后,导出配置,直接装到项目里。
这样,生成的界面不仅“对”,还更有个性。
我们说了 AI 生成 UI 是未来趋势,但实际开发环境中,经常是多服务并行跑:
每个都要单独启动,端口还得记,窗口一多,新人根本不知道先开哪个。
这是大多数开发者的痛点。
ServBay 是我近期发现的本地开发利器。
它可以通过 .servbay.js
配置文件,一条命令启动多个服务,自动分配端口,甚至支持本地域名访问,比如:
http://mcp.localhost
http://app.localhost
http://agent.localhost
同时,ServBay 还能自动配置服务间路由,避免跨端口通信问题。
举个简单示例 .servbay.js
:
module.exports = {
services: {
mcp: {
command: 'npx',
args: ['@jpisnice/shadcn-ui-mcp-server', '--github-api-key', 'ghp_你的token'],
port: 3001,
domain: 'mcp.localhost',
},
app: {
command: 'npm',
args: ['run', 'dev'],
port: 3000,
domain: 'app.localhost',
},
agent: {
command: 'cursor',
args: [],
port: 3002,
domain: 'agent.localhost',
},
},
};
启动命令:
servbay start
所有服务自动就绪,省去切换窗口、记端口的烦恼。
这套结合 MCP Server、AI Agent、ShadCN UI 及 ServBay 的方案,代表了未来前端开发一个很有潜力的方向。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。