Model Context Protocol server for Expo.dev - enables programmatic interaction with Expo projects and EAS services
Configuration
View docs{
"mcpServers": {
"caullenomdahl-expo-mcp-server": {
"url": "https://mcp.example.com/mcp",
"headers": {
"EXPO_TOKEN": "YOUR_TOKEN_HERE"
}
}
}
}You can use the Expo MCP Server to programmatically manage Expo and EAS workflows through AI assistants, enabling project setup, cloud builds, OTA updates, app submissions, and health checks from a single MCP Endpoint or local process.
You interact with the MCP server through an MCP client that exposes a set of labeled actions. These actions span project creation, package management, configuration validation, native code generation, triggering cloud builds, publishing OTA updates, submitting builds to app stores, and running diagnostics. You can combine actions to automate end-to-end workflows, such as initializing a project, prebuilding native directories, kicking off a mobile build, publishing an update to a channel, and submitting the latest build for review.
Prerequisites you need before installing and using the MCP server are a Node.js runtime and a valid Expo account with an access token.
# Install the MCP server client via Smithery (recommended single command setup)
npx @smithery/cli install expo-mcp-server
# Or add to your MCP configuration using the example below
```
```json
{
"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.The MCP server supports a collection of tools that map to Expo and EAS workflows. You can run them via an MCP client to perform project setup, builds, updates, and submissions. The server exposes documentation resources for quick reference, and you can monitor build progress, view logs, and cancel builds when needed.
Build my app for both platforms: trigger cloud builds for iOS and Android in production profile.
Push a hotfix to production: publish an OTA update to the production channel with a descriptive message.
Submit the latest build to TestFlight: submit iOS build metadata to App Store Connect for review.
Create new Expo projects with templates.
Install packages with version validation.
View and validate app configuration.
Generate native iOS/Android directories.
Trigger cloud builds (iOS, Android, or both).
List builds with filtering.
Get build status and logs.
Cancel in-progress builds.
Publish over-the-air updates.
List published updates.
Create update channels.
Submit to App Store Connect/TestFlight.
Submit to Google Play Console.
Run project diagnostics.
Check authentication status.
Get EAS project metadata.