Expo MCP Server
Allows AI assistants to inspect and diagnose Expo-based React Native projects, providing tools for project summary, expo-doctor checks, dependency checks, and public configuration retrieval.
Click on "Install 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., "@Expo MCP ServerRun expo-doctor on my project"
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.
Expo MCP Server (tools/expo-mcp)
Português
Visão Geral
O Expo MCP Server é um servidor MCP (Model Context Protocol) local desenvolvido para permitir que assistentes de IA (como Cursor, Claude Desktop ou agentes customizados) inspecionem e diagnostiquem projetos React Native baseados em Expo com segurança, via transporte stdio.
Funcionalidades
O servidor oferece 4 ferramentas somente leitura:
expo_project_summaryLe os arquivospackage.jsone as configurações públicas do Expo, retornando o nome do projeto, versão, versão do Expo, versão do React Native, scripts disponíveis, gerenciador de pacotes identificado pelo lockfile, estrutura de pastas (android,ios,app,src/app) e presencas deexpo-routerouexpo-dev-client. NUNCA retorna valores de arquivos.env.expo_doctorExecutanpx expo-doctore retorna o resultado estruturado (status de sucesso, código de saída, duração em milissegundos, stdout, stderr e flag de timeout).expo_dependencies_checkExecutanpx expo install --checkem modo somente leitura (forçandoCI=1no processo filho para impedir prompts interativos).expo_public_configExecutanpx expo config --type public, faz o parse do JSON e sanitiza o resultado removendo campos sensíveis (como tokens, senhas, chaves e credenciais), além de limitar a profundidade e tamanho total do objeto.
Arquitetura de Segurança
Diretório Raiz Fixo: O diretório do projeto vem estritamente da variável de ambiente
EXPO_PROJECT_ROOT. O caminho é resolvido, normalizado e validado. Chamadas que tentem alterar o diretório via argumentos são rejeitadas.Sem Invocação de Shell: Todos os processos são disparados usando
spawncomshell: false. No Windows, o comando é resolvido comcmd.exe /c npx.Lista de Permissões (Allowlist): Apenas os comandos predefinidos autorizados podem ser executados pelo runner em
src/runner.ts.Isolamento de Ambiente: Variáveis de ambiente sensíveis do sistema operacional (tokens, senhas, chaves) são expurgadas antes de passar o ambiente para o processo filho.
Sanitização de Saídas: Códigos de escape ANSI são removidos, saídas de
stdoutestderrsão limitadas a 60.000 caracteres cada, e segredos (como JWTs e credenciais em URLs) são automaticamente redigidos.Canal Exclusivo para Protocolo: O servidor nunca usa
console.log, reservando ostdoutestritamente para o protocolo MCP JSON-RPC. Logs internos usam apenasconsole.error.
Estrutura do Projeto
.cursor/
mcp.json
tools/
expo-mcp/
src/
tools/
projectSummary.ts
doctor.ts
dependenciesCheck.ts
publicConfig.ts
config.ts
index.ts
redact.ts
runner.ts
test/
config.test.ts
redact.test.ts
runner.test.ts
AGENTS.md
README.md
package.json
tsconfig.json
vitest.config.tsInstalação e Compilação
Navegue até a pasta da ferramenta:
cd tools/expo-mcp
npm install
npm run buildScripts disponíveis:
npm run dev: Executa os testes em modo watch.npm run build: Compila o TypeScript para a pastadist/.npm run start: Inicia o servidor MCP via stdio.npm test: Executa a suíte de testes automatizados com Vitest.npm run typecheck: Executa a verificação estática de tipos.npm run inspect: Abre o MCP Inspector para testar as ferramentas interativamente.
Integração com o Cursor
Edite ou crie o arquivo .cursor/mcp.json na raiz do seu aplicativo:
{
"mcpServers": {
"expo-local": {
"type": "stdio",
"command": "node",
"args": [
"${workspaceFolder}/tools/expo-mcp/dist/index.js"
],
"env": {
"EXPO_PROJECT_ROOT": "${workspaceFolder}"
}
}
}
}Related MCP server: Expo MCP Server
English
Overview
Expo MCP Server is a secure, local MCP (Model Context Protocol) server designed to allow AI assistants (such as Cursor, Claude Desktop, or custom agents) to inspect and diagnose Expo-based React Native projects safely over stdio transport.
Features
The server exposes 4 read-only tools:
expo_project_summaryReadspackage.jsonand public Expo configuration files, returning project name, version, Expo version, React Native version, available scripts, package manager identified by lockfile, directory structure (android,ios,app,src/app), and presence ofexpo-routerorexpo-dev-client. NEVER returns.envvalues.expo_doctorRunsnpx expo-doctorand returns a structured result (ok status, exit code, duration in milliseconds, stdout, stderr, and timeout flag).expo_dependencies_checkRunsnpx expo install --checkin read-only mode (settingCI=1in the child process to prevent interactive prompts).expo_public_configRunsnpx expo config --type public, parses the JSON output, and sanitizes sensitive keys (tokens, passwords, keys, credentials), limiting depth and total response size.
Security Architecture
Strict Project Root: The target project directory comes strictly from the
EXPO_PROJECT_ROOTenvironment variable. Paths are resolved, normalized, and validated. Arguments attempting to supply paths are rejected.No Shell Execution: Processes are spawned with
shell: false. On Windows, commands are resolved safely viacmd.exe /c npx.Command Allowlist: Only pre-approved commands can be executed by
src/runner.ts.Environment Isolation: Sensitive host environment variables (tokens, keys, passwords) are scrubbed before passing environment to child processes.
Output Sanitization: ANSI escape codes are stripped,
stdoutandstderrare truncated to 60,000 characters each, and secrets (JWTs, URL credentials) are automatically redacted.Dedicated Transport Channel:
console.logis strictly avoided to preservestdoutfor JSON-RPC MCP messages. Internal logs useconsole.error.
Installation and Building
Navigate to the tools directory:
cd tools/expo-mcp
npm install
npm run buildAvailable scripts:
npm run dev: Runs Vitest in watch mode.npm run build: Compiles TypeScript todist/.npm run start: Runs the MCP server via stdio.npm test: Runs the automated test suite with Vitest.npm run typecheck: Runs static type checking.npm run inspect: Launches MCP Inspector for interactive testing.
Cursor Integration
Create or edit .cursor/mcp.json in your application root:
{
"mcpServers": {
"expo-local": {
"type": "stdio",
"command": "node",
"args": [
"${workspaceFolder}/tools/expo-mcp/dist/index.js"
],
"env": {
"EXPO_PROJECT_ROOT": "${workspaceFolder}"
}
}
}
}This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseBqualityDmaintenanceA Model Context Protocol server that provides development and debugging tools for Expo-based React Native applications, enabling developers to manage Expo servers, capture logs, and manipulate project files.Last updated51
- Flicense-quality-maintenanceA 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.Last updated1
- FlicenseAqualityDmaintenanceAn MCP server designed for React Native and Expo development that provides specialized tools for project scaffolding, architectural best practices, and troubleshooting. It enables AI assistants to guide users through setup, navigation configuration, and CI/CD processes using modern stacks like NativeWind and Zustand.Last updated134
- AlicenseAqualityDmaintenanceZero-config MCP server that gives AI coding assistants a real-time diagnostic snapshot of your local dev environment. Detects framework, running services, recent errors, git state, and provides a health diagnosis in one call.Last updated3181MIT
Related MCP Connectors
Scans MCP servers for tool poisoning, prompt injection and supply chain risks.
Security scanner for MCP servers. Detect vulnerabilities, prompt injection, and tool poisoning.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Rukafuu/ExpoMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server