Expo

io.github.mcp-dirPublished by GitHub account mcp-dirv0.1.0Updated Oct 24, 2026

Your Expo and EAS project in natural language: up to date SDK docs, cloud builds (status, logs, trig

VerifiedStreamable HTTPWeb executableCloud & InfrastructureKnowledge & MemoryDeveloper Tools

Overview

AI-generated overview

Lets an assistant work with Expo and EAS projects: SDK documentation, cloud builds, CI workflows, store submissions and TestFlight data.

What you can do
Provides 19 tools covering Expo documentation search and reading, library installation, and EAS cloud operations. Build tools list, inspect, log, trigger, submit and cancel EAS builds; workflow tools create, validate, list, inspect, log, run and cancel EAS workflows. It also retrieves TestFlight crash data and screenshot feedback, and can remember Expo how-to topics for later conversations.
When to use it
Useful when an assistant should answer questions about current Expo SDK documentation or act on an Expo/EAS project: checking build status, reading failed build logs, running or cancelling builds and workflows, submitting to the app stores, or reviewing TestFlight crashes and feedback.
Requirements
A remote MCP over HTTP endpoint; no local package or runtime is declared. Connect an Expo account via a one-click login using a magic link, described as requiring no key or token. Works with any MCP client that supports MCP over HTTP, including Claude, Cursor, VS Code, ChatGPT and others.
Before you install
Tools can write and act on your account: triggering and cancelling builds and workflows, submitting builds to Google Play and the App Store, and adding libraries to a project. Data returned by the tools is sent to whichever LLM host you choose, which is described as a sub-processor outside the provider's control; plans with training opt-out are recommended. The hosted server itself is proprietary.

Installation

In SourceWeft

  1. Open Expo in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.mcp-dir%2Fexpo-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "expo": {
      "type": "http",
      "url": "https://api.mcp.ai/p_expo"
    }
  }
}

README

This repository has no README.

Tools

25

expo_add_library

Add an Expo library to the project using expo install and attach usage instructions when available

ParameterslibraryNamerequiredprojectRootrequired

expo_read_documentation

Fetch a single Expo documentation page and return its content as markdown. Returns up to ~5000 tokens per call. Use offset to paginate through long pages.

Parametersurlrequiredoffset

expo_search_documentation

Search the official Expo documentation and return page URLs ranked by relevance for a user query. Use read_documentation to fetch the full content of specific pages, starting from the top.

Parametersqueryrequired

expo_learn

Learn Expo how-to for a specific topic and remember it for future conversations. Use this to teach the assistant about specific Expo features or workflows.

Parameterstopicrequired

expo_workflow_create

Creates a new EAS workflow YAML file for Expo projects or fetches workflow syntax documentation. Use this when users want to create CI/CD workflows in .eas/workflows/ or need to learn EAS workflow syntax. After creating, use workflow_validate to validate the file.

ParametersactionrequiredfileNameprojectRootworkflowYaml

expo_workflow_info

Fetches detailed information about a specific EAS workflow run by ID. Use this to check the status, job results, errors, and artifacts of a workflow run. If workflow has multiple jobs, draw them in a diagram to show the dependencies between jobs.

ParametersworkflowRunIdrequired

expo_workflow_list

Lists recent EAS workflow runs for a project. Provide either appId (from app.json "extra.eas.projectId") OR appFullName (e.g., "@owner/my-app").

ParametersappIdlimitstatusappFullName

expo_workflow_logs

Fetches logs for a specific job in an EAS workflow run. Call without sectionIndex or phase to get a summary of log sections (phase names and line ranges); then call again with sectionIndex or phase to fetch that section.

ParametersphasejobKeyrequiredsectionIndexworkflowRunIdrequired

expo_workflow_run

Triggers an EAS workflow run from a git reference. Provide either appId (from app.json "extra.eas.projectId") OR appFullName (e.g., "@owner/my-app"). The workflow file must exist at the specified git reference.

ParametersappIdgitRefrequiredfileNamerequiredappFullName

expo_workflow_cancel

Cancels a running EAS workflow. Use workflow_info to get the workflow run ID.

ParametersworkflowRunIdrequired

expo_workflow_validate

Validates EAS workflow YAML syntax and configuration. Use this after creating a workflow to ensure it is valid. Provide either appId (from app.json "extra.eas.projectId") OR appFullName (e.g., "@owner/my-app").

ParametersappIdappFullNameworkflowYamlrequired

expo_build_list

Lists EAS builds for a project. Provide either appId (from app.json "extra.eas.projectId") OR appFullName (e.g., "@owner/my-app"). Use this to see recent builds, their status, and available artifacts.

ParametersappIdlimitstatusplatformappFullName

expo_build_info

Fetches the status and detailed information about a specific EAS build by ID. Use this to check build status, errors, artifacts, and other details.

ParametersbuildIdrequired

expo_build_logs

Fetches the logs for a specific EAS build. The build must be completed (finished or errored) to have logs available.

ParametersbuildIdrequired

expo_build_submit

Submits an EAS build to the app store (Google Play Store for Android, App Store for iOS). The build must be a finished build with the appropriate distribution type. Provide either appId (from app.json "extra.eas.projectId") OR appFullName (e.g., "@owner/my-app").

ParametersappIdtrackbuildIdrequiredplatformrequiredappFullNameascAppIdentifier

expo_build_run

Triggers a new EAS build using a build profile from eas.json. Requires a GitHub repository to be connected to the project. Provide either appId (from app.json "extra.eas.projectId") OR appFullName (e.g., "@owner/my-app").

ParametersappIdgitRefrequiredplatformrequiredautoSubmitappFullNamebuildProfilerequiredbaseDirectorysubmitProfile

expo_build_cancel

Cancels an EAS build that is queued or in progress. Use build_info to check the current status first.

ParametersbuildIdrequired

expo_testflight_crashes

Fetch TestFlight crash data. Without crashId, lists recent crashes. With crashId, returns the full crash log with stack trace.

ParameterslimitcrashIdbundleIdrequired

expo_testflight_feedback

Fetch screenshot feedback from TestFlight. Returns feedback metadata including device info, user comments, and screenshot URLs.

ParameterslimitbundleIdrequired

show_version

Show Version

Show the current MCP platform and adapter versions.

Takes no parameters.

report_bug

Report Bug

Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.

Parameterscontextmessagerequiredconversation

connect

Connection Status

Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.

Takes no parameters.

toolkit_info

Toolkit Info

Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.

Takes no parameters.

marketplace

Marketplace

The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login.

Parameterslimitqueryactionmcp_idmessagetool_idargumentsimmediatetier_slugprompt_bodyprompt_slugprompt_tool+11 more

authenticate

Authenticate

MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "<jwt>" } after the user pastes, or with no args to get the link.

Parameterstoken

Version history

1
  1. v0.1.0LatestSep 16, 2026

Score

75% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • License10 pts

    Declare a license in the repository or the registry entry.