ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

MCP开发实战:给AI编辑器接入Figma、数据库与浏览器

MCP开发实战:给AI编辑器接入Figma、数据库与浏览器 MCP 这个词在 AI 开发圈子里已经成了高频暗号。我最近经常看到有人晒出这样的工作流让 AI 先打开 Figma 看一眼设计稿回头直接改数据库里的配置又顺手唤起浏览器做了个截图。这三个动作放到以前至少得装三套插件、写一堆胶水脚本、在不同工具之间来回复制粘贴。但把 MCP 搞清楚之后我发现它本质上不是在给 AI 加某个功能而是在给 AI 编辑器开一扇标准接口的门。这篇文章就是想把门里门外的路数讲清楚包括怎么接 Figma、怎么接数据库、怎么让 AI 自己操作浏览器以及我在实际配置和调试中踩过的一堆坑。适合正在用 Claude Code、Cursor、VS Code 扩展这些 AI 编程工具又不想被每个工具都得写一套适配这件事烦死的开发者。1. MCP 不是新玩具是给 AI 编辑器开的标准接口1.1 用USB-C 接口理解 MCPMCP 全称是 Model Context Protocol也就是模型上下文协议。Anthropic 在 2024 年底把它开源出来目的很明确统一 AI 应用和外部数据、工具之间的对接方式。我用一个生活化的类比帮刚接触的朋友理解——它就像 USB-C 接口。以前每个硬件要用自己的充电线手机一根、耳机一根、鼠标一根桌面乱成一团。MCP 要解决的是同样的问题每个 AI 工具都要连数据库、连设计稿、连浏览器、连内部 API如果每家都自定义一套插件规范那生态就碎了。有了 MCP 之后一个服务器写好任何支持 MCP 的 AI 客户端都能直接用。这个类比还能往下推一层USB-C 接口本身不决定你充多快、传多快关键在于设备和协议。MCP 也一样它只负责标准化地连接具体能干什么取决于你接的是哪个 MCP Server。1.2 MCP 里的三个角色拆开看MCP 架构里就三个角色Host宿主就是 AI 编辑器本身比如 Claude Code、Cursor、VS Code 里装的 Claude 扩展、Cline、Continue 等。它是整个流程的大脑所在。Client客户端宿主内部负责跟 MCP Server 建立连接、收发消息的组件。用户一般不需要直接操作它配置好了它就自动工作。Server服务器真正干活的工具提供方。它可以是一个本地进程也可以是一个远程地址向外暴露三类能力Tool工具比如查询订单表打开网页、Resource资源比如读取某个文件的内容读取数据库表结构、Prompt预设指令模板方便复用固定的操作流程。用大白话说宿主负责思考Server 负责执行Client 负责传话。1.3 为什么值得现在折腾我自己的感受是MCP 这事的价值不在单个工具而在组合拳。你单独让 AI 查个数据库写个 Python 脚本也能做到但让 AI 同时参考 Figma 设计稿、查询线上数据、再打开浏览器自测没有统一协议的话工程量大到根本不想做。MCP 的生态现在也起来了热词里能看到的一堆名字——Playwright MCP、Chrome DevTools MCP、Blender MCP、BurpSuite MCP、Yakit MCP——都是不同领域的人在用同一套协议接自己的工具。这意味着你学会配置一个就等于学会了配置所有。2. 先把宿主准备好AI 编辑器与 MCP Server 的接入姿势2.1 挑一款支持 MCP 的 AI 编辑器目前市面上主流的支持方有这些我按实际体验排序客户端支持方式适合人群Claude Code原生支持命令行claude mcp add即可添加配置文件也开放喜欢 CLI 工作流、愿意折腾的人Cursor支持项目级.cursor/mcp.json设置界面可视化习惯图形界面的人VS Code Claude 扩展官方扩展内置 MCP 支持能在设置里导入 JSON日常就在 VS Code 里写代码的人Cline / Roo Code社区插件兼容 MCP 配置格式想白嫖多种模型组合的人我主力用的是 Claude Code偶尔也在 VS Code 里操作。说实话不同客户端配置写法有点差别但底层都是同一个 JSON 结构学会一个其他都只是搬家而已。2.2 MCP Server 的三种接入方式接到 Host 的方式主要有三种理解这个对排查问题非常关键本地 stdio 方式Host 直接启动一个本地进程通过标准输入输出通信。最常见的就是npx -y 某个包。好处是数据不出本机、延迟低坏处是依赖本地环境比如 Node 版本不对就起不来。远程 HTTP / SSE 方式Server 部署在远端Host 通过 URL 连接。适合团队共享的工具服比如内部统一的数据库查询服务。远程 WebSocket 方式配置里填一个wss://地址适合需要长连接、实时推送的场景。要注意的是这类地址通常带着鉴权 token属于敏感信息千万别写进公开仓库。我看到有些人在示例配置里直接贴长串 token这是很不好的习惯。2.3 配置文件的写法与常见坑大多数客户端都会读取一个 JSON 配置文件结构长这样{ mcpServers: { figma: { command: npx, args: [-y, figma-developer-mcp, --stdio], env: { FIGMA_API_KEY: 粘贴你的token } } } }如果是远程服务器就换成 URL 写法{ mcpServers: { remote-db: { url: https://mcp.example.com/db, headers: { Authorization: Bearer 你的密钥 } } } }第一次配置时最容易踩的坑有三个。第一Windows 路径里的反斜杠在 JSON 里必须写成双反斜杠不然路径解析直接失败。第二npx首次运行要下载包慢的时候能卡一两分钟别以为卡死了多等一会或者用pnpm dlx这种更快的包执行工具。第三很多 Server 的环境变量不会自动继承你 shell 里的配置所以数据库密码、API Key 这些一定要在env字段里显式写清楚或者通过客户端提供的环境变量文件加载。3. 给 AI 接上 Figma读设计稿、出前端代码一步到位3.1 Figma MCP 到底能帮我们干什么很长一段时间里AI 写前端都是对着截图猜设计。设计稿在 Figma 里AI 只能看到一张位图颜色、间距、字号全靠猜。Figma MCP 把这条链路打通了AI 可以直接读取设计稿里的 Frame、图层、组件、样式变量、文本内容甚至拿到指定节点的导出图片地址。有了这些结构化信息生成 React 组件、Tailwind 样式的时候基本能做到照着设计稿抄作业。注意一点Figma MCP 读取的是设计稿的数据不是帮你汉化 Figma 界面。网上搜figma汉化插件出来的那些东西本质是替换界面语言包跟 MCP 完全是两码事。有些来路不明的汉化包要改 Figma 桌面端资源风险不小我一般不推荐装。3.2 从零配置一个可用的 Figma MCP配置流程很简单按顺序来就行。第一步去 Figma 的个人设置里生成 Access Token。在 Figma 网页版左下角头像菜单里能找到 Personal Access Tokens生成时建议只勾选读权限。第二步选一个社区常用的 MCP Server。我用得比较多的是figma-developer-mcp它通过 Figma REST API 工作配置也简单。第三步把 Server 加进你的客户端配置。以 Claude Code 为例claude mcp add figma --env FIGMA_API_KEY你的token -- npx -y figma-developer-mcp --stdio如果改 JSON就是上面 2.3 节那种结构FIGMA_API_KEY一定不能少。第四步拿到 Figma 文件链接里的 File Key。比如链接是https://www.figma.com/design/AbCdEfGh/页面名称?node-id...那AbCdEfGh就是 File Key。第五步在对话里直接告诉 AI读取 File Key 为 AbCdEfGh 的文件里首页 Frame 的布局和样式然后生成组件代码。3.3 实测案例让 AI 根据设计稿出页面我最近一次实操是让 AI 照着设计稿写一个数据可视化看板页。提示词大概是这样请读取 Figma 文件file key: AbCdEfGh中名为 Dashboard 的 Frame。提取主色、辅助色、字体大小、间距体系以及卡片组件的布局结构。然后基于这些信息用 React Tailwind CSS 生成整个页面的静态版本不需要交互逻辑。它的处理过程是先调用 Figma 工具拿到节点树和样式数据再结合我的项目背景生成代码。最终产出的页面在颜色和间距上非常接近设计稿比看着截图写精确得多。这背后其实就是 MCP 把设计数据喂给了模型而不是让它瞎猜。还有个小提示有人问 Figma 的 UI 怎么导入 Unity那是另一条技术路线UIToolkit 或第三方导出插件MCP 并不负责这种设计稿转 3D 资源的场景别搞混了。3.4 这一环节必须注意的三件事第一Token 权限控制。给 Figma MCP 用的 Token 只开读取权限就够了它不需要帮你改设计稿。一旦 Token 泄露别人能读你的设计文件那也是很麻烦的事。第二文件权限隔离。AI 能读到的 Figma 文件取决于你的账号有没有被分享进那个文件。所以别把合作关系以外的重要文件随便共享给测试账号。第三免费版 Figma 对 API 调用有次数限制频繁读取大文件可能会触发限流。真要在项目里高频使用建议开专业版或者把文件拆小。4. 给 AI 接上数据库查表、优化 SQL、生成脚本4.1 数据库 MCP Server 的选型数据库场景是 MCP 目前最成熟的方向之一主流数据库基本都有现成 Server数据库常用 MCP Server技术栈MySQLmysql_mcp_serverNode.jsPostgreSQLpostgres-mcpNode.jsSQLitemcp-server-sqlite官方参考实现Python / Node.jsSQL Servermssql-mcpNode.js我个人的原则是优先选维护活跃、星标多、官方推荐的包。数据库 Server 直接连着真实数据代码质量不行的包我宁肯自己封装一个也不冒险。4.2 配一个可用的 MySQL 连接以 MySQL 为例配置 JSON 长这样{ mcpServers: { mysql: { command: npx, args: [-y, mysql_mcp_server], env: { MYSQL_HOST: 127.0.0.1, MYSQL_PORT: 3306, MYSQL_USER: readonly_user, MYSQL_PASS: 你的密码, MYSQL_DB: your_database } } } }这里强烈建议在 MySQL 里单独创建一个只读账号给 MCP 用权限只给SELECT。原因很简单AI 生成的 SQL 不保证每次都对万一来一条DELETE不带条件数据就没救了。我见过不止一次这种事故。4.3 我常用的几条 AI 查库指令模板连接配好之后下面这类指令是实测最好用的先展示当前数据库的所有表然后重点描述 orders 和 users 两张表的结构与外键关系用文字版 ER 图表示。 这一步能让 AI 快速建立对库结构的认知。统计最近 30 天每月的订单金额和订单量分别给出 SQL 和结果表格。 它每次都会重新生成 SQL 并执行还能顺手解释数据波动。这条慢 SQL 有什么问题给出优化建议和改写后的语句。 把 EXPLAIN 结果或者慢查询日志贴给它它能结合索引和表结构分析。根据现有的表结构写一份从 3 张表生成月度报表视图的迁移脚本。 生成完我再人工审一遍再执行效率非常高。4.4 生产环境红线只读优先、密钥管理、连接池这一节讲的都是真金白银换来的教训。一是连接池问题。mysql_mcp_server 底层会用连接池复用连接这对高频查询是好事但如果你同时开了多个 MCP Server 连同一个库连接数会被拉满。建议一个库只配一个 Server并且把连接池上限调低。二是密钥管理。数据库密码直接写在 JSON 里很容易随手提交到 Git 仓库。我现在的做法是配置文件模板提交仓库真实密钥走环境变量或者本地的.env文件客户端启动时自动注入。三是别把 MCP 当数据库同步工具用。它的定位是查询、分析、生成脚本结构比对、数据迁移、多环境同步这种重活还是交给 DBeaver、Navicat、Bytebase 这类专业工具。至于 SQLite本地.db文件也可以接 MCP但如果你想图形化地打开看一眼表结构DB Browser for SQLite 依旧是最顺手的工具AI 适合做分析不适合当可视化软件。5. 给 AI 接上浏览器Playwright 与 Chrome DevTools 实测5.1 Playwright MCP让 AI 自己操作网页Playwright 本身就是微软家的浏览器自动化框架MCP 版本把它封装成了 AI 可以直接调用的工具集。安装运行一条命令的事npx playwright/mcplatest配置 JSON 里加上这段{ mcpServers: { playwright: { command: npx, args: [playwright/mcplatest] } } }跑起来之后你可以让 AI 打开任意页面、点击按钮、填写表单、读取页面文本、执行 JS、截图。我最常干的几件事让 AI 把自己刚生成的页面完整跑一遍注册流程然后截图给我看让 AI 打开某个页面把关键信息抓出来整理成结构化数据让 AI 检查页面在不同尺寸下的布局是否错乱。5.2 Chrome DevTools MCP给 AI 一双调试眼睛如果 Playwright 是 AI 的手那 Chrome DevTools MCP 就是 AI 的眼睛。这个 Server 走 Chrome DevTools Protocol能读取当前页面的 console 日志、网络请求、DOM 结构、性能指标甚至可以在浏览器里执行调试操作。启动方式npx -y chrome-devtools-mcplatest它会要求 Chrome 开启远程调试端口默认 9222。连上之后你可以直接让 AI 排查问题比如打开这个页面把 red 色的错误日志和所有 4xx、5xx 请求列出来分析原因。它会真的去读浏览器内部的数据而不是瞎猜。顺带说一句新版 Chrome 的开发调试能力越来越开放有些版本在扩展设置里甚至能看到 MCP 相关选项属于实验能力有兴趣可以留意但别太依赖毕竟随时可能调整。5.3 实操示例让 AI 自己跑一遍流程并截图我最近用 Playwright MCP 做了一个小回归测试过程可以完整还原一下。先在对话里告诉 AI 目标打开 http://localhost:3000执行一次新用户注册流程。点击注册按钮填入随机邮箱和密码提交后等待跳转最后把落地页截图给我。AI 的执行路径大致是启动浏览器打开页面定位注册按钮并点击逐字段填入测试数据提交表单等待网络请求完成最后截图。整个过程如果放在以前我要么手动操作要么写几十行 Playwright 脚本现在只需要把步骤说清楚剩下的交给它。当然它中途也可能选错选择器这时候你要在对话里纠正比如注册按钮的 class 是 xxx重新定位再试。5.4 安全边界别把线上账号喂给 AI浏览器类 MCP 是所有 Server 里权限最大、风险也最高的因为 AI 一旦被注入恶意指令可能在真实网页里执行任意操作。我的做法是第一只在本地测试环境或 staging 环境使用绝不让它自动操作线上业务账号。第二启动时加--headless参数让浏览器无头运行减少误操作和资源消耗。第三给 AI 划定操作范围明确告诉它哪些域名可以访问、哪些不可以不要让它自行跳转到未知外链。6. 翻车记录MCP 配置与调用的高频坑6.1 连接失败问题速查表我把这段时间遇到最多的问题整理成一张表方便你直接对照排查现象常见原因解决办法Server 启动秒退或报错npx 首次下载失败、Node 版本太低先手动跑一遍启动命令看报错升级 Node 到 18工具列表里看不到 Server配置文件放错目录、JSON 格式错误确认客户端读取的是哪个配置文件用 JSON 校验工具检查远程 MCP 连不上URL 拼错、token 过期、目标服务不在线用 curl 先测目标地址是否能访问、鉴权是否通过Figma 报 401Token 权限不足或已失效去 Figma 重新生成 Token只读权限即可数据库认证失败密码含特殊字符被 JSON 转义破坏密码用环境变量注入避免直接写在 JSON 里本地端口冲突多个 Server 都占了同一端口换一个端口或只保留一个同类 Server6.2 工具不调用、调用了报错有时候工具明明在列表里AI 却一直不用或者调用了返回一堆看不懂的错误。我遇到最多的是工具返回值太大——比如让 AI 读取整个数据库的表结构返回内容超出上下文窗口结果被截断AI 就开始胡言乱语。解决办法是把任务拆细比如只描述 users 表而不是描述所有表。还有一类情况是权限确认机制。Claude Code 这类客户端对危险操作会弹确认框如果你在自动化/CI 环境下跑这些确认流程会卡住任务。解决办法是提前在配置里把工具权限设置为允许或者写清楚哪些工具需要人工确认。6.3 配置文件里的细节坑Windows 用户特别容易栽在这里。路径要写成E:\\mcp\\server.exeJSON 里必须双反斜杠。另一个坑是npx的缓存问题——你更新了 Server 版本但 npx 还在用旧缓存导致行为异常。这时候先npx clear-cache试试或者直接改用pnpm dlx/bunx这类工具每次都是干净环境。还有别忽视日志。大多数客户端都能查看 MCP Server 的启动日志出问题先看日志比自己瞎猜效率高得多。6.4 生态里还有哪些值得关注的 MCP除了上面三个重点场景我列一下目前在各自圈子热度很高的方向GitHub MCP仓库管理、Issue 处理、Docker MCP容器操作、Blender MCP3D 建模指令、BurpSuite MCP 和 Yakit MCP安全测试、各类数据库和缓存的官方 MCP。虽然我不建议一次性装一大堆但了解生态版图是有必要的——你总有一天会碰到要是 AI 能直接操作某某工具就好了的时刻那时候大概率已经有人写好 MCP Server 了。7. 一些我踩过坑之后的真心话和扩展玩法7.1 最实用的三个场景和两个痛点用了大半年 MCP我最满意的三个场景是设计稿转前端代码、自然语言查库写报表、让 AI 自己用浏览器验证页面功能。这三个工作有一个共同点以前都要靠人翻译信息把设计稿看一遍、把 SQL 写一遍、把页面点一遍现在 AI 直接吃结构化数据省掉的不只是时间还有交接损耗。痛点是显而易见的。调试 MCP Server 本身有时候比写代码还烦因为你要同时看客户端日志、Server 日志、网络请求三层东西。远程 Server 的延迟也真实存在模型在等工具返回的时候体验和本地 stdio 完全不是一个级别。还有就是 token 消耗工具返回的大段内容都会计费查询大表时账单涨得飞快。7.2 接下来可以怎么扩展如果看完这篇文章你准备动手我的建议是从一个场景开始别同时接五六个。先把 Figma 或者数据库其中一个跑通建立对配置 Server、调用工具、看日志这套流程的体感再往下一个场景扩展。更进阶的玩法是把公司内部的东西包成私有 MCP Server。比如你团队有个内部 API 或内部知识库照着 MCP 文档写一个薄封装AI 编辑器就能直接查询这比让模型凭空猜准确得多。另外别迷信来路不明的 MCP Server——它本质上是本地执行代码供应链安全比功能丰富更重要只装知名项目和主动审查过源码的包。我个人现在的习惯是新项目开工之前先想一遍哪些环节可以让 AI 直接碰工具有答案就接一个 MCP没有就坚决不装。工具链不是越厚越好AI 编辑器加外挂这件事讲究的是克制。
返回列表