83trust / 100

Neblla

by neblla.com in Documents & files

MCP serverPassing, checked 6 h ago

Build and publish multiplayer apps and games on Neblla: scaffold, edit files, ship to the gallery.

https://neblla.com/mcp

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
214 ms typical, 214 ms slowest 5%
Last check
6 h ago
Next check
any minute now

How to call it

Add it to any MCP client that supports remote servers.

{
  "mcpServers": {
    "neblla": {
      "type": "http",
      "url": "https://neblla.com/mcp"
    }
  }
}

57 tools

  • neblla_get_llms

    Fetch the Neblla developer guide (llms.txt), split by topic so you read only what the app uses. Call this BEFORE designing or writing any code for a Neblla app — at minimum the `core` section (the default): the canonical six-file structure, the events-only client/server contract,

  • neblla_get_app_url

    Returns the canonical public URL for a Neblla app in the gallery. ALWAYS call this after neblla_create_app — never construct the URL yourself. Apps are published and browsed at play.neblla.com. The URL format is https://play.neblla.com/<slug>, where <slug> is auto-generated from

  • neblla_validate_requirements

    Walk the SAME decision map the Neblla dashboard wizard uses, before creating an app. STRONGLY RECOMMENDED before neblla_create_app on any new-app request (skip it only for edits/fixes to existing code). It front-loads every structural decision so the app is born configured right.

  • neblla_create_app

    Create a new Neblla app. Returns the app ID (appId) to use in subsequent file upload operations. Recommended flow for a NEW app: 1) Call neblla_validate_requirements with the decisions you can infer from the request — it walks the same decision map as the dashboard wizard; answ

  • neblla_list_apps

    List all apps owned by the authenticated developer.

  • neblla_delete_app

    Permanently delete an app and all its files.

  • neblla_update_app

    Update an app's configuration. Pass only the fields you want to change. Use addDomain/removeDomain to mutate the allowed-origins list atomically without overwriting other entries. `sandbox: true` lets the app load on localhost / non-https origins for development. `ai` is the AI p

  • neblla_list_community_entries

    List the community entries (user-published content, neblla.community) of an app from the backoffice, any status. Use it to triage the moderation queue: status "pending" is what awaits approval in review mode. Returns indexed metadata only (title, summary, category, tags, contentT

  • neblla_get_community_entry

    Fetch one community entry WITH its payload (the dev-defined JSON), whatever its status, plus its user reports (open count, count by reason, and each report with an opaque reporter id). Stats carry favorites, rating and reviews.

  • neblla_publish_community_entry

    Publish a community entry AS YOURSELF — owned by your own user in the app (the app user whose email is your developer email; log into the app once first). Use it to seed a community with starter content. It skips the review queue (you are a moderator of your app) and obeys the sa

  • neblla_moderate_community_entry

    Moderate a community entry as the app owner: approve or reject a pending entry, remove a published one, or restore a rejected/removed one. `reject` and `remove` require a `reason` from the fixed taxonomy; the author receives the reason and your `message` live (communityUpdated) a

  • neblla_upload_file

    Upload or update a file for an app. Pass text files (HTML, CSS, JS, TS, JSON, SVG) as raw UTF-8 text with encoding="utf8" (the default) — do NOT base64-encode them, even if they contain quotes, backticks, ${...} or newlines; send the source verbatim. For binary files (images, fon

  • neblla_list_files

    List all files staged for an app. Returns path, mimeType, size, and timestamps for each file.

  • neblla_get_file

    Get the content of a specific file. Text files (HTML, CSS, JS, JSON, SVG, plain text) are ALWAYS returned as UTF-8 strings — never base64. Binary files (images, fonts, audio) are returned as base64. The response includes an `encoding` field ("utf8" or "base64") so you know how to

  • neblla_delete_file

    Delete a single file from an app.

  • neblla_move_file

    Rename or move a file within an app. oldPath is the current path, newPath is the destination.

  • neblla_create_product

    Create a purchasable product for a Neblla app. type must be "one_time" (single purchase, fixed price) or "consumable" (quantity selector, price per unit). name should be a multi-language object e.g. { en: "Gold Coins", es: "Monedas de Oro" }. price (one_time) and pricePerUnit (co

  • neblla_update_product

    Update an existing product. Pass only the fields to change. Use this to adjust price, rename, or republish a product without losing its productId — changing the id would break checkout flows already wired into the app.

  • neblla_list_products

    List all products for a Neblla app.

  • neblla_delete_product

    Permanently delete a product from a Neblla app.

  • neblla_publish_app

    Publish a Neblla app to the public gallery. BEFORE calling this tool you MUST follow these steps with the user: 1) Ask for the app title and a short description (1-3 sentences) in the user's language. 2) Ask for the gallery section: "multiplayer" (games/apps where users interact

  • neblla_unpublish_app

    Remove an app from the public gallery. The app keeps its files and URL — only its public listing is hidden. Use neblla_publish_app to re-publish.

  • neblla_list_users

    List end users of an app — the people who connected through the SDK, NOT the developer's own account. Use this as the entry point for the backoffice flow: it returns a paginated list with each user's mongo `_id` (needed for every other backoffice tool), email, name, language, and

  • neblla_search_users_by_email

    Find users of an app by a partial email match (min 2 characters). Returns the matching user docs with email, communications, data, stats, and language. Use neblla_list_users for full pagination instead when no email is known.

  • neblla_get_user

    Fetch the full record of a single end user — their saved data, public info, purchases, and communications thread. Use the `_id` from neblla_list_users / neblla_search_users_by_email as `userId`.

  • neblla_list_communications

    List communications across ALL users of an app, filtered and sorted. The most useful tool for triaging an inbox: show only unread, only messages from users (not the dev), only flagged-important, or only those mentioning a given email. Returns flat items with userId so you can fol

  • neblla_send_communication

    Send a message from the developer to a specific end user. The user receives it live via the SDK's `communicationUpdated` event if connected, and on next reconnect otherwise. Optionally attach a `data` JSON payload (rendered by the app), or a calendar/appointment proposal via date

  • neblla_set_communication_read

    Mark a specific communication as read or unread (from the developer's side). The end user is notified live via a `communicationRead` socket event if connected.

  • neblla_set_communication_important

    Toggle the "important" flag on a communication. This is dev-only metadata and is NOT broadcast to the end user — use it to bubble messages to the top of your own triage view.

  • neblla_delete_communication

    Permanently remove a communication from a user's thread. The end user is notified via a `communicationDeleted` socket event so their UI updates in real time.

  • neblla_update_user_data

    Replace the `data` object for a specific end user (the same object the SDK's neblla.save() reads/writes). Use sparingly: this overwrites the user's saved state and the change is broadcast live. Useful for support (unstuck a player), moderation (clear a corrupted save), or admin t

  • neblla_list_rooms

    List the persistent / predefined rooms of an app with their type, owners, whitelist, moderators, data, message count, last activity and how many users are in each one right now.

  • neblla_get_room_history

    Read a room's chat history (newest first, paginated) for moderation. Returns the players' messages in clear: only use it when the developer asks to review a room.

  • neblla_delete_room_message

    Delete (soft) one chat message from a room, as the developer. Players see it removed.

  • neblla_create_room

    Create a predefined room (it exists before anyone joins). Name: A-Z 0-9 _ - (stored uppercase); LOBBY is reserved. `permanent: true` keeps it (and its data) when it empties.

  • neblla_update_room

    Change a room: replace its shared `data` (players in the room receive it live) and/or its `moderators` list. Replacing data overwrites the live game state of that room — confirm with the developer first.

  • neblla_delete_room

    Delete a persistent room and its stored data. If people are inside it right now the session continues and the room disappears when it empties. LOBBY cannot be deleted. Irreversible — confirm with the developer first.

  • neblla_list_moderators

    List the app-level moderators (per-app user ids). App moderators manage rooms of any type and moderate the community.

  • neblla_set_moderator

    Make a player an app moderator (`moderator: true`) or remove them (`false`). `userId` is the per-app user id (from neblla_list_users), not an email.

  • neblla_set_ban_status

    Set a player's ban state in this app: "none" (lift), "banned" (the app shows the ban message and blocks play), "terminated" (wipes the player's local data in the browser and disconnects them — irreversible for that data), "community_muted" (can play but cannot publish, rate or re

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTime
6 h agoPassed200214 ms
14 h agoPassed200295 ms
23 h agoPassed200108 ms