Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Expo

БесплатноНе проверен

Enables AI assistants to execute Expo and EAS operations including project setup, cloud builds, OTA updates, app submission, and diagnostics.

GitHubEmbed

Описание

Enables AI assistants to execute Expo and EAS operations including project setup, cloud builds, OTA updates, app submission, and diagnostics.

README

Model Context Protocol (MCP) server capabilities for Expo and EAS workflows.

This repository contains:

  • packages/expo-mcp: MCP tools, prompts, and docs resources for Expo projects
  • packages/mcp-tunnel: stdio/tunnel proxy layer for local and remote MCP transport
  • expo-mcp-server.mjs: dynamic launcher for Codex/Claude MCP config

What It Does

The Expo MCP server enables AI assistants to execute Expo and EAS operations:

Category Capabilities
Project Setup Initialize projects, install packages, prebuild native folders, inspect config
Cloud Builds Create/list/view/cancel EAS builds
OTA Updates Publish/list updates and create channels
App Submission Submit iOS and Android builds
Diagnostics Run expo doctor, check auth, inspect EAS project metadata
Docs Access Search/fetch Expo docs and expose docs as MCP resources

Requirements

  • Node.js 18+
  • Bun (for local development scripts in this monorepo)
  • Expo account
  • EXPO_TOKEN for account/EAS actions in MCP tools

Quick Start

bun install
bun run build

MCP Setup

Use the dynamic launcher so manual server start is not required:

{
  "mcpServers": {
    "expo-mcp-demo": {
      "command": "node",
      "args": [
        "D:/expo-mcp-demo/expo-mcp-server.mjs",
        "--root",
        "D:/expo-mcp-demo"
      ],
      "env": {
        "EXPO_TOKEN": "your_token_here"
      }
    }
  }
}

Optional launcher flags/env:

  • --root / EXPO_PROJECT_ROOT: Expo project root
  • --dev-server-url / EXPO_DEV_SERVER_URL: explicit Metro URL
  • --mcp-server-url / EXPO_MCP_SERVER_URL: tunnel server URL

Dynamic behavior:

  • If dev server URL is omitted, launcher auto-detects local Metro/Expo server.
  • If tunnel URL is present, server runs in composite mode (stdio + tunnel).
  • Otherwise server runs as stdio MCP only.

Tools

Project Management

  • expo_init_project
  • expo_install_packages
  • expo_get_config
  • expo_prebuild

EAS Build

  • eas_build_create
  • eas_build_list
  • eas_build_status
  • eas_build_cancel

EAS Update (OTA)

  • eas_update_publish
  • eas_update_list
  • eas_channel_create

EAS Submit

  • eas_submit_ios
  • eas_submit_android

Utilities

  • expo_doctor
  • expo_whoami
  • eas_project_info

Docs Tools

  • expo_docs_list
  • expo_docs_search
  • expo_docs_get

Dev/Automation Tools

  • open_devtools
  • collect_app_logs
  • expo_router_sitemap
  • automation_tap
  • automation_take_screenshot
  • automation_find_view_by_testid
  • automation_find_view
  • automation_tap_by_testid
  • automation_take_screenshot_by_testid
  • automation_swipe
  • automation_scroll
  • automation_type_text
  • automation_press_key

MCP Resources

Docs resources exposed by the server:

  • expo://docs/llms
  • expo://docs/llms-full
  • expo://docs/llms-eas
  • expo://docs/llms-sdk
  • expo://docs/llms-sdk-v53.0.0
  • expo://docs/llms-sdk-v52.0.0
  • expo://docs/llms-sdk-v51.0.0
  • expo://docs/eas-build
  • expo://docs/eas-update
  • expo://docs/eas-submit
  • expo://docs/cli-reference

Output Formats

Expo/EAS tools support:

  • markdown (default)
  • json

Development

Root

bun run build
bun run lint
bun run test

Per package

cd packages/expo-mcp
bun run build
bun run lint
bun run test
bun run typecheck

How To Add a New Tool

  1. Add tool implementation in packages/expo-mcp/src/mcp/tools/expo/*.ts or relevant module.
  2. Register tool in packages/expo-mcp/src/mcp/tools.ts.
  3. If tool needs docs references, update packages/expo-mcp/src/mcp/tools/expoDocs.ts.
  4. Add/update output schema and error handling through expo-utils.
  5. Run:
    • bun run typecheck in packages/expo-mcp
    • bun run build in packages/expo-mcp
    • bun run lint --max-warnings=0 in affected package(s)

Dependency Notes

  • Runtime CLI execution uses npx expo and npx eas-cli.
  • EAS commands require EXPO_TOKEN and run non-interactive in MCP context.
  • Transport layer supports both newline JSON and Content-Length framing for MCP compatibility.

Troubleshooting

  • Authentication required for EAS commands:
    • Set EXPO_TOKEN in MCP server environment.
  • No dev server found:
    • Start Metro (npx expo start) or set EXPO_DEV_SERVER_URL.
  • MCP startup/handshake issues:
    • Ensure launcher points to expo-mcp-server.mjs.
    • Rebuild changed packages (bun run build).

License

MIT

from github.com/SajidAlee1/expo-mcp

Установка Expo

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/SajidAlee1/expo-mcp

FAQ

Expo MCP бесплатный?

Да, Expo MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Expo?

Нет, Expo работает без API-ключей и переменных окружения.

Expo — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Expo в Claude Desktop, Claude Code или Cursor?

Открой Expo на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Expo with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории ai