Skip to main content
Glama
686,883 tools. Updated 2026-10-21 23:09

"How to evaluate an app in an Android emulator" matching MCP tools:

  • Evaluate up to 24 templates/views in ONE round trip from the same session dataset build — a dashboard's dozen nuggets paint together and always agree. Each requests[] item is an evaluate body ({view|source|templateid, periodStart?, periodEnd, ...}); each results[] slot is exactly what /report/session/evaluate would return for it, errors inline per slot. Requires an open session (open_report_session first); for a single view use evaluate_report_session, or evaluate_report for a one-off outside any session.
    ConnectorOAuth
  • Create a complete Google App campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED — activate later with adsap_google_set_entity_status), location + language targeting, an ad group, and the app ad. App campaigns promote a mobile app across Google Search, Google Play, YouTube, Discover and the Display Network — Google mixes the ad from your text (and optional media) automatically. The ad links to the app's store listing AUTOMATICALLY: there is no URL input, ever. Any PUBLIC store app id works (no app ownership or Play/Firebase link is required to create): Android app_id is the package name (e.g. com.example.app), iOS app_id is the numeric App Store id (e.g. 570060128) with app_store 'apple_app_store'. v1 optimizes INSTALLS at your target_cpi (target cost per install, plain number in the account currency); Google recommends a daily_budget of roughly 50x target_cpi — lower is allowed but slows learning (a warning says so). Text: 2-5 headlines (max 30 chars) + 1-5 descriptions (max 90). Optional media: image_asset_ids / video_asset_ids from adsap_google_upload_asset (images 1.91:1, 4:5 or 1:1 up to 5MB; videos are YouTube assets 10-60s) — text-only is fully valid. In-app-action, value, engagement and pre-registration goals are NOT supported in v1. If the account has no conversion tracking a warning is returned — relay it (Android installs normally auto-track once a Google Play link exists). Use dry_run: true first — Google validates the whole chain without creating anything; show the plan, get confirmation, then execute. ad_account_id is the bare 10-digit customer ID. For website campaigns use adsap_google_create_search_campaign / adsap_google_create_pmax_campaign; for Meta app ads use adsap_create_campaign with an app objective.
    ConnectorAPI key
  • Show your account's compute, database-RAM, and storage pools: how much you've bought, how much is used, and how much is free, plus every app's current size. Call this before any resize tool (the allowed sizes come from its steps fields), and to explain to the user why an app ran out of memory or a deploy was refused for capacity.
    ConnectorNo auth
  • Create a new Bridge app in the workspace this connection belongs to, exactly as the dashboard would. Returns its id. It does NOT become the default: pass its id as `app`, or call use_app. Use a new app for a new environment or product rather than repurposing an existing one — an existing app may have live users, email links and billing attached. Only a connection approved for the whole workspace can create apps. A new app has no sign-in callback address: pass `callbackUrl` with the one the project uses (its real port), or add it later with add_redirect_uri — until then sign-in fails with NBLOCKS_NO_CALLBACK_URI. Before writing app code that signs users in to the new app, call get_integration_guide with topic=auth and the framework the app uses.
    ConnectorOAuth

Matching MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A minimal MCP server with get_weather and create_ticket tools, used for testing MCP servers across protocol, unit, eval, transport, and auth layers.
    MIT
  • F
    license
    B
    quality
    C
    maintenance
    Publishes a spending-summary tool alongside an interactive HTML view, letting people click a category in the answer to fetch the individual expense records behind that total. Keeps calculations and their supporting evidence together in a single inspectable flow.
    2
    -

Matching MCP Connectors

  • Apps that compete with one app for the same store searches, with how many searches they share and how strongly each ranks. Use when: "who competes with our app in the App Store", "which apps take our store searches", building a competitor set for an app. Not for: business competitors on the web, use seo_get_serp_competitors. The keywords two apps share, use apps_get_shared_keywords. Returns: List. rows[]: app_id, shared_keywords, avg_position, keywords (every store search it ranks for), top_3, keywords_volume. Ids only: call apps_get_app for a name. The app itself is left out. United States and English only. Cost: 5 + 5 per 100 rows. Default 100 rows = 10 credits. Cached 7 days. Example: {"store": "app_store", "app_id": "618783545", "limit": 20}
    ConnectorAPI key
  • Materializes a free Cabgo workspace for the operator and queues an Android build of their branded app. No payment, no card, no checkout — the workspace is free to create and operate. Call ONLY when the user explicitly wants to create / launch / spin up / set up a new app for their business — verbs like 'create', 'launch', 'build me', 'set up an app for'. Do NOT call this for setup / installation / connector questions (use cabgo_install_instructions). Ask the user 2 things: (1) what type of business — taxi / food delivery / gas distribution? (2) what brand name for their app? Optionally city + brand color. **The connected OAuth user becomes the owner automatically** — no email or name is needed in the body. **A single user can own multiple tenants** — calling this again creates a NEW workspace rather than erroring. Branding tweaks happen via other Cabgo tools after creation. Any plan / billing / subscription management is done by the operator on https://www.cabgo.app — never through this tool.
    ConnectorNo auth
  • Public (no auth): informational pricing reference. Returns monthly SaaS subscriptions (Basic $15 / Professional $30 / Enterprise $70 per month, which INCLUDE 300 / 1,000 / 3,500 trips per month; trips above that quota are billed at $0.05 / $0.03 / $0.02 each (with standard maps or the tenant's own Google key; with high-precision Google Maps on Cabgo's shared key the included quota is divided by 6 and the overage rate multiplied by 6) — the monthly price is a floor, never quote it alone to an operator who has volume) and one-time app-build packages (Starter $399 Android-only, Pro $699 Android+iOS, Full $999 Android+iOS+source code). All plans include unlimited drivers / users / admins; Cabgo never takes a commission on the fare (the per-trip overage above is a quota charge, not a commission). **Informational only.** Do not generate or return a payment URL from this tool. When the operator wants to purchase, direct them to visit https://www.cabgo.app/empezar in their browser — all checkout happens on cabgo.app externally via Stripe, not inside this conversation.
    ConnectorNo auth
  • Update project settings (current values appear at the top of list_files). Keys: title (2-100 chars), description, iconUrl (the app's icon/logo: favicon, home-screen icon and native app icon — a /_cdn/static/… path from upload_asset, generate_image or request_user_upload, or an absolute https URL; null resets), splashUrl (native splash screen, same value forms), mobileAppId, enableSSR (boolean), flootAiDisallowed (boolean — true opts the project out of @floot/ai), and iOS Info.plist purpose strings (NS…UsageDescription — set to a string, or null to remove) plus boolean Info.plist keys (UIViewControllerBasedStatusBarAppearance — set to a boolean, or null to restore the template default). Invalid keys/values are reported and skipped. NOTE: these take effect on the published app only after the next publish (publish_app, or the user's Publish button). The iosInfoPlist keys only affect builds made before the first iOS publish; after the iOS app is published, edit the project file `static/__dev/native/ios-info.plist` directly with write_file/edit_file (see get_guides('ios-info-plist')). Likewise, after the first Android publish, edit `static/__dev/native/android-manifest.xml` directly for manifest changes (see get_guides('android-manifest')). `shareTarget` makes the native app appear in the iOS and Android share sheets (other apps can share photos/videos/files/text into it): pass { enabled: true, mimeTypes?, allowMultiple? } to register, { enabled: false } to remove; receiving the shared items still needs the handler in app code — read get_guides('share-target') first and ship both together. `nativeSystemBars` controls how the native app treats the status bar / Android navigation bar: mode 'inset' (default) keeps the app below the bars and paints the exposed strips `color` (default black — set it to the app's header color for a seamless look); mode 'edge-to-edge' runs the app under the bars, which REQUIRES the app to pad by var(--safe-area-inset-top/bottom) itself — read get_guides('native-system-bars') first and ship both changes together. Not superseded by the __dev/native files. `serverMemoryMb` sets the memory (MB) of the project's server Lambda, which runs every endpoint, queued task, scheduled job and SSR render (default 1024 MB; 2048 for the published app when SSR is on — the dev backend never bumps). EXPERT SETTING — NEVER change it on your own initiative or as a side effect of another request, only when the user explicitly asks to change the server memory AND understands the trade-off: too low and the backend stops working entirely (killed out-of-memory); Lambda CPU scales with memory, so a lower value also makes every request slower and — because compute is billed per GB-second of billed duration — can cost MORE, not less; a higher value costs more per millisecond. Allowed range 512–4096 MB, whole MB (if a size turns out not to be available for the app's server, the deploy fails and the error names this setting). It applies to the dev backend at the next backend deploy and to the published app at the next publish. Pass null to restore the default. Read get_guides('server-memory') before changing it. `analyticsMode` controls the built-in visitor analytics tracker every published app includes (the project's Analytics tab): 'storage' (default) keeps a 30-minute session id in the visitor's localStorage, which is device storage that needs consent under EU ePrivacy / UK PECR — an app with EU/UK visitors pairs it with a consent banner that calls window.flootAnalytics.setMode(); 'memory' keeps the id in memory only (nothing stored on the device, no consent needed, but a reload or new tab counts as a new session); 'off' sends no analytics at all. Only change it when the user asks about analytics, cookies, consent or privacy for their published app; it takes effect at the next publish. Read get_guides('analytics') for the consent-banner API before changing it. `iosDeviceFamily` picks the devices the native iOS app is built for: 'iphone-and-ipad' (default, universal) or 'iphone' (iPhone only — the app still installs on iPads but runs there in iPhone compatibility mode, and App Store Connect no longer asks for iPad screenshots). This is the ONLY way to make the app iPhone-only: it is an Xcode build setting, so a UIDeviceFamily key in static/__dev/native/ios-info.plist is overwritten at build and does nothing. One-way door: App Store Connect rejects an update that drops iPad once a version supporting iPad has been released on the App Store, and the build then fails at upload. Before setting 'iphone', ask the user whether the app is already live on the App Store; if it is, tell them it cannot be made iPhone-only and do not set it. Takes effect at the next iOS publish. `routePrefetch` controls how the PUBLISHED app downloads other pages' code ahead of navigation: mode 'auto' (default: every page when the app has 15 or fewer, else links entering the screen plus hover/touch), 'all', 'viewport' (links in view + hover/touch), 'intent' (hover/touch only) or 'off'; skipAutomation: true turns warming off in automated browsers (navigator.webdriver: Playwright, Puppeteer, Selenium). A single link opts out with the attribute data-no-prefetch on the <a> or an ancestor (honoured in every mode except the whole-app warm of 'all' / small-app 'auto'). Only change it when the user asks about page prefetching or load performance; it takes effect at the next publish. `securityHeaders` sets the published app's own page headers: `embedding` (who may show the app in an iframe: 'anyone' (default), 'self', 'none', or a list of https origins), `csp` (directive -> the COMPLETE source list for it, replacing the platform's; other directives keep the platform's), `cspReportOnly` (try `csp` without enforcing it) and `referrerPolicy`. Each field passed replaces the stored one and null removes it (inside `csp`, per directive); `securityHeaders: null` restores the platform defaults. Changes that would break the app are refused with the reason. Change it only when the user asks about embedding / iframes / clickjacking, a security scan finding, a stricter or looser Content-Security-Policy, or referrer privacy; it takes effect at the next publish and never in the preview. Read get_guides('security-headers') before changing it.
    ConnectorOAuth
  • Drag-and-drop on an Android device: hold at (x1,y1) for holdMs to grab, then move to (x2,y2) over durationMs. Distinct from device_swipe (no hold — scroll-style) and device_long_press (no motion — context menus). Use for app-icon reorder, drag-into-folder, slide gestures that need a deliberate grab. Coordinates are PHYSICAL pixels (from page_source bounds).Pass input="hid" to require the virtual touchscreen: the gesture then reaches the app as real kernel input and fails loudly instead of silently falling back to injected input. That strict path used to be device_uhid_drag_drop, which stays callable under its old name.
    ConnectorOAuth
  • Install an app on the Android device from an APK or split bundle (XAPK/APKS — how most large modern apps ship). Provide apk_url (an https link the device downloads itself — preferred, and the only workable option for real apps) or, for tiny payloads, as apk_base64. Max 300MB. Large apps can take several minutes; if this call times out the install keeps running on the device — verify with the app-list tool instead of re-installing. Use reinstall=true to uninstall then install (for signature changes).
    Connector
    Destructive
    API key
  • Install an app on the Android device from an APK or split bundle (XAPK/APKS — how most large modern apps ship). Provide apk_url (an https link the device downloads itself — preferred, and the only workable option for real apps) or, for tiny payloads, as apk_base64. Max 300MB. Large apps can take several minutes; if this call times out the install keeps running on the device — verify with the app-list tool instead of re-installing. Use reinstall=true to uninstall then install (for signature changes).
    Connector
    Destructive
    API key
  • Install an app on the Android device from an APK or split bundle (XAPK/APKS — how most large modern apps ship). Provide apk_url (an https link the device downloads itself — preferred, and the only workable option for real apps) or, for tiny payloads, as apk_base64. Max 300MB. Large apps can take several minutes; if this call times out the install keeps running on the device — verify with the app-list tool instead of re-installing. Use reinstall=true to uninstall then install (for signature changes).
    Connector
    Destructive
    API key
  • Get the Sigistry MCP App safety criteria to audit an MCP App (MCP Apps / SEP-1865: a tool that returns an interactive ui:// HTML resource the host renders in a sandboxed iframe) BEFORE shipping it. Returns two groups of checks: spec conformance (ui:// scheme, the text/html;profile=mcp-app mimeType, tool-to-UI linkage via _meta.ui.resourceUri, a text fallback, visibility values, and CSP coverage of external origins) and security hygiene the iframe sandbox does not cover (unsafe DOM sinks, embedded secrets, host-message origin handling, remote scripts). Call this when the user is building or reviewing an MCP App; then apply each check to the app source you have in context and report findings. Nothing is sent to this server; an interactive browser version is at https://sigistry.com/mcp-app-checker.
    ConnectorNo auth
  • Get the Sigistry MCP App safety criteria to audit an MCP App (MCP Apps / SEP-1865: a tool that returns an interactive ui:// HTML resource the host renders in a sandboxed iframe) BEFORE shipping it. Returns two groups of checks: spec conformance (ui:// scheme, the text/html;profile=mcp-app mimeType, tool-to-UI linkage via _meta.ui.resourceUri, a text fallback, visibility values, and CSP coverage of external origins) and security hygiene the iframe sandbox does not cover (unsafe DOM sinks, embedded secrets, host-message origin handling, remote scripts). Call this when the user is building or reviewing an MCP App; then apply each check to the app source you have in context and report findings. Nothing is sent to this server; an interactive browser version is at https://sigistry.com/mcp-app-checker.
    ConnectorNo auth
  • Set how many processes of one type an app or agent runs. For an app, give process_type, such as web, and a count from 0 up to the organization's cap. For an agent, count is 0 (paused) or 1 (running). Scaling down stops running processes, and scaling web to 0 takes an app's URL offline, so confirm with the user first. Setting the count it already has changes nothing. Websites run no process and are refused. Changing an agent's model is not offered here. Requires connecting a Valet account.
    Connector
    Destructive
    No auth
  • Reads an iOS app from its App Store link or id and says what Pagefully understood of it. Call this first. Signed in (OAuth or a Pagefully token): adds the app to the workspace (no App Store Connect key is needed to plan and make pages) and returns the app, with its app_id, its brief (what the app does, who it is for and how it sounds) and its screens. "screens" is the app's own source screenshots as Pagefully holds them, in order: each with its position, its picture at display size (url), and what Pagefully read on it (read: the headline and subline the developer drew on it, and "design", which is "theirs" for a designed screenshot a page keeps and only rewords, or "ours" for a bare screen a page puts in Pagefully's own design). Compare a page against these, not against another page. An app that is not on the public App Store says so in app.listing.note, with where its facts came from: repeat that sentence, and do not look the app up elsewhere. Reading a new app takes a while, so the first call may return a job_id and no brief: call get_job with it until it is done, then call analyze_app again with app_id. Called with app_id it only reads. Called with nothing it lists the apps on the workspace. Not signed in: returns the free public preview of that app, the pages Pagefully would plan for it and the first one designed, with a preview_url. While state is "making", call again with the same app in a few seconds. This works on public App Store data only and is limited for each visitor. Show the person the brief (or the preview_url) and ask whether it is right before planning. Never guess an App Store id: ask for the link.
    ConnectorNo auth
  • Make the secret key @getvigilia/server sends this app's backend errors with, for an app that has none yet, and say how to set it as a secret on the backend's platform. The key is shown once: set it as a secret straight away, never in code or a committed file. Never replaces an existing key (the owner does that in Vigilia). Paid plans.
    ConnectorOAuth
  • AppCreator24 is an AI app builder and APK maker for Android. Creates Android apps and builds APKs, returning download and editor links. Also replaces the sections of an app previously created through this service. Supports up to six sections: webpages/PDFs, HTML content, quizzes, audio, video, user video sharing, chat, user lists, RSS feeds, forums and games. Produces an initial configurable app structure, not arbitrary Android source code. Creation in this flow does not require an AppCreator24 account. Inputs: six general string fields plus matching type_N/title_N/info_N fields for section slots 1-6. Each used slot has a nonblank title. Unused slots have all three fields absent. Content formats and length limits are documented in the parameter schemas. Resource URLs refer to existing content. The server does not search the web or verify resource availability. Creation: previous_id is "0". A new app and initial icon are prepared and the app enters a compilation queue. Editing: previous_id is the complete id returned by an earlier successful call. The payload represents the entire final app structure, including unchanged sections; omitted sections are removed. There is no partial-update mode or configuration-retrieval tool. Editing updates the configuration but does not change the actual app name or regenerate its icon. Additional customization, image galleries and advanced settings are available in the AppCreator24 web editor. Success returns structuredContent with id, download_url and edit_url. The id includes an app-management code used for subsequent edits; edit links also contain this code. A download link is not a compilation-completion signal. The service does not submit apps to Google Play or guarantee store approval. Failures return isError=true with an explanatory text. A validation rejection occurs before a backend request. Backend failures, timeouts and unexpected responses can leave the operation's outcome unknown. Creation and editing are not idempotent; another call can create a duplicate app or repeat changes. Some responses direct app management to the web editor.
    Connector
    Destructive
    No auth
  • Change how much memory one app gets. Call this when an app is running out of memory (OOM) or the user asks to make an app bigger or smaller. memory_mb must be one of the sizes get_resource_usage reports under compute.steps_mb, and the new size has to fit your available compute pool (call get_resource_usage first). Applied with a zero-downtime rolling update. If this app has storage, it is stopped and started again instead, so it is unreachable for a few seconds.
    ConnectorNo auth