Expo Dev Assistant
Manage Expo and React Native projects from setup to release. Trigger cloud builds, publish over-the-air updates, and submit releases to App Store and Google Play with clear status and logs. Run diagnostics, validate configuration, and access relevant docs to resolve issues faster.
Ask AI about Expo Dev Assistant
Powered by Claude Β· Grounded in docs
I know everything about Expo Dev Assistant. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Expo MCP Server
Model Context Protocol server for Expo.dev β programmatically manage Expo projects and EAS services through AI assistants like Claude.
What It Does
This MCP server gives AI assistants full control over Expo/React Native development workflows:
| Category | Capabilities |
|---|---|
| Project Setup | Initialize projects, install packages, configure apps, generate native code |
| Cloud Builds | Trigger iOS/Android builds, monitor progress, view logs, cancel builds |
| OTA Updates | Publish updates to branches, manage channels, instant deployments |
| App Submission | Submit to App Store Connect and Google Play Console |
| Diagnostics | Run health checks, validate configurations |
Quick Start
Install via Smithery
npx @smithery/cli install expo-mcp-server
Or Add to MCP Config
{
"mcpServers": {
"expo-dev": {
"command": "npx",
"args": ["-y", "expo-mcp-server"],
"env": {
"EXPO_TOKEN": "your_token_here"
}
}
}
}
Get your token at expo.dev/settings/access-tokens
Tools
Project Management
expo_init_projectβ Create new Expo projects with templatesexpo_install_packagesβ Install packages with version validationexpo_get_configβ View and validate app configurationexpo_prebuildβ Generate native iOS/Android directories
EAS Build
eas_build_createβ Trigger cloud builds (iOS, Android, or both)eas_build_listβ List builds with filteringeas_build_statusβ Get build status and logseas_build_cancelβ Cancel in-progress builds
EAS Update (OTA)
eas_update_publishβ Publish over-the-air updateseas_update_listβ List published updateseas_channel_createβ Create update channels
EAS Submit
eas_submit_iosβ Submit to App Store Connect/TestFlighteas_submit_androidβ Submit to Google Play Console
Utilities
expo_doctorβ Run project diagnosticsexpo_whoamiβ Check authentication statuseas_project_infoβ Get EAS project metadata
Resources
The server exposes documentation as MCP resources:
expo://docs/llms # Complete Expo docs (LLM-optimized)
expo://docs/eas-build # EAS Build guide
expo://docs/eas-update # EAS Update guide
expo://docs/eas-submit # EAS Submit guide
expo://docs/cli-reference # Expo CLI reference
Example Workflows
"Build my app for both platforms"
β eas_build_create(platform: "all", profile: "production")
"Push a hotfix to production"
β eas_update_publish(branch: "production", message: "Fix auth bug")
"Submit the latest build to TestFlight"
β eas_submit_ios(buildId: "abc-123")
Output Formats
All tools support:
markdown(default) β Human-readable tablesjsonβ Structured data for processing
Development
git clone https://github.com/CaullenOmdahl/expo-mcp-server
cd expo-mcp-server
npm install
npm run build
npm run dev # Run with Smithery playground
Architecture
src/
βββ index.ts # Server entry point
βββ types.ts # Shared schemas
βββ resources/ # Documentation resources
βββ tools/ # Tool implementations
β βββ project.ts # Project management
β βββ build.ts # EAS Build
β βββ update.ts # EAS Update
β βββ submit.ts # EAS Submit
βββ utils/ # CLI execution, formatting
Built with TypeScript, MCP SDK, and Zod validation.
Requirements
- Node.js 18+
- Expo account with access token
Links
License
MIT
