React Native Expo MCP
Provides guidance and best practices for integrating Axios as the networking layer for API calls in React Native and Expo projects.
Delivers comprehensive tools for Expo development, including project scaffolding, EAS CLI commands, setup guides, and troubleshooting for mobile app workflows.
Provides troubleshooting support and technical documentation for the Metro bundler within the context of React Native development.
Offers specialized knowledge for building mobile applications using React Native, including support for React Navigation and architectural patterns.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@React Native Expo MCP Scaffold a new project using Expo Router and NativeWind"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
react-native-expo-mcp
MCP server for React Native + Expo development with Claude Code.
Gives Claude deep knowledge about Expo Router, NativeWind, Zustand + MMKV, Axios, TanStack Query, EAS Build, performance optimization, and TypeScript patterns — so it automatically calls the right tool while you code.
Two ways to use this
Option A — MCP Server (recommended)
Claude calls the tools automatically during development. No copy-paste needed.
git clone https://github.com/zahargusyatin/react-native-expo-mcp.git
cd react-native-expo-mcp
npm install && npm run build
claude mcp add --global react-native-expo -- node /path/to/react-native-expo-mcp/dist/index.jsAfter connecting, Claude will automatically call the right tool when you ask it to create a component, screen, store, API hook, etc.
Option B — Read the source docs directly
If you don't want to run an MCP server, the source material is in docs/. These are the original reference documents the MCP content is based on — you can paste them into any AI chat or read them yourself.
File | Contents |
Architecture, Logic/UI separation, components, state, API, styling, navigation | |
Step-by-step project setup (tools → EAS → CI/CD) | |
Performance deep-dive: lists, memory, Concurrent React, Reanimated, bundle analysis |
Related MCP server: Expo MCP Server
Tools (13 total)
Pattern tools — Claude calls these automatically while coding
Tool | Call when... |
| Creating a component, button, card, list item |
| Creating a new screen or route |
| Working with routes, deep links, auth guard |
| Creating a Zustand store or working with global state |
| Creating API services or data fetching hooks |
| Styling components with NativeWind |
| Optimizing lists, images, bundle, animations |
| Deciding where to place a new file |
| Writing types or interfaces |
| Debugging memory leaks or performance issues |
Setup tools — used once when creating a project
Tool | Purpose |
| Step-by-step guide for creating a new Expo project from scratch |
| Generates starter files (layouts, store, API client, screens, config) |
| Generates |
Prompt
init-mobile-project — interactive wizard that asks about your project and calls the right tools.
How automatic tool calling works
When you add generate-claude-md output to your project as CLAUDE.md, Claude knows to call tools automatically:
You: "Create a product card component"
Claude: calls get-component-patterns → reads Pressable, expo-image, React.memo patterns → writes correct code
You: "Add a catalog screen"
Claude: calls get-screen-architecture → reads Logic/UI separation rules → creates Route + ScreenUI files
You: "The list is laggy"
Claude: calls get-performance-patterns → reads LegendList, FlashList, getItemLayout → optimizesTech stack covered
Expo (Managed Workflow) + Expo Router (file-based routing)
TypeScript strict mode + path aliases
NativeWind v4 (Tailwind CSS for React Native)
Zustand + MMKV (state + persistence)
Axios + TanStack Query v5 (API + server state)
EAS Build + OTA Updates + GitHub Actions
react-native-reanimated, expo-image, LegendList / FlashList
React Compiler (React 19+), Concurrent React, memory profiling
License
MIT
Available Tools
13 toolsgenerate-claude-mdB
Generate a CLAUDE.md file with project rules for Claude Code. Includes tech stack overview, architecture rules, code conventions, and MCP tool usage instructions so Claude automatically calls the right pattern tools during development.
Inputs: appName (required), appDescription, features.
generate-project-filesA
Generate starter files for a NEW React Native + Expo Router project. Produces actual file contents: navigation layouts, Zustand store, API client, NativeWind config, TypeScript config, and sample screens.
Inputs: appName (required), features, includeCI.
get-api-patternsA
Get API and data fetching patterns (Axios + TanStack Query). Call this when creating API services or data fetching hooks. Covers Axios client with interceptors, domain-grouped services, custom query/mutation hooks, query key conventions, and QueryClient config. Use topic to get a specific section only.
Inputs: topic, compact.
get-component-patternsA
Get React Native component patterns. Call this when creating any component: button, card, list item, image, form input. Covers Pressable, expo-image, React.memo, React Compiler, composable pattern, and uncontrolled TextInput. Use topic to get a specific section only.
Inputs: topic, compact.
get-memory-optimizationA
Get memory optimization patterns. Call this when debugging memory leaks or performance issues. Covers useEffect cleanup (listeners, timers), closure memory leaks, React Native DevTools memory profiler, view flattening, R8 shrinking for Android, and a common memory leak sources checklist. Use topic to get a specific section only.
Inputs: topic, compact.
get-performance-patternsA
Get performance optimization patterns. Call this when optimizing lists, images, bundle size, or animations. Covers LegendList/FlashList/FlatList, image optimization, tree-shaking, barrel exports, Concurrent React (useDeferredValue, useTransition), InteractionManager, and Reanimated worklets. Use topic to get a specific section only.
Inputs: topic, compact.
get-project-structureA
Get project folder structure and file placement guide. Call this when deciding where to place a new file. Covers the full folder tree, where to put screens/components/hooks/services/stores/types/constants, naming conventions, and import aliases. Use topic to get a specific section only.
Inputs: topic, compact.
get-screen-architectureA
Get screen architecture patterns (Logic/UI separation). Call this when creating a new screen or route. Covers the Route file + ScreenUI file split, naming conventions, and why it matters for testability and SOLID principles. Use topic to get a specific section only.
Inputs: topic, compact.
get-state-patternsA
Get state management patterns (Zustand + MMKV). Call this when creating a store or working with global state. Covers Zustand store setup, MMKV persistence adapter, selectors, useShallow, getState() for outside React, and store organization rules. Use topic to get a specific section only.
Inputs: topic, compact.
get-styling-patternsA
Get styling patterns (NativeWind / Tailwind CSS). Call this when styling components. Covers NativeWind v4 className approach, arbitrary values, cssInterop for third-party components, Tailwind config, JS constants, conditional styles, and setup checklist. Use topic to get a specific section only.
Inputs: topic, compact.
get-typescript-patternsA
Get TypeScript patterns for React Native. Call this when writing types or interfaces. Covers strict mode config, model types, API response types, route param typing, props interface naming, store types, generics for reusable hooks, as const, discriminated unions, and type guards. Use topic to get a specific section only.
Inputs: topic, compact.
setup-new-projectA
Get a step-by-step guide for creating a new Expo Router project from scratch. Covers: project creation, TypeScript strict mode + path aliases, NativeWind v4, folder structure, Zustand + MMKV, Axios + TanStack Query, environment variables, EAS Build, OTA Updates, CI/CD, and build/deploy commands.
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 13 tools
Every tool has a clearly distinct purpose with no ambiguity. Tools are organized by specific domains like navigation, state management, styling, and performance, each targeting a unique aspect of React Native Expo development. The descriptions explicitly state when to call each tool, preventing misselection.
All tools follow a consistent verb_noun pattern with 'get-' or 'generate-' prefixes, except for 'setup-new-project' which still fits the pattern. The naming is highly predictable and readable, making it easy for agents to understand the tool's function at a glance.
13 tools is well-scoped for a comprehensive React Native Expo development server. Each tool covers a critical area like project setup, patterns for components, navigation, state, and performance, ensuring no single tool is redundant and all are necessary for the domain.
The tool set provides complete coverage for React Native Expo development, from initial project generation and setup to detailed patterns for architecture, styling, performance, and memory optimization. It includes all major aspects like navigation, state management, API integration, and TypeScript, with no obvious gaps.
Related MCP Connectors
MCP server that lets your AI assistant build and deploy apps, hosting each one at a live URL.
MCP server for building and testing AI agents with multi-model experimentation and insights.
Official MCP server for Lovable, the AI-powered full-stack app builder.
The official MCP server for Capawesome documentation and Capawesome Cloud.
Related MCP Servers
- AlicenseAqualityBmaintenanceAn MCP server that streamlines the integration of the @appolabs/appo SDK into web applications by providing tools for code generation, setup validation, and debugging. It enables AI assistants to generate React hooks and components for mobile-web features like push notifications, biometrics, and native device APIs.219 npmMIT
- FlicenseNot gradedqualityNot gradedmaintenanceA Model Context Protocol server designed to streamline Expo and React Native development for AI assistants like Cursor and Claude. It provides a comprehensive suite of tools for project initialization, EAS builds, OTA updates, and development server management.1-
- AlicenseAqualityDmaintenanceAn MCP server for React Native development with Expo, offering automated code remediation, refactoring, testing, and analysis tools to accelerate development and enforce best practices.33616 npm3MIT
- AlicenseAqualityCmaintenanceMCP server that gives AI coding agents hands, eyes and a mechanic's ear for React Native development.933 npm2MIT