使用说明
React Docs MCP服务器
人工智能为Claude、Cursor和其他MCP客户端在React文档上提供语义搜索。
也可用——相同的引擎,其他文档: 📱 react本地文档mcp (仓库)--官方React Native文档(reactnative.dev),每个版本都固定 📋 react钩子表单文档mcp (仓库)--官方React Hook Form文档(React Hook Form.com)
所有软件包共享一个搜索引擎(在此monorepo中开发
packages/)因此,所有这些地方都得到了改善。
🚀 安装(一个命令)
克劳德代码
claude mcp add --transport stdio react-docs -- npx react-docs-mcp
克劳德桌面版
编辑: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或 %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"react-docs": {
"command": "npx",
"args": ["-y", "react-docs-mcp"]
}
}
}
光标
设置 → 光标设置 → 工具和MCP → 添加服务器:
{
"mcpServers": {
"react-docs": {
"command": "npx",
"args": ["-y", "react-docs-mcp"]
}
}
}
就是这样! 重新启动编辑器并询问React。
特性
- 🔑 没有API密钥:与托管文档服务(Context7、GitMCP)不同,所有内容都在您的计算机上运行——没有帐户、没有密钥、没有速率限制
- 🔌 离线工作:克隆官方react.dev文档仓库一次,然后在本地搜索——查询时没有网络调用
- 🔍 语义搜索:使用嵌入进行概念匹配的人工智能搜索
- ⚡ 快速结果:混合关键字+语义排名的内存向量搜索
- 📦 零配置:与合作
npx-无需安装 - 🤖 本地AI:本地运行嵌入(无API成本)
- 📝 简明回答:返回摘要而不是完整文档
- 🔄 自动同步:自动从react.dev中提取最新文档
配置
适用于克劳德桌面
添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"react-docs": {
"command": "node",
"args": ["/absolute/path/to/reactDocsMcp/dist/index.js"]
}
}
}
给Claude代码
添加到MCP设置配置中:
{
"mcpServers": {
"react-docs": {
"command": "node",
"args": ["/absolute/path/to/reactDocsMcp/dist/index.js"]
}
}
}
用法
配置后,服务器为AI代理提供以下功能:
工具
search_react_docs
在React文档中搜索。
参数:
query(必填):搜索查询字符串section(可选):按部分筛选(学习、参考、博客、社区)limit(可选):最大结果数(默认值:10,最大值:50)
示例:
Search for "useState hook" in the learn section
get_doc
获取特定的文档页面。
参数:
path(必填):文档路径(例如,“learn/hocks/useState”)full(可选):返回完整的原始页面,而不是~1500个字符的摘要(默认值:false)
示例:
Get the useState documentation
为什么 full? 对于大多数API引用来说,默认的~1500个字符的摘要已经足够了,但它可以截断较长页面的中途——迁移指南、升级演练或任何具有许多顺序步骤的内容。如果总结似乎半途而废,或者你需要指南的每一步,请索取整页:
Get the full content of the React 19 upgrade guide, not just the summary
这叫 get_doc 随着 { "path": "learn/upgrading-to-react-19", "full": true } 并返回完整的原始页面,而不是截断的摘要。
list_sections
列出所有可用的文档部分。
示例:
What sections are available?
update_docs
从Git仓库中提取最新文档。
命令行界面
npx react-docs-mcp --version # print the installed package version and exit
(版本固定通过 --docs-version 是一个 react本地文档mcp 特性--react.dev没有版本化文档。)
示例:
Update the React documentation
资源
服务器使用URI模式将文档作为资源公开:
react-docs://{section}/{path}
例子:
react-docs://learn-列出所有学习部分文档react-docs://learn/hooks/useState-获取useState文档react-docs://reference/react/Component-获取组件API引用
发展
以开发模式运行
npm run dev
构建
npm run build
项目结构
reactDocsMcp/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── docsManager.ts # Git & file operations
│ ├── markdownParser.ts # Markdown parsing
│ ├── searchEngine.ts # Search implementation
│ ├── types.ts # TypeScript types
│ └── config.ts # Configuration
├── dist/ # Compiled output
└── TECHNICAL_SPEC.md # Technical documentation
运作原理
- 初始化:首次运行时,克隆官方React文档库
- 索引:解析所有markdown文件并构建内存中的搜索索引
- 搜索:提供基于关键字的搜索和相关性评分
- 更新:可以从存储库中提取最新更改并重新索引
故障排除
服务器无法启动
- 确保已安装Node.js 18+
- 检查构建是否成功完成(
npm run build) - 验证MCP配置中的路径是否绝对正确
无搜索结果
- 存储库可能仍在克隆中(检查控制台输出)
- 试着跑步
update_docs刷新索引的工具
Git克隆失败
- 检查互联网连接
- 验证Git是否已安装且可访问
- 检查防火墙/代理设置
技术细节
有关详细的技术信息,请参阅 技术规格.md.
许可证
麻省理工学院
贡献
这是一个将React文档连接到AI编码代理的个人项目。请随意分叉和修改以供自己使用。