尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

MCP 实战:让 AI 编辑器长出手脚,搞定 Figma、数据库与浏览器

MCP 实战:让 AI 编辑器长出手脚,搞定 Figma、数据库与浏览器 过去半年我用得最多的开发工具不是某个新框架而是 Cursor、VS Code 里那些 AI 编程插件。模型本身已经很能打了真正让效率再翻一倍的关键反而是 2024 年底开始流行起来的 MCP。MCP 全称 Model Context Protocol一句话解释它给 AI 编辑器开了一个统一的外挂接口让编辑器能直接调 Figma、连数据库、操作浏览器不用再把数据复制来复制去。这篇文章就围绕这三类最常见的 MCP server 展开把我自己跑通的配置、提示词、踩过的坑一次讲清楚适合已经在用 AI 编辑器的朋友也适合刚听说 MCP 的新手从零搭一套环境。先给还不知道 MCP 的人一个最粗暴的类比你手机充电如果每个牌子都用不同接口会很痛苦MCP 就是那个被大家统一接受的 Type-C 口。以前要让 AI 干一件“查数据库”的活你得先把 SQL 执行结果复制给 AI要让 AI 看设计稿你得截图要让 AI 验证页面你得自己打开浏览器再手动整理报错。MCP 出现之后这三件事都可以交给 AI 自己完成它不再只是个聊天机器人而是真的有了手和眼睛。1. 先搞清楚 MCP 到底是什么一个让 AI 编辑器“长出手脚”的统一协议1.1 从“问答工具”到“能操作工具”MCP 解决的真正问题很多人第一次接触 AI 编辑器时都会觉得它像个“高级问答机器”。你让它写一个函数、改一段逻辑、解释某个报错它都能接住但一旦涉及外部系统就卡住了。核心原因是模型本身不接触你的 Figma 文件、不连接你的数据库、也没有浏览器可以打开。传统的解决办法是每个工具单独做集成比如 Figma 要写一个 Figma API 的封装数据库要写一个 SQL 执行器浏览器要写一套自动化脚本——每个集成都是独立的AI 编辑器不知道你的代码里有什么工具也没法临时发现和调用它们。MCP 解决的就是“工具发现”和“统一调用”这两个问题。它定义了一套标准的 JSON-RPC 2.0 协议客户端也就是 Cursor、Claude Desktop、VS Code 插件这类 AI 编辑器可以向 MCP server 发送“你支持哪些工具”的请求server 返回工具列表和参数说明然后 AI 在回答问题时根据用户的意图决定调用哪个工具、传什么参数、拿回结构化结果。你可以把 MCP server 当成一个“插头”只要它符合 MCP 规格任何支持 MCP 的客户端都能直接插上就用完全不用为每个应用单独适配。这个价值在实际使用中特别明显。我之前给 AI 编辑器折腾过“让 AI 读数据库”的方案要么自己写脚本把查询结果转成文本再喂给模型要么用各种实验性插件换一个编辑器就废了。MCP 一出来同样的配置在 Claude Desktop、Cursor、Cline 里几乎可以平移使用配置文件就是一个 JSON一套思路走天下。这也是为什么现在越来越多的 SaaS 工具、数据库、浏览器自动化方案都在主动提供 MCP server因为一旦提供所有 MCP 客户端都能调用它等于一次接入全网可用。1.2 MCP 的三种角色和工作原理MCP 体系里有三个角色客户端Client、服务端Server和资源Resource。客户端就是你日常面对的 AI 编辑器它是发起对话和决策的一方服务端是暴露工具能力的进程比如 Figma MCP server、数据库 MCP server、Playwright MCP server资源则是服务端背后的真实对象比如一个 Figma 文件、一张数据库表、一个网页。当我在对话里说“帮我看一下订单总数”AI 编辑器会先检查当前配置了哪些 MCP server选定数据库 server 后调用它暴露的 query 工具server 去连接 MySQL 执行查询再把结果返回给 AI由 AI 组织成人话告诉我。传输方式上目前最常见的是 stdio也就是 MCP server 作为本地子进程通过标准输入输出和客户端通信。还有基于 HTTP 的 SSE 和 Streamable HTTP 方式适合远程部署的 MCP server。本地开发场景选 stdio 最方便因为 npx 或 uvx 启动一个进程即可配置文件里写成 command 加 args 就行了。企业里如果要把 MCP 能力部署到共享服务器上再用 HTTP 方式暴露这样多个客户端可以远程调用同一个 server权限和网络控制也更集中。实际体验中我会把 MCP 理解成“给 AI 配了一套工具箱但 AI 自己决定用哪把”。工具列表是在初始化阶段就加载到上下文里的AI 看得到每个工具的名字、描述和参数 schema但它不会在用户请求之前主动执行。比如同时配了数据库和浏览器两个 MCP用户问“帮我查今天订单量”AI 只会走数据库工具不会闲着没事去开浏览器因为它知道 query 工具更匹配。这个决策能力来自模型自己所以要获得更好的效果你得在提示词里把意图说清楚比如“先用数据库查结构再用浏览器验证页面”这样 AI 才会按步骤调用多个工具。1.3 常见的 MCP 客户端与服务器要怎么选客户端这边我平时的主力是 Cursor加上 VS Code 里的 Cline 作为补充。Cursor 的 MCP 支持入口比较直观项目级配一个.cursor/mcp.json重启窗口就能看到 server 状态。Cline 是一款 VS Code 插件它在侧边栏专门有一个 MCP 管理面板可以添加、编辑、开关 server调试时能看到工具的调用日志这对排查问题很友好。Claude Desktop 也原生支持 MCP适合不写代码、只想让 AI 处理文档和数据的人。Windsurf、Zed、JetBrains 的 AI 插件也在陆续支持 MCP配置逻辑大同小异都是一个 JSON 文件加一个重载操作。服务器端的选择就更多了。Figma 方向有官方的 Figma MCP 实现也有社区维护的 Figma Context MCP主要作用都是读取设计稿数据数据库方向有 SQLite、MySQL、PostgreSQL 等社区实现官方仓库里也维护了一批参考实现浏览器自动化方向Playwright 官方团队直接做了一个 Playwright MCP这是我最推荐的首选另外还有 Chrome DevTools MCP 这类通过 DevTools 协议驱动的方案。选型时我建议优先看更新频率和 star 数其次看是否支持 stdio 方式启动。一个维护了半年以上、issue 区有人回复的 server远比一个没人维护的玩具项目靠谱。2. 环境准备在 AI 编辑器里把 MCP 接好2.1 客户端配置文件到底放哪里先明确一件事MCP 的配置本质是告诉客户端“你去启动一个什么样的子进程、传什么参数、设置什么环境变量”。所以无论哪个客户端配置文件都是 JSON里面写 server 名称、command、args、env 四类信息。区别只是文件放在哪里。我用过的几个客户端路径大致如下客户端配置文件位置说明Claude Desktopclaude_desktop_config.jsonmacOS 在~/Library/Application Support/Claude/全局生效Cursor项目根目录.cursor/mcp.json或全局~/.cursor/mcp.json项目级配置更推荐VS Code Cline项目根目录.mcp.json或全局mcp_settings.json插件面板可直接打开Windsurf~/.codeium/windsurf/mcp_config.json也有项目级.mcp.json这个表我只能保证到“大致位置”因为客户端版本迭代很快菜单入口可能变。最靠谱的方式是打开客户端的设置界面搜索 MCP一般都会给出配置文件路径和可视化编辑面板。记住一个通用原则项目级配置只影响当前项目适合放 Figma、数据库这类和业务强相关的 server全局配置影响所有项目适合放不需要项目上下文的通用 server比如浏览器自动化。2.2 JSON 配置长什么样三种最常用的示例直接给三个能跑的配置示例。第一个是 Playwright MCP这是我最推荐的浏览器控制方案{ mcpServers: { playwright: { command: npx, args: [playwright/mcplatest] } } }第二个是 Figma MCP。注意不同实现包的参数略有差异我这里用的是社区常见写法关键是把 Access Token 通过环境变量传进去不要让 token 明文出现在对话里{ mcpServers: { figma: { command: npx, args: [figma-developer-mcp, --stdio], env: { FIGMA_API_KEY: 你的figma_token } } } }第三个是 SQLite 数据库用官方参考实现作为示例。SQLite 是练手成本最低的方案不需要起服务文件即数据库{ mcpServers: { sqlite: { command: uvx, args: [mcp-server-sqlite, --db-path, /tmp/test.db] } } }MySQL、PostgreSQL 的配置逻辑一样只是要把连接信息放到环境变量里比如MYSQL_HOST、MYSQL_USER、MYSQL_PASSWORD这类具体变量名以你选的包 README 为准。配好之后重启编辑器或者执行一次 reload正常情况下 MCP 面板里会从 pending 变成 connected。如果你用 Cursor在对话里直接输入“有哪些 MCP 工具可以用”AI 会告诉你当前可用的工具清单这个是验证是否跑通最快的方法。2.3 三种启动方式npx、uvx、Docker 怎么选MCP server 的启动方式基本决定了你本机要装什么运行时。我最常用的是 npx因为它只需要 Node.js 环境前端开发者基本都有所有 npm 上的 MCP server 包都可以用npx 包名启动第一次运行会自动下载之后再跑就是秒级启动。缺点是如果电脑上没装 Node 或版本太老会遇到一堆依赖问题。uvx 是 Python 生态的对应物适合安装基于 Python 的 MCP server。它和 pipx 类似会自动创建隔离环境不会污染全局 Python。如果你日常做数据开发机器上已经有 Python 3.10直接用 uvx 拉官方 SQLite 或文件系统类 server 很方便。Docker 则适合那些依赖特定环境或者需要隔离权限的 server比如一些浏览器自动化工具用 Docker 镜像启动能避免本机浏览器版本冲突。代价是多一层网络和文件系统映射调试时稍微麻烦一点。我的建议是Node 生态的 server 用 npxPython 生态的用 uvx生产环境或隔离要求高的用 Docker。第一次启动慢是正常现象因为要下载包和依赖不要在“工具列表为空”时马上怀疑配置错误先看日志。很多客户端都有“查看 MCP server 日志”的入口那里面能直接看到启动报错比自己盲猜配置路径效率高得多。3. 外挂一Figma MCP——设计稿直接变成前端代码3.1 Figma MCP 能做什么做不到什么先说结论Figma MCP 最大的价值是让 AI 能读取设计稿的“结构化数据”而不是只能看截图。你给 AI 一张截图它能猜颜色、猜间距、猜字体但大概率会出现“差几个像素”或“颜色饱和度不对”的情况。Figma MCP 接入之后AI 能直接拿到图层树、Frame 的尺寸、节点的位置、填充颜色、字体名称、字体大小、圆角、阴影、SVG 导出等信息生成的代码在还原度上完全是另一个档次。具体能做的事包括读取文件信息、获取某个 Frame/Page 的节点结构、列出样式变量、导出节点为 SVG 或 PNG、读取组件和实例信息、查找指定名称的图层。这些能力对前端还原设计稿非常有用。但注意Figma MCP 不是 Figma 汉化工具有人搜“Figma 汉化”是为了改界面语言那跟 MCP 不是一回事MCP 的价值是数据接口不是 UI 汉化。你甚至可以让 AI 把图层名翻译成中文注释写进代码让设计稿里的英文命名变成前端项目里可读的类名。还有一个大家常问的问题Figma MCP 可以直接切图吗我的回答是“能拿图但不等于一键切所有图”。MCP 能按节点导出位图和 SVG但你要像设计交付那样批量切图需要让 AI 遍历一组 Frame按命名规范导出并保存到指定目录这本质上是写一个小循环逻辑而不是设计工具里那种拖一下就能批量导出的交互。如果你的设计稿本身命名混乱AI 不知道哪些图层是图标、哪些是背景切图效果也不会好。3.2 实操从 Figma 拿数据让 AI 生成一个 React 组件我把一个真实场景拆开讲。假设设计文件里有一个“订单列表”的 Frame包含状态标签、订单号、金额、时间四个元素我想让 AI 还原成 React Tailwind 组件。第一步是在 Figma 里创建 Access Token入口在个人设置里的 Security 页面生成时给它readonly权限就够了MCP 主要是读数据不需要 write 权限。然后按前面说的配置把 token 填到 env 里重启编辑器。接着对话里给一个足够具体的提示词比如“连接 Figma。先读取文件 key 为xxxxx中名为‘订单列表’的 Frame获取所有图层的名称、类型、位置、宽高、颜色、字体和圆角参数然后生成一个 React Tailwind 组件布局尽量按照设计稿对齐颜色和字号直接用读取到的值。”执行时你会发现AI 会先调用 Figma 的读取节点工具拿到结构后再进入代码生成环节。因为 MCP 返回的是结构化数据AI 不会像看截图那样“猜”它会把#4F46E5、text-sm、rounded-lg这类值直接写进代码。实际跑下来还原度能到八成以上剩下的两成通常是因为设计稿里有特殊交互态、阴影层级复杂或者 AI 对某些 Tailwind 类名不够熟练需要人工微调。3.3 设计稿不规范和字体缺失的坑Figma MCP 好用但前提是设计稿本身别太乱。我遇到过最典型的问题是图层命名含糊比如一坨叫 “Frame 210” 的嵌套节点AI 没法判断它是什么。解决办法是在提示词里要求 AI “忽略名称中的数字编号根据图层位置和内容推断语义”或者先让 AI 输出一份图层清单给我确认再开始生成代码。还有一个问题是设计稿里大量使用隐藏图层和占位数据AI 会把它们也读进来导致生成代码里混入背景装饰或多余元素。我的习惯是让 AI 用“只读取 visual 相关的可见节点”作为约束。字体缺失是另一个高频尴尬。MCP 返回的数据里能拿到fontFamily: Inter但你本机没装 InterAI 生成代码没问题预览时就显示成默认字体。这不是 MCP 的问题而是设计协作里常见的问题。解决办法很简单让 AI 在生成代码时用 Google Fonts 链接引入字体或者你提前把设计稿用到的字体装到本地保持开发环境字体和设计环境一致。如果拿到的字体名称里的特殊字重也读出来了Tailwind 里对应的font-medium、font-semibold会写得更准确。4. 外挂二数据库 MCP——让 AI 替你查库、写 SQL、做分析4.1 为什么比“把 SQL 贴给 AI”好用以前想借助 AI 分析数据库最常见的姿势是自己连上数据库查一下表结构把建表语句复制给 AI再把数据贴过去让 AI 给结论。这个流程的问题很明显数据是静态的AI 只看到了你喂给它的那一小撮数据而且你手动贴 SQL 和结果中间很容易漏掉关键信息。数据库 MCP 改变了这个状态AI 自己连到数据库先看有哪些表、每张表的结构是什么再根据你的问题写 SQL、执行查询、看结果甚至能根据结果调整下一步。这种“探索式查询”在分析场景特别有用。比如你问“最近 7 天订单量为什么突然降低”AI 会先查订单表结构再看时间范围的数据发现某个渠道的订单量为零接着去渠道表里查这个渠道是否被停用整个分析链路它自己能往前走。如果 AI 写的第一条 SQL 报错了它读到数据库返回的报错信息后还能自己修正重新执行。这比传统 BI 工具更像一个初级数据分析师的工作方式。不过我得强调一点MCP 不是数据库同步工具。有人搜“数据库同步工具”就想让 MCP 帮忙做主从同步、跨库复制这个方向不对。MCP 适合的是查询、分析、生成 SQL、小范围的数据修正真要做数据同步还是用专业的同步软件或写 ETL 脚本。它的定位是让 AI 理解和使用数据而不是替代基础设施工具。4.2 连接 MySQL 和 SQLite配置与安全参数本地练手我推荐先从 SQLite 开始因为零配置。用一个文件路径就能启动 serverAI 可以执行 SELECT、CREATE TABLE 这类操作非常适合跑通整个流程。等你确认 MCP 链路没问题了再切换到 MySQL 或 PostgreSQL 处理真实业务数据。连接 MySQL 时安全第一。强烈建议给 AI 单独建一个只读账号不要拿 root 或开发账号去配置。MySQL MCP 的配置逻辑通常是把主机、端口、用户名、密码、数据库名放到环境变量里然后 server 启动时读取连接池。配置示例大致长这样具体变量名以你选的包为准{ mcpServers: { mysql: { command: npx, args: [-y, 你选定的mysql-mcp包名], env: { MYSQL_HOST: 127.0.0.1, MYSQL_PORT: 3306, MYSQL_USER: readonly_user, MYSQL_PASSWORD: 你的密码, MYSQL_DATABASE: shop } } } }连接数据库之后我会先让 AI 做一次“体检”列出所有表、记录每张表的行数和字段数、找出字段命名不统一的地方。这一步看起来简单但在排查老项目时特别有用因为很多系统经过多年迭代表结构早就和文档对不上了AI 能直接读库拿到真实 schema比看文档可靠得多。4.3 实战让 AI 分析订单异常我拿一个实际跑过的场景说。某天业务反馈退款率异常升高我让 MCP 连上订单库然后给了一句自然语言“分析最近 7 天各支付渠道的订单数和退款率找出退款率异常升高的渠道并给出可能的原因。”AI 的执行过程是这样的先查看订单表里有哪些字段确认支付渠道字段是pay_channel、状态字段是status、金额字段是amount然后写了一条 SQL 按支付渠道分组统计近 7 天订单数和退款率执行得到一个结果。它发现某个渠道的退款率高达 23%于是进一步查这个渠道最近 7 天的订单量变化发现前两天该渠道的订单量突然放大同时退款集中在某个商品 ID 上。最后它给我的结论是“可能是某个商品在大促期间出现质量问题且该渠道引流质量较差”并附上了佐证的查询 SQL。整个过程里我没有手动执行过一条 SQL只是描述问题、看结果、追问细节。这就是数据库 MCP 的典型价值它把“写 SQL、执行、分析、再写 SQL”这一串动作变成了对话。但对关键结论我仍然会保留 review 权限AI 给出 SQL 后我会自己跑一遍确认结果再决定要不要回复业务方。AI 可以作为效率引擎但不能作为唯一的事实来源。4.4 生产环境必须避开的坑生产库连接 MCP 之前请先做三件事创建只读账号只授权需要的数据库不要把 DDL、DELETE、UPDATE 权限给到 AI。我的经验是只读账号就能覆盖 90% 的分析需求。如果你确实需要让 AI 帮忙写 UPDATE我建议让它生成 SQL 后由人工执行而不是开放写权限让 AI 直接跑。另一个坑是连接串里的密码会被配置文件明文保存。项目级 MCP 配置如果提交到 Git 仓库密码就泄露了。我的处理方式是在本地创建配置文件把.mcp.json加进.gitignore或者用环境变量和配置模板的方式管理敏感信息。还有超时问题复杂查询可能执行很久MCP server 默认超时通常是几十秒AI 在等待结果时可能显示“工具调用超时”。我会要求 AI 在写 SQL 时加上合理的 LIMIT或者先查 EXPLAIN 再执行避免一条巨型查询把 server 卡死。5. 外挂三浏览器 MCP——AI 自己点页面、测流程、调试 Bug5.1 为什么需要让 AI 操作浏览器后端逻辑可以靠单测覆盖但前端效果和用户流程光看代码很难验证。以前 AI 帮我们写前端代码写完只能靠开发者自己刷新浏览器、点点点、看控制台报错。浏览器 MCP 把这个环节也自动化了AI 打开页面、输入内容、点击按钮、截图、读取 console 日志、拦截网络请求相当于一个能自己操作浏览器的测试工程师。Playwright MCP 是目前最成熟的选择它是 Playwright 团队官方做的天然支持 Chromium、Firefox、WebKit。它启动时会拉起一个浏览器实例AI 通过工具控制页面比如 navigate、click、fill、snapshot、screenshot、console 读取等。你不需要手动给 Chrome 装什么扩展MCP 启动的浏览器实例自己就能被控制。如果你本机已经装了 Chrome也可以配置它使用 Chrome 的 executablePath这样浏览器行为和你日常用的版本更一致。有一个热词是“谷歌浏览器扩展设置中启用 MCP 连接”如果你在 Chrome 扩展设置里看到和 MCP 相关的选项通常指的就是通过 DevTools 通道暴露控制能力和 Playwright MCP 殊途同归。对于大多数开发场景直接用 Playwright MCP 更省事因为配置只有一行而且 Playwright 自带对移动端视口、网络模拟的支持。5.2 配置一个浏览器外挂Playwright MCP 的常用玩法配置代码我在前面已经给了非常简单{ mcpServers: { playwright: { command: npx, args: [playwright/mcplatest] } } }首次启动会自动下载浏览器内核所以看到进度条不要慌。如果公司网络限制下载慢也可以先手动安装 Playwright 依赖再配置 server。接入之后我最常用的三种玩法第一种是“打开页面给我看”。我会让 AI 打开某个本地开发页面截图并总结页面结构同时读取控制台是否有报错。这个对快速检查本地代码很有用不用自己切窗口。第二种是“自动走一遍流程”。比如让 AI 打开登录页填入测试账号密码点击登录等待跳转截图确认是否登录成功。AI 会自己分析页面元素找到输入框、按钮的定位方式再执行点击。整个过程比写一套 Playwright 脚本快得多因为它不用先学页面结构而是实时读取 DOM 来决策。第三种是“查 bug”。页面出问题后让 AI 打开页面观察截图和 DOM定位是哪个组件的渲染异常再结合代码文件修改。这里 AI 相当于同时具备了“看页面、看代码、看控制台”的能力排查效率比人来回切换高不少。5.3 浏览器自动化的局限登录态、验证码、生产环境浏览器 MCP 看着神但真实场景里有几个限制必须知道。第一默认启动的浏览器实例是干净的临时 profile没有你平时登录态的 Cookie。它每次打开一个网站都是从访客身份开始如果目标系统需要登录你得把账号密码告诉 AI或者在配置里指定一个带有持久化登录态的 user-data-dir。我自己的做法是准备一套专门的测试账号把它交给 AI 使用绝不让 AI 去操作我的个人账号。第二验证码和 SSO 登录基本无解。滑块验证、图形验证、企业 SSO 跳转这些环节AI 很难自动绕过遇到这种流程我会在提示词里直接告诉 AI“遇到验证码就停下来等我人工处理”比让它反复尝试省心得多。第三不要用浏览器 MCP 去点生产环境的高危操作比如批量删除、转账、上线变更。它不是审批系统AI 误点一下可能造成不可逆影响。浏览器 MCP 最适合的场景是本地开发环境和测试环境生产环境的只读检查也要谨慎限定范围。6. 把三个外挂串起来一个真实的“设计稿到本地验证”工作流6.1 场景设定做一个订单管理页面前面分别是三个单点能力但 MCP 真正的优势是组合。我拿一个真实的开发任务说明从 Figma 设计稿开始基于 MySQL 订单数据生成一个订单管理页面并用浏览器验证效果。先说明这不是一个“AI 全自动开发”的魔法流程而是一个“人设定目标、AI 分步执行、人做最终验收”的协作流程。假设设计稿里有一个订单管理页面包含订单列表、筛选区域、状态标签、金额汇总四块。数据库里有一张orders表字段包括订单号、用户 ID、商品名、金额、状态、创建时间。我的目标是生成一个 Web 页面让运营同事能按状态筛选订单并看到总金额。6.2 工作流拆解每一步提示词和预期结果第一步先让 AI 从 Figma 读设计信息。我的提示词是“连接 Figma读取订单管理页面对应的 Frame提取布局结构、颜色变量、字体大小、间距和状态标签的颜色映射输出一份设计摘要。”这一步的预期结果是 AI 给我一份结构化的设计参数清单包括容器宽度、列表列宽、状态颜色、按钮样式等供后续代码生成使用。第二步让 AI 连接数据库查看订单表结构。提示词是“连接 MySQL查看 orders 表的所有字段、类型和典型值列出几行示例数据理解每个字段的业务含义。”预期结果是 AI 得到订单表 schema并能区分status字段有哪些枚举值、金额字段是 decimal 还是 int。这样生成代码时筛选下拉框里的选项就是来自真实数据而不是编造的。第三步生成页面代码。提示词是“基于设计摘要和数据库表结构生成一个 React Tailwind 的订单管理页面。包含状态筛选、订单列表表格、金额汇总。表格列和设计稿一致状态标签颜色参考设计稿映射。不要写 mock 数据用 fetch 请求一个/api/orders接口接口返回结构和表结构对应。”这一步 AI 会结合两个 MCP 拿到的信息写代码生成结果比单看截图或单看表结构要准确很多。第四步用浏览器验证。把前端项目跑起来后提示词是“用 Playwright 打开http://localhost:3000/orders检查页面是否正常加载截图给我看并读取控制台报错。如果有报错或布局问题列出问题点并尝试修复。”AI 会启动浏览器、打开页面、截图、读 console如果发现接口参数不对它会回到代码里修改再重新打开页面验证。这个“改代码-开页面-看结果-再改”的循环过去我手动做可能要十几分钟现在大部分能由 AI 跑完。第五步人要做的是最终验收。我会核对状态标签颜色是否和设计稿一致、金额汇总计算是否正确、筛选逻辑是否生效。因为 AI 生成的代码虽然依据充分但业务规则可能有很多隐含逻辑比如“已取消的订单不计入汇总”“退款订单金额显示为负数”这些需要人来说清楚AI 不会自动知道。6.3 这个组合能省多少力别神话什么以上流程里最耗时且最繁琐的部分是“信息搬运”从设计稿提取参数、从数据库理解字段、从页面观察效果它们实际上花掉了我大量碎片时间。MCP 组合之后AI 能自己在这些工具之间切换我只需要在每个关键节点审阅结果。我实测下来单个页面的开发时间大概能缩短一半以上尤其是反复调整样式和接口字段的阶段效率提升非常明显。但我必须泼一点冷水MCP 不会让 AI 变成架构师或产品经理。设计稿信息不全、数据库字段命名混乱、业务规则含糊时AI 照样会犯错而且因为 AI 能自己操作工具犯错的成本会更高——它会跑出一条不太对的 SQL、生成一个字段对不上的页面然后一本正经地告诉你“已完成”。所以我的原则是让 AI 每完成一个阶段先输出执行摘要和关键参数我再确认下一步。就像带一个实习开发方向你定过程可以放手但关键决策你不能放手。7. 常见问题速查配置、连接、权限和排查7.1 高频问题与解决方案一览最后把我实际踩过和帮别人排查过的问题整理成表格方便你直接对照。现象可能原因解决办法MCP server 一直是 pending 或 failed命令写错、Node 版本过低、网络下载失败查看 server 日志先手动在终端运行启动命令确认能否跑起来工具列表为空配置格式不对、server 未连接、包名错误检查 JSON 是否有拼写错误确认 args 里包名存在重启编辑器npx 启动特别慢第一次下载依赖包先手动执行一次npx 包名缓存依赖不要频繁重启 serverFigma MCP 返回 401Access Token 失效或无权限重新生成 token检查是否给了该文件的访问权限token 不要放在代码库数据库连接超时网络不通、连接串错误、数据库拒绝连接先在本机用客户端测试连接检查 host、port、账号权限AI 执行 SQL 时卡住查询太慢或返回数据太大在提示词里要求加 LIMIT让 AI 先查 EXPLAIN限制返回行数Playwright 打开页面空白浏览器内核未安装、前端服务未启动先手动打开 URL 确认服务可用执行 Playwright 安装命令补齐浏览器AI 在浏览器里点错元素页面有多个相似元素、selector 不稳定要求 AI 先把可交互元素列出来确认后再点击用文本内容定位而不是坐标server 配置里有密码配置文件被提交到 Git把配置文件加入.gitignore改用环境变量或本地配置文件模板这表基本覆盖了配置初期的绝大多数问题。如果遇到表里没有的错误第一选择是看日志MCP 的日志通常会直接告诉你启动失败的具体原因比去社区搜问题更高效。7.2 我自己的几点实操建议配 MCP 这事最容易犯的错误是一次性配五六个 server然后发现全都没跑通排查起来心态爆炸。我的建议是先从单个 server 开始比如先配一个 Playwright MCP确认它能在浏览器里截图再接着配 Figma 或数据库。每一步都验证通过再进行下一步整体成功率会高很多。还有一个习惯很关键每次给 AI 下达涉及外挂工具的任务时我会在提示词里明确加一句“先说明你的执行计划执行到关键步骤时告诉我结果”。比如让 AI 查数据库就先让它输出表结构摘要让 AI 操作浏览器就让它先列出准备点击的元素。这样即使它跑偏我也能在第一步就发现而不是等它跑完一整串动作后才发现理解错了。最后想说的是MCP 对 AI 编辑器的影响不亚于插件生态对 IDE 的影响。刚开始你可能只是想让 AI 读一下数据库表结构但一旦你接受了“AI 可以自己使用工具”这个设定很多工作方式都会被重新思考设计师要不要先把标注做全、后端要不要给 AI 建只读账号、前端要不要把本地页面做成可视化验证闭环。这些都不是技术门槛而是协作习惯的改变。我个人最享受的是那个瞬间看着 AI 自己打开浏览器、点完按钮、截图汇报就像带了一阵子之后终于能独当一面的实习生。你先从一个最简单的 server 开始跑通一次“AI 帮你做事”的流程后面自然而然能想出更多用法。
返回列表