Appo MCP
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| generate_hookA | Generate a custom React hook for an @appolabs/appo SDK feature. Returns TypeScript code with types, error handling, and loading states. |
| generate_componentB | Generate a UI component that uses @appolabs/appo SDK features. Returns a complete React component with SDK integration. |
| scaffold_featureB | Scaffold complete feature integration including hook, component, and types. Returns multiple files with integration instructions. |
| validate_setupB | Validate @appolabs/appo SDK installation and configuration. Analyzes package.json and optionally checks import patterns. |
| check_permissionsB | Analyze permission handling patterns in code for a specific SDK feature. Returns analysis with suggestions for proper permission flow. |
| diagnose_issueB | Diagnose common @appolabs/appo SDK integration issues. Provides diagnosis with solutions and code fixes. |
| create_appA | Creates a new app for the authenticated user. Non-destructive — executes immediately. Authenticate once with |
| list_appsA | Lists all apps owned by the authenticated user. Non-destructive. |
| configure_appA | Configures an app's content fields (name, base_url) and who prepares it (prep_mode). Reversible - executes immediately. Content-only, matching the CLI |
| set_iconA | Sets an app's icon from a publicly reachable https URL. The server fetches, validates, and stores the image. Reversible — executes immediately. |
| set_permissionsA | Sets an app's native permissions. Pass |
| publish_appA | Starts publication to the chosen stores. Destructive — call with confirm:true to execute; without it returns a preview of the target stores. |
| unpublish_appA | Removes an app from the chosen stores. Destructive — call with confirm:true to execute; without it returns a preview of the target stores. |
| preview_appA | Returns the open-on-device payload: iOS TestFlight URL, Android deeplink, QR target URL, and per-platform readiness. Non-destructive — executes immediately. |
| get_app_overviewA | Returns app configuration, publication state, and metadata in one call. Start here. If app_id is omitted and you own exactly one app, that app is used. |
| get_build_statusB | Returns the status of a build by id. Poll until the status reaches ready (then publish_app) or failed. Non-destructive. |
| get_rejectionA | Returns the Appo publication status and the curated required action for a rejected app. Never exposes raw reviewer text. Non-destructive. |
| get_fix_recipeA | Returns code-free Appo remediation recipes for the current rejection. Non-destructive. |
| send_pushA | Sends a push to the app's devices. Destructive — call with confirm:true to send; without it returns a preview. |
| trigger_resubmissionA | Resubmits a rejected app for review. Destructive — call with confirm:true to execute; without it returns a preview. Requires a customer-owned Apple credential. |
| generate_universal_linksA | Generate the well-known configuration files needed for iOS Universal Links and Android App Links. Returns apple-app-site-association and assetlinks.json with hosting instructions. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| setup_wizard | Interactive setup guidance for integrating @appolabs/appo SDK into a new or existing project |
| integrate_feature | Step-by-step guide for integrating a specific SDK feature |
| debug_assistant | Interactive troubleshooting assistant for SDK issues |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| API: push | API reference for appo.push |
| API: biometrics | API reference for appo.biometrics |
| API: camera | API reference for appo.camera |
| API: location | API reference for appo.location |
| API: haptics | API reference for appo.haptics |
| API: storage | API reference for appo.storage |
| API: share | API reference for appo.share |
| API: network | API reference for appo.network |
| API: device | API reference for appo.device |
| Examples: push | Code examples for push feature |
| Examples: biometrics | Code examples for biometrics feature |
| Examples: camera | Code examples for camera feature |
| Examples: location | Code examples for location feature |
| Examples: haptics | Code examples for haptics feature |
| Examples: storage | Code examples for storage feature |
| Examples: share | Code examples for share feature |
| Examples: network | Code examples for network feature |
| Examples: device | Code examples for device feature |
| Best Practices | Integration best practices and patterns |
| Troubleshooting | Common issues and solutions |
| SDK Overview | Overview of @appolabs/appo SDK capabilities |
| Universal Links | Guide to setting up iOS Universal Links and Android App Links |
| Appo Ecosystem — start here | Map of all Appo resources (SDK, CLI, MCP, wrapper, dashboard, API) and when to use each — read before any Appo task |
TDQS
Scored across 21 tools
Some tools have clear boundaries (create_app, list_apps, set_icon), but several overlap in purpose: generate_hook, generate_component, and scaffold_feature all produce SDK integration code, and diagnose_issue, get_fix_recipe, and get_rejection all deal with app rejection/diagnosis. The descriptions help somewhat, but an agent could easily confuse generate_hook with generate_component or diagnose_issue with get_fix_recipe.
Most tools follow a consistent verb_noun pattern (validate_setup, generate_hook, list_apps, configure_app, set_icon, publish_app, get_app_overview, send_push). Minor deviations exist: trigger_resubmission and generate_universal_links are longer but still verb-based, and scaffold_feature is a verb_noun pair. Overall the pattern is predictable.
21 tools is on the higher end but reasonable for a server covering both SDK code generation and app lifecycle management. The count is slightly heavy, but each tool addresses a distinct aspect of the Appo platform, and the two clusters (code generation vs. app management) justify the size.
The server covers the core app lifecycle well: create, list, configure, set icon/permissions, publish, unpublish, preview, build status, rejection handling, and push. Minor gaps exist: there's no delete_app or update_app (only configure_app for content fields), and no tool for managing team members or viewing analytics. The code generation side is also somewhat redundant but complete.