React 正式接入 AI

作者:前端充电宝

原文:mp.weixin.qq.com/s/4wjfQT-5V...

最近,React 官方在其 GitHub 仓库中引入了一个实验性项目 ------ React MCP Server ,通过 MCP 将大模型与 React 编译工具链连接起来。简单来说,它使 AI 助手不仅能够生成代码,还能以"工具调用 "的方式直接参与 React 代码的编译优化和文档查询

github.com/facebook/re...

功能

React MCP Server 实现了 MCP 协议,并定义了两个主要工具供 AI 使用:

  • 编译工具 :通过集成 babel-plugin-react-compiler,该工具允许 AI 对传入的 React 组件代码进行编译优化。它返回优化后的代码、性能建议以及编译诊断信息,为后续的性能分析或自动重构提供依据。
  • 文档查询:封装了对 React 官方文档的搜索接口,使用 Algolia 提供的 API 实现内容检索。AI 可通过调用此工具实时查询 React API、用法、最佳实践等文档内容,支持在编译优化过程中提供依据和解释。

React MCP Server 的一个重要应用场景是:借助 AI 自动优化 React 组件的性能

  1. 1开发者提供一个需要优化的组件;
  2. 2模型通过调用 compile 工具多次执行编译;
  3. 3每轮编译后测量性能(如 Core Web Vitals 分数);
  4. 4根据结果迭代优化组件结构;
  5. 5同时调用 docs 工具查阅最佳实践作为参考。

通过这种「编译 → 测量 → 改进」的闭环流程,AI 可以模拟开发者的性能优化过程,实现自动化的 React 性能优化策略。

使用

要在如 Claude Desktop 等支持 MCP 的平台中启用 React MCP Server,可按以下配置方式注册:

json 复制代码
{
  "mcpServers": {
    "react": {
      "command": "/Users/<username>/.asdf/shims/node",
      "args": [
        "/Users/<username>/code/react/compiler/packages/react-mcp-server/dist/index.js"
      ]
    }
  }
}

然后在 React 项目中运行以下命令,启动监听模式(每次改动需重启 Claude 才会生效):

vbscript 复制代码
yarn workspace react-mcp-server watch

原理

React MCP Server 位于 React 仓库中的 compiler/packages/ 目录,属于 React Compiler 系统的一部分。它的工作机制如下:

  1. 1利用 Babel 将输入代码解析为 AST;
  2. 2调用 babel-plugin-react-compiler 对代码进行优化转换;
  3. 3通过 MCP 协议暴露这些编译能力;
  4. 4提供标准接口供支持 MCP 的 AI 工具调用。

因此,它本质上是一个为大模型暴露的"编译器远程控制接口" ,用于连接 AI 与 React 编译系统的边界。

第三方 React MCP

以下是一些社区构建的 React MCP Server 实现或插件,扩展了 MCP 协议在设计、分析、交互等方向的能力:

  • mcp-figma-to-react:
    • Github:github.com/studentofjs...
    • 功能:将 Figma 设计文件转换为 React 组件,支持 TypeScript 和 Tailwind CSS,还能提升可访问性。
  • react-analyzer-mcp
    • GIthub:github.com/azer/react-...
    • 功能:分析 JSX/TSX 文件,提取组件结构、属性和文档说明,支持生成整个项目的组件文档目录。
  • react-mcp:
  • vite-plugin-react-mcp:
    • Github:github.com/Dogtiti/vit...
    • 功能:让 AI 能实时读取并操作 React 组件的结构、状态和 UI,用于交互式开发与调试。
相关推荐
+VX:Fegn089540 分钟前
计算机毕业设计|基于springboot + vue蛋糕店管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·课程设计
半个落月1 小时前
LangChain.js Agent Memory 实战(下):用 Milvus 构建可检索的长期记忆
javascript·langchain
半个落月1 小时前
LangChain.js Agent Memory 实战(上):从内存对话、文件持久化到截断与摘要
javascript·langchain
tokenKe2 小时前
Tencent BrowserSkill :让 AI Agent 借用你的真实浏览器| 已登录浏览器与编码 Agent 之间的本地桥 |SSP
chrome·开源·github
Nicander2 小时前
我给 Excalidraw 做了一个本地工作区:DrawSpace
前端·开源
linux_cfan4 小时前
17 · 引擎适配器全景:HLS/DASH/Vimeo/Mux/Cast
前端·javascript·音视频
计算机魔术师4 小时前
烧掉2780亿美元还不够?OpenAI的资本豪赌让人头皮发麻
前端
IT_陈寒5 小时前
Java线程池用错参数,我的服务居然悄悄崩溃了
前端·人工智能·后端
卡布鲁5 小时前
React useMemo 与 useCallback 完全指南:原理、场景与避坑
前端·react.js
碳基修炼6 小时前
排查记:本地 devServer 是 http,浏览器却把 302 重定向升级成了 https
前端·http