MCP tools for EAS Build and Workflows

Mustafa AbbanMustafa Abban
MCP tools for EAS Build and Workflows

Expo MCP Server now includes tools that allow your AI assistants to interact directly with your EAS Builds and Workflows. These tools enable you to manage builds, trigger workflows, and automate debugging issues, all through interacting with your favorite AI-assisted development tools like Claude Code, Cursor, and VS Code.

What's new

Build management tools

You can now ask your AI assistant to:

  • build_info Check build status: "Get the status of my latest iOS build"
  • build_list List builds: “What are my recent builds”
  • build_logs View build logs: "Show me the logs for the failed build"
  • build_run Trigger new builds: "Run a production build for iOS"
  • build_cancel Cancel running builds: "Cancel the build that is currently in progress"
  • build_submit Submit to app stores: "Submit the latest build to the App Store"

Workflow automation tools

Manage your entire workflow pipeline through conversational prompts:

  • workflow_create Create workflows: "Create a workflow for building and deploying"
  • workflow_info Monitor runs: "Get the status of the latest workflow run"
  • workflow_list List workflows: “What are my recent workflows”
  • workflow_logs View logs: "Show me the logs for the build job in the workflow"
  • workflow_run Trigger runs: "Run the build-and-deploy workflow"
  • workflow_validate Validate configurations: "Validate my workflow file"
  • workflow_cancel Cancel workflows: "Cancel the running workflow"

Examples

Retrieve recent workflow runs and investigate the root cause behind their failures.

Code
> what are my recent workflows
o expo-mcp - workflow_list (MCP)(appId: "APP-ID")
o Here are your recent EAS workflows:
+--------------+----------------------+-------------+--------+----------------+
| Date | Workflow | Status | Branch | Commit |
+--------------+----------------------+-------------+--------+----------------+
| Feb 4, 2026 | Android Build | ✅ SUCCESS | main | 186dbaa - "ex" |
| Jan 30, 2026 | iOS Build and Submit | ❌ FAILURE | main | 186dbaa - "ex" |
| Jan 28, 2026 | iOS Build and Submit | ❌ FAILURE | main | 186dbaa - "ex" |
| Jan 28, 2026 | Android Build | ⚪ CANCELED | main | 186dbaa - "ex" |
| Jan 27, 2026 | Android Build | ⚪ CANCELED | main | 186dbaa - "ex" |
| Jan 26, 2026 | iOS Build and Submit | ⚪ CANCELED | main | 186dbaa - "ex" |
| Jan 26, 2026 | Android Build | ⚪ CANCELED | main | 186dbaa - "ex" |
| Jan 26, 2026 | Android Build | ✅ SUCCESS | main | — |
| Jan 25, 2026 | iOS Build and Submit | ❌ FAILURE | main | — |
| Jan 25, 2026 | iOS Build and Submit | ❌ FAILURE | main | — |
+--------------+----------------------+-------------+--------+----------------+
Your most recent workflow (Android Build from today) succeeded. The iOS
Build and Submit workflows have been failing. Would you like me to
investigate the iOS build failures?
> whats the info for the failed ios one
o expo-mcp - workflow_info (MCP)(workflowRunId)
| {
"status": "FAILURE",
... +104 lines (ctrl+o to expand)
o Here's the workflow info for the failed iOS Build and Submit (Jan 30, 2026):
Workflow Jobs:
+-----------------+ +----------------------+
| Build iOS |---->| Submit to App Store |
| ✅ SUCCESS | | ❌ FAILURE |
+-----------------+ +----------------------+
+---------------------+------------+----------------------------------------------+
| Job | Status | Details |
+---------------------+------------+----------------------------------------------+
| Build iOS | ✅ SUCCESS | Built v1.0.0 (build 23), profile: production |
| Submit to App Store | ❌ FAILURE | Unknown error |
+---------------------+------------+----------------------------------------------+
The iOS build succeeded and produced an IPA, but the App Store submission
failed with an unknown error.
Would you like me to fetch the logs for the submit job to see what went wrong?

Example scenario with interacting with build tools to inspect and rerun a build.

Code
> what are the logs of my recent build
o expo-mcp - build_logs (MCP)(buildId)
o Here's a summary of the logs for your most recent Android build:
Build Summary
Build ID: 60e2fdf1-fc7a-4b08-89c3-fe53bb2ea311
Status: ✅ SUCCESS
Build Environment
- Machine: AMD, 4 vCPUs, 16 GB RAM
- Image: ubuntu-22.04-jdk-17-ndk-r26b
- Node.js: 20.19.2
- Java: 17
- Bun: 1.2.4
- NDK: 26.1.10909125
Build Phases
+----------------------------+-----------------------+
| Phase | Result |
+----------------------------+-----------------------+
| QUEUE | ✅ success |
| SPIN_UP_BUILDER | ✅ success |
| RUN_GRADLEW | ✅ success (14m 55s) |
| UPLOAD_APPLICATION_ARCHIVE | ✅ success |
| SAVE_CACHE | ✅ success |
+----------------------------+-----------------------+
Output
- APK Size: 81.1 MB
- Location: app-release.apk
- Gradle Tasks: 862 executed, 1 up-to-date (863 total)
Cache Stats
- Cache Hit Rate: 25% (216/864 hits)
- Cache Size: 0.04 GB / 5.00 GB
The build completed successfully with no errors. The Gradle build took
the majority of the time at ~15 minutes.
> run another android build
o expo-mcp - build_run (MCP)(appId, platform: "ANDROID", buildProfile: "preview", gitRef: "main")
| # Build Triggered
**Build ID:** 2d7f5b5f-bcb0-42e3-b5f2-d163789b89c3
... +5 lines (ctrl+o to expand)
o Android build started.
+----------+----------------------------------------+
| Field | Value |
+----------+----------------------------------------+
| Build ID | 2d7f5f5f-bcb0-43e3-b5f2-d163789b89c3 |
| Platform | Android |
| Profile | preview |
| Branch | main |
+----------+----------------------------------------+
The build is now queued. You can check its status anytime or I can
check it for you.

Getting started

We are excited to share these tools with the Expo community! To use these tools, you'll need:

  • An EAS paid plan
  • The Expo MCP Server configured in your AI-assisted tool
  • An authenticated connection to your Expo account

Learn more in our MCP documentation.