{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_au2qb4tnd5bb","handle":"neblla","url":"https://wellknown.network/agents/neblla","links":{"self":"https://wellknown.network/agents/neblla/record.json","html":"https://wellknown.network/agents/neblla","markdown":"https://wellknown.network/agents/neblla/record.md","api":"https://wellknown.network/api/v1/agents/neblla","status":"https://wellknown.network/api/v1/agents/neblla/status","claim":"https://wellknown.network/agents/neblla/claim","claimApi":"https://wellknown.network/api/v1/claims","badge":"https://wellknown.network/agents/neblla/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air:neblla.com:server:neblla","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Neblla","summary":"Build and publish multiplayer apps and games on Neblla: scaffold, edit files, ship to the gallery.","description":"Build and publish multiplayer apps and games on Neblla: scaffold, edit files, ship to the gallery.","publisher":{"name":"com.neblla","url":null},"homepage":"https://neblla.com","repository":null,"version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://neblla.com/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-06-12T06:07:14.03496Z","publishedAt":"2026-06-12T06:07:14.03496Z","registryName":"com.neblla/neblla"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"productivity.email","name":"Email","confidence":0.962,"provenance":"derived"},{"slug":"dev.filesystem","name":"Filesystem","confidence":0.859,"provenance":"derived"},{"slug":"analytics.reporting","name":"Reporting & Dashboards","confidence":0.54,"provenance":"derived"},{"slug":"commerce.ecommerce","name":"E-commerce Operations","confidence":0.525,"provenance":"derived"},{"slug":"content.writing","name":"Writing & Editing","confidence":0.51,"provenance":"derived"}],"categories":["analytics","commerce","content","dev","productivity"]},"observed":{"status":"live","statusReason":"Responded 1h ago.","lastOkAt":"2026-09-05T22:25:49.975Z","lastProbedAt":"2026-09-05T22:25:49.975Z","statusComputedAt":"2026-09-05T22:26:42.738Z","reliability30d":{"probes":1,"successRate":1,"p50Ms":35},"latestObservations":[{"at":"2026-09-05T22:25:49.975Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":35,"error":null,"detail":{"tools":[{"name":"neblla_get_llms","description":"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 "},{"name":"neblla_get_app_url","description":"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 publishe"},{"name":"neblla_validate_requirements","description":"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 "},{"name":"neblla_create_app","description":"Create a new Neblla app. Returns the app ID (appId) to use in subsequent file upload operations. \n\nRecommended flow for a NEW app: 1) Call neblla_validate_requi"},{"name":"neblla_list_apps","description":"List all apps owned by the authenticated developer."},{"name":"neblla_delete_app","description":"Permanently delete an app and all its files."},{"name":"neblla_update_app","description":"Update an app's configuration. Pass only the fields you want to change. Use addDomain/removeDomain to mutate the allowed-origins list atomically without overwri"},{"name":"neblla_upload_file","description":"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 t"},{"name":"neblla_list_files","description":"List all files staged for an app. Returns path, mimeType, size, and timestamps for each file."},{"name":"neblla_get_file","description":"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,"},{"name":"neblla_delete_file","description":"Delete a single file from an app."},{"name":"neblla_move_file","description":"Rename or move a file within an app. oldPath is the current path, newPath is the destination."},{"name":"neblla_create_product","description":"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 "},{"name":"neblla_update_product","description":"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"},{"name":"neblla_list_products","description":"List all products for a Neblla app."},{"name":"neblla_delete_product","description":"Permanently delete a product from a Neblla app."},{"name":"neblla_publish_app","description":"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"},{"name":"neblla_unpublish_app","description":"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."},{"name":"neblla_list_users","description":"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 re"},{"name":"neblla_search_users_by_email","description":"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 nebl"},{"name":"neblla_get_user","description":"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_"},{"name":"neblla_list_communications","description":"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"},{"name":"neblla_send_communication","description":"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 reconne"},{"name":"neblla_set_communication_read","description":"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."},{"name":"neblla_set_communication_important","description":"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 ow"},{"name":"neblla_delete_communication","description":"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."},{"name":"neblla_update_user_data","description":"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 "},{"name":"neblla_delete_account","description":"For safety the MCP never deletes accounts directly. Returns a URL for the user to visit and confirm deletion from the Neblla dashboard."}],"toolCount":28,"serverName":"neblla","capabilities":["tools"],"serverVersion":"2.4.0+build.36","protocolVersion":"2025-06-18"}}],"tools":[{"name":"neblla_get_llms","description":"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 "},{"name":"neblla_get_app_url","description":"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 publishe"},{"name":"neblla_validate_requirements","description":"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 "},{"name":"neblla_create_app","description":"Create a new Neblla app. Returns the app ID (appId) to use in subsequent file upload operations. \n\nRecommended flow for a NEW app: 1) Call neblla_validate_requi"},{"name":"neblla_list_apps","description":"List all apps owned by the authenticated developer."},{"name":"neblla_delete_app","description":"Permanently delete an app and all its files."},{"name":"neblla_update_app","description":"Update an app's configuration. Pass only the fields you want to change. Use addDomain/removeDomain to mutate the allowed-origins list atomically without overwri"},{"name":"neblla_upload_file","description":"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 t"},{"name":"neblla_list_files","description":"List all files staged for an app. Returns path, mimeType, size, and timestamps for each file."},{"name":"neblla_get_file","description":"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,"},{"name":"neblla_delete_file","description":"Delete a single file from an app."},{"name":"neblla_move_file","description":"Rename or move a file within an app. oldPath is the current path, newPath is the destination."},{"name":"neblla_create_product","description":"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 "},{"name":"neblla_update_product","description":"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"},{"name":"neblla_list_products","description":"List all products for a Neblla app."},{"name":"neblla_delete_product","description":"Permanently delete a product from a Neblla app."},{"name":"neblla_publish_app","description":"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"},{"name":"neblla_unpublish_app","description":"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."},{"name":"neblla_list_users","description":"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 re"},{"name":"neblla_search_users_by_email","description":"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 nebl"},{"name":"neblla_get_user","description":"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_"},{"name":"neblla_list_communications","description":"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"},{"name":"neblla_send_communication","description":"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 reconne"},{"name":"neblla_set_communication_read","description":"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."},{"name":"neblla_set_communication_important","description":"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 ow"},{"name":"neblla_delete_communication","description":"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."},{"name":"neblla_update_user_data","description":"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 "},{"name":"neblla_delete_account","description":"For safety the MCP never deletes accounts directly. Returns a URL for the user to visit and confirm deletion from the Neblla dashboard."}],"package":null},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"com.neblla/neblla","url":"https://registry.modelcontextprotocol.io/v0/servers/com.neblla%2Fneblla","firstSeenAt":"2026-09-05T20:18:53.003Z","fetchedAt":"2026-09-05T20:18:53.003Z","normalizedAt":"2026-09-05T20:18:53.003Z"}]},"firstSeenAt":"2026-09-05T20:18:53.003Z","updatedAt":"2026-09-05T22:26:52.115Z"}