React Native MCP Server
<img width="1532" height="324" alt="react-native-upgrader-mcp-cover" src="https://github.com/user-attachments/assets/dc1b4694-6943-436a-b288-ed54da5d5dec" />
# react-native-upgrader-mcp
A Model Context Protocol (MCP) server that streamlines React Native project upgrades. It provides developers with automated tools to seamlessly upgrade React Native CLI projects to any desired version or the latest stable release. The MCP Server uses `rn-diff-purge` to generate the diff.
## 🚀 Features
- **Version Management**: Fetch and track the latest stable React Native versions with semantic versioning support
- **Upgrade Automation**: Generate detailed upgrade/downgrade diffs between versions with step-by-step migration guidance
- **Release Candidate Support**: Access and evaluate pre-release versions for early testing and feature validation
> **Important:** This MCP Server is not compatible with Expo projects.
## 🔧 Setup
### Cursor
1. Open Cursor Settings
2. Look for an option called "Tools and integrations" and click on it
3. Click on "New MCP Server"
4. Configure:
```json
{
"mcpServers": {
"react-native-upgrader-mcp": {
"command": "npx",
"args": ["-y", "react-native-upgrader-mcp"]
}
}
}
```
5. Restart Cursor
### VS Code
1. Install MCP extension (e.g., "MCP Server Manager")
2. Configure:
```json
{
"mcp.servers": {
"react-native-upgrader-mcp": {
"command": "npx",
"args": ["-y", "react-native-upgrader-mcp"]
}
}
}
```
## 🛠️ Tools
- `get-stable-version` - Get latest stable version
- `get-react-native-diff` - Generate upgrade diff between versions
- `get-rc-version` - Get RC versions
## 🛠️ Development
```bash
git clone https://github.com/patrickkabwe/react-native-upgrader-mcp.git
cd react-native-upgrader-mcp
bun install
bun run build
bun run dev
```
## 🤝 Contributing
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Submit a pull request
## 📄 License
[MIT License](./LICENSE)
TDQS
Scored across 2 tools
The two tools have completely distinct purposes with no overlap. get-react-native-diff provides detailed upgrade instructions between versions, while get-react-native-stable-version simply retrieves the latest stable version number. An agent would never confuse which tool to use for which task.
Both tools follow the exact same naming pattern: get-react-native- followed by a descriptive noun (diff, stable-version). The kebab-case is consistent throughout, and the verb 'get' is used consistently for both retrieval operations.
With only 2 tools, this server feels severely underpowered for a React Native upgrade domain. While the tools work together logically, there are obvious missing operations like applying the diff, checking current version, or handling specific platform configurations separately. The scope suggests more comprehensive tooling would be appropriate.
The server is severely incomplete for React Native upgrade workflows. While it provides version information and a diff, there's no tool to actually execute the upgrade steps described in the diff output. Agents would be left with detailed instructions but no automated way to implement them, creating a significant gap in the operational surface.