
Blocks MCP
Operate and edit Roblox experiences from your MCP assistant.
Что умеет
- Roblox Categories: Fetch the latest official Roblox OpenAPI JSON. No arguments lists categories and endpoint counts. category returns compact endpoint summaries and credential callability. Pass an exa
- Roblox Call: Call the exact operation_id returned by roblox_categories. Use its full OpenAPI spec to fill path/query/headers/body/content_type/files. The server attaches your connected credential. Suc
- Roblox Download Asset: Download an asset or private place file by asset_id through authenticated Open Cloud Asset Delivery. Optionally select version_number. Returns complete bytes as an MCP file reso
Какие данные видит
Нужен ли аккаунт
Не нужен: сервер работает без входа
Operate and edit Roblox experiences from your MCP assistant. Discover Roblox Open Cloud endpoints and their exact schemas; manage DataStores, MemoryStore, assets, universes, groups, and game settings; inspect and edit place files, Luau scripts, and DataModel instances; and troubleshoot live servers with the optional runtime bridge. Includes 12 tools, compact workflow discovery, structured errors, and explicit version checks for place edits. Connect through OAuth and link your Roblox Open Cloud key on the site. Permissions follow your key; publishing, restarts, and other writes require your authorization.
Как подключить
Как подключить Blocks MCP к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://blocks-mcp--alxspiker.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить Blocks MCP к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://blocks-mcp--alxspiker.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить Blocks MCP к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://blocks-mcp--alxspiker.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (12)
Технические названия из tools/list. Нужны только разработчикам.
| roblox_categories | Fetch the latest official Roblox OpenAPI JSON. No arguments lists categories and endpoint counts. category returns compact endpoint summaries and credential callability. Pass an exact operation_id to retrieve the full schema, parameters, examples, referenced models, and callable reason. Includes your private connection identity and key permissions. Read-only discovery. |
| roblox_call | Call the exact operation_id returned by roblox_categories. Use its full OpenAPI spec to fill path/query/headers/body/content_type/files. The server attaches your connected credential. Successful binary responses are attached as MCP embedded blob resources with filename, content type, and byte size metadata. HTTP errors (4xx/5xx) remain normal results with ok=false, status, error_type, error details, raw data, and normalized pagination. Local validation/authentication failures are MCP errors. Every method other than GET/HEAD needs roblox:write and explicit user authorization; this tool may modify, delete, or incur costs. No automatic retries. |
| roblox_download_asset | Download an asset or private place file by asset_id through authenticated Open Cloud Asset Delivery. Optionally select version_number. Returns complete bytes as an MCP file resource with .rbxl or .rbxlx filename, content type, and size metadata. No temporary file or handle is stored. Supports files up to 10 MB for place-file workflows. |
| roblox_publish_place | Upload caller-supplied complete RBXL or RBXLX bytes through the authenticated Places version API. Saved creates a saved version; Published also publishes. Requires roblox:write; publishing changes the live experience and needs explicit user authorization. File bytes are not persisted. |
| roblox_republish_place | Copy a place file from authenticated Roblox Asset Delivery and upload it to a target place entirely on the MCP server. Supports an optional exact source version. No binary content is returned, exposed to the AI, or persisted. Published changes the live target place and requires explicit user authorization. |
| roblox_luau_editor | Execute Luau against a pinned place version. Resolves the latest published version by default and returns the exact resulting version. Resume pending tasks with task_path. save_mode is none, saved, or published. expected_published_version is checked before saving. Optional broadcast_after_publish explicitly publishes to a selected cross-server topic after a successful publish; repeat the option when resuming a pending task. Roblox has no atomic save condition, so a separate publish can race after task start. Tasks run up to 5 minutes and each call waits up to 20 seconds. Saving or broadcasting needs explicit user authorization. |
| roblox_script_source | Search script source, read bounded line ranges or context around a literal match, and edit source without returning the entire place. Literal replacement is the default; ambiguous paths or duplicate single-replacement matches fail. Roblox Open Cloud does not expose a Luau syntax-check endpoint, so inspect/execute carefully before saving. Use expected_source_hash and expected_published_version for stale-edit checks. Read actions are read-only; saved/published edits require explicit authorization. |
| roblox_instances | Search, inspect, group and safely mutate instances in a pinned Roblox place without writing ad hoc Luau. Queries return compact paged paths/counts and structural signatures. set_properties, move, rename, delete, create, clone and batch_update support dry_run previews. Mutations require save_mode=saved/published plus expected_published_version for conflict protection. assign_handles stores stable BlocksMCPHandle attributes in the place; explicitly save to retain them. Advanced operations remain available in roblox_luau_editor. |
| roblox_docs | List concise curated Roblox API guides. Omit doc_id to list guide titles and summaries; pass an exact doc_id from that list to retrieve the full how-to, endpoint IDs, parameters, and usage notes. Guides explain workflows that are not clear from Roblox OpenAPI alone. Read-only. |
| roblox_feedback | List, create, replace, or delete feedback owned by the authenticated account. Use for actionable bugs, improvements, or missing API/spec context. List first to avoid duplicates. Each account can have at most 10 items; delete completed or declined items to free a slot. IDs are private to the owner. Never submit API keys, tokens, passwords, or Roblox cookies. |
| roblox_runtime_bridge | Install, inspect, upgrade, and remove independent Blocks-managed runtime modules; retrieve transient runtime/client logs; run trusted Luau only in one exact live server; or request a live handoff. runtime_luau backend=auto (default) probes the exact live server, prefers native loadstring when already enabled, and otherwise updates/reuses one verified MainModule asset per linked Roblox account. The fallback requires asset:read and asset:write permissions. You may explicitly choose loadstring or module_asset. The bridge never changes LoadStringEnabled. It validates the account-owned Model asset and marker, serializes updates per account, requires the exact requested version marker, and destroys the loaded model after execution. Roblox may retain asset version history; no place file is stored in Blocks MCP. Enabling loadstring permits arbitrary server code; install only in a game you control and send code you trust. Install/remove requires save_mode saved or published and expected_published_version is recommended. Existing servers do not receive published scripts until they restart. Requests/results live in MemoryStore with short TTLs; the bridge never changes LoadStringEnabled or touches unowned game instances. |
| roblox_workflow | Run a validated Roblox workflow. First use roblox_categories({domain}) to list actions, then roblox_categories({domain,action}) to inspect the exact arguments_schema. Supply only those arguments inside arguments; action belongs in the envelope. Domains cover stores, servers, assets, moderation, monetization, creator settings and more. Schemas are checked before any request. Writes, deletions, publishing, restarts and paid actions require explicit user authorization and roblox:write. No automatic write retries. Existing roblox_<domain> tool names remain callable compatibility aliases. |