Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

Explore

  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Tags index
  • Submit a server
  • Pricing

Learn

  • Guides hub
  • What is MCP?
  • Install guide
  • Troubleshooting
  • Security
  • Blog
  • Blog RSS

Tools

  • All tools
  • Config generator
  • Config validator
  • MCP playground
  • OpenAPI β†’ MCP
  • Badge generator

For agents

  • API docs
  • Trust & traffic
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
  • Remote MCP β†— (opens in a new tab)

Company

  • About
  • Contact
  • X (@AllMCPs) β†— (opens in a new tab)
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on Buildlist
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ“‚ Browser Automation
  3. Tripwire
T
Health: Not checked yetWe have not completed a health check for this listing yet.Last checked 8/11/2026, 12:24:56 AM

Tripwire

Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository

MCP for Roblox Studio and Open Cloud: drive Studio, run headless tests, and review game security.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Install Config Generator

Choose your client
claude_desktop_config.json
{
  "mcpServers": {
    "tripwire": {
      "command": "npx",
      "args": [
        "-y",
        "tripwire"
      ]
    }
  }
}

πŸ’‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

Install Directory Badge Claim listing AlternativesπŸ“‚ More in Browser Automation

Documentation Overview

Tripwire

made by alibolly

npm CI MCP Registry License: MIT

An MCP server that gives an AI coding agent real control of Roblox Studio and Roblox Open Cloud, with a test-and-security layer no other Studio MCP has.

Tripwire lets an assistant read, write, and edit the data model, drive playtests with simulated input, run tests-as-code headlessly in the real engine, flag client-trust exploits in game code, and call the Open Cloud APIs (DataStores, MessagingService, Memory Stores, and more). The Studio tools need no API key; the headless test, asset, and Open Cloud tools use an Open Cloud key.


Requirements

  • An MCP client: Claude Code, Codex, Gemini, or any client that speaks MCP over stdio.
  • Roblox Studio, for the Studio tools. These need no API key.
  • Node.js, only if you run the server with npx. The prebuilt binary needs no Node.
  • For the headless test, asset, and Open Cloud tools: a published place and a Roblox Open Cloud API key. See Open Cloud setup.

Quickstart

Tripwire is for Roblox developers who drive Studio through an AI coding agent.

  1. Wire the server into your MCP client (one command or a small config block, see Install below).
  2. Install the Studio plugin so the Studio tools can reach Studio (see the plugin step in Install).
  3. Open your place in Studio, turn on Game Settings > Security > Allow HTTP Requests, then click the Tripwire toolbar button and press Connect in the panel. The panel shows Connected and the Output prints [Tripwire v...] connected.
  4. Ask your agent to run studio_status. A connected Studio confirms the bridge works.
  5. Optional: add an Open Cloud key for the headless test, asset, and Open Cloud tools (see Open Cloud setup).

Install

Tripwire's server is a single binary. The easiest way to run it is with npx, which fetches the prebuilt binary for your platform, so there is no Rust toolchain to install. Prefer a manual binary or a source build? See the Alternatives at the end of this section.

Claude Code

One command:

Terminal
claude mcp add --transport stdio tripwire -- npx -y tripwire-roblox

Or add it to a project .mcp.json (or ~/.claude.json):

config.json
{
  "mcpServers": {
    "tripwire": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "tripwire-roblox"]
    }
  }
}
Codex

Add to ~/.codex/config.toml:

toml
[mcp_servers.tripwire]
command = "npx"
args = ["-y", "tripwire-roblox"]

Or: codex mcp add tripwire -- npx -y tripwire-roblox

Gemini

Add to ~/.gemini/settings.json (or a project .gemini/settings.json):

config.json
{
  "mcpServers": {
    "tripwire": {
      "command": "npx",
      "args": ["-y", "tripwire-roblox"]
    }
  }
}

Or: gemini mcp add tripwire npx -y tripwire-roblox

Other MCP clients

Any client that speaks MCP over stdio can run it:

Code
command: npx
args:    ["-y", "tripwire-roblox"]
Alternatives: prebuilt binary, or build from source

Prebuilt binary (no Node). Download the archive for your platform from the Releases page (for example tripwire-server-vX.Y.Z-aarch64-apple-darwin.tar.gz), extract it, and point your client's command at the extracted tripwire-server with empty args.

Build from source (needs Rust):

bash
git clone https://github.com/aliboIly/Tripwire.git
cd Tripwire/server
cargo build --release   # produces server/target/release/tripwire-server

Then point your client's command at that binary path.

Studio plugin (required for the Studio tools)

The Studio tools reach Studio through a small plugin that long-polls the local server. Grab Tripwire.rbxmx from the Releases page, or build it:

bash
cd Tripwire/plugin
npm install
npx rbxtsc
rojo build --output Tripwire.rbxmx
cp Tripwire.rbxmx ~/Documents/Roblox/Plugins/   # macOS; Windows: %LOCALAPPDATA%\Roblox\Plugins

Restart Studio, enable Game Settings > Security > Allow HTTP Requests, then click the Tripwire toolbar button and press Connect in the panel. The panel shows Connected and the Output prints [Tripwire v...] connected.

Open Cloud key (for headless tests, assets, and Open Cloud tools)

The Studio tools need no key. The Open Cloud tools do. See Open Cloud setup below for the full walkthrough.


Open Cloud setup

Most of Tripwire needs no credentials. These tools do, because they call Roblox Open Cloud: run_luau, the headless tests (run_tests, run_test_file, list_tests), upload_asset, publish_place, and the DataStore, Ordered DataStore, MessagingService, Memory Store, platform, and engagement tools. They authenticate with a Roblox Open Cloud API key.

Use at your own risk. An Open Cloud key is a real credential with real power over your experience. Depending on the scopes you grant it, it can read and overwrite your live DataStores, publish new versions of your place, upload assets to your account, and message your servers. Treat it like a password: grant only the scopes you actually use, restrict it to your own IP, never commit it, and revoke it if it leaks. You are responsible for what you do with it. Tripwire is not affiliated with or endorsed by Roblox.

1. Create the key

  1. Go to create.roblox.com/dashboard/credentials and sign in.
  2. Click Create API Key and name it (for example Tripwire).
  3. Under Access Permissions, add only the API systems for the tools you want, and grant each the operation it needs, scoped to your experience:
    • Luau Execution (write): run_luau and the headless tests.
    • universe-places (write): publish_place.
    • Assets (read + write): upload_asset.
    • DataStores and Ordered DataStores: the data-store tools.
    • Messaging Service (publish) and Memory Stores: those tools.
    • User/Group/Inventory/Subscription/Notification: the platform and engagement tools.
  4. Under Security, set Accepted IP Addresses to your machine's IP, or 0.0.0.0/0 to allow any (simplest for local use). Set an expiration if you want.
  5. Click Save & Generate Key and copy the key string. It is shown only once.

2. Find your universe and place IDs

In the Studio command bar (View, then Command Bar), run:

lua
print("universe", game.GameId, "place", game.PlaceId)

GameId is your ROBLOX_UNIVERSE_ID; PlaceId is your ROBLOX_PLACE_ID. The place must be published to Roblox for Open Cloud to act on it.

3. Give Tripwire the credentials

Create a .env at the repo root. It is gitignored and the server loads it automatically:

bash
ROBLOX_OPEN_CLOUD_KEY=paste_the_key_here
ROBLOX_UNIVERSE_ID=000000
ROBLOX_PLACE_ID=000000
ROBLOX_CREATOR_USER_ID=000000   # only for upload_asset (your user id)

Or put the same variables in your MCP client's env block instead (those take precedence). Reconnect the MCP server after changing either. Each tool works when the key grants its scope and returns Roblox's own error if a scope is missing, so you can add scopes as you go.


Tools

Connection

studio_statusWhether a Studio is connected, the active place, and any other connected studios.
ping_studioRound-trip a ping through the plugin to confirm the live bridge works.
list_studiosList every connected (or recently seen) Studio: place, whether it is active, last-seen, and playtest state.
set_active_studioChoose which connected Studio the tools target (by id, id prefix, or place name). Automatic with one Studio.

Read and inspect

get_file_treeList the instance tree from a path (default the whole game), bounded by depth.
get_instance_childrenList the direct children (name and class) of an instance.
get_instance_propertiesRead an instance's name, class, full path, attributes, and a curated set of common engine properties (Position, Size, Color, Material, Anchored, Text, and so on).
search_objectsFind instances whose name contains a query, optionally filtered by exact class or by class-and-subclasses (isA).
search_by_propertyFind instances whose property equals a value, optionally filtered by exact class or by class-and-subclasses (isA).
get_script_sourceRead the source of a Script, LocalScript, or ModuleScript.
grep_scriptsSearch script sources for a substring; returns path, line number, and line.
get_output_logRecent Studio Output entries (message, type, timestamp).
get_selectionThe instances currently selected in Studio.
get_class_infoLook up a Roblox class's members (properties, methods, events) with their types, inherited members folded in. Answered from a bundled API reflection dump, so it needs no Studio and no key.

Spatial (read-only)

raycastCast a ray and report the first hit (instance, position, normal, material, distance) or no hit, with an optional excluded subtree.
get_bounding_boxThe world-space bounding box (center and size) of a Model or BasePart.
find_spawnsList the SpawnLocations under a path: position, whether each is enabled, and whether it is neutral.
capture_screenshotCapture the Studio viewport as a JPEG image so the agent can see the scene. Needs the plugin connected and Allow Mesh / Image APIs enabled (Game Settings, Security). Edit mode only.

Edit (each is one undo step)

create_instanceCreate an instance of a class with an optional name and initial properties.
delete_instanceDestroy an instance and its descendants.
set_propertySet one typed property (primitive, Vector3, Color3, UDim2, CFrame, EnumItem, or an instance reference).
update_script_sourceReplace a script's source through the script editor (the supported write path).
insert_modelInsert an asset by id, with optional reposition or unpack.
mass_createCreate many instances in one undo step (atomic, or best-effort with per-item results).
mass_set_propertySet one property on many instances in one undo step (atomic or best-effort).

Playtest and input

start_playtestStart an F5 playtest (server and client DataModels with a player); injects the in-play runner.
stop_playtestStop the F5 playtest (best-effort; F5 teardown can outlast the confirmation).
start_simulationStart an F8 run (server-only simulation, no client or player).
stop_simulationStop the F8 run (clean).
simulate_mouse_inputClick or move the mouse at screen coordinates during an F5 playtest.
simulate_keyboard_inputPress a key (tap/press/release) or type text during an F5 playtest.
character_navigationWalk the local character toward a world position; reports whether it reached the goal.
get_playtest_outputThe running playtest's output log, aggregated across the server and client peers. Pass the cursor from the previous call as since to get only new lines; the buffer is bounded so long sessions do not freeze it.
reset_playtest_outputClear the playtest's output buffers so the next read starts fresh, without restarting Studio.
run_luau_liveEvaluate Luau in the live F5 playtest server and return the result, so you can inspect the running game (a Humanoid's state, an NPC's position, a path's waypoints) without adding a print and replaying. Needs an active playtest and ServerScriptService.LoadStringEnabled on in the test place. Distinct from run_luau, which is headless against the published place.

Tests and headless execution (Open Cloud)

run_luauRun a Luau script headlessly in the published place; returns the results and logs.
run_testsRun the headless test suite in the published place and report passed/failed with messages.
run_test_fileRun a single spec by name, headlessly.
list_testsList the spec files and their cases discovered in the published place.
write_testWrite a roblox-ts test spec to disk; rebuild and publish, then run_tests picks it up.

Security review (static analysis, no key)

review_securityReview the game source for client-trust and unvalidated-remote issues, each with a suggested server-side fix.
scan_remotesList server remote handlers and the client-controlled parameters of each.
scan_client_trustFlag server handlers that use client-supplied values without validating them.

Assets and publishing (Open Cloud)

upload_assetUpload a local file as a Roblox asset (Decal, Audio, Model, Animation, or Video); returns the assetId.
publish_placePublish a local place file (.rbxl/.rbxlx) as a new version of the experience.

DataStores (Open Cloud)

list_datastoresList the standard data stores in the universe.
list_datastore_entriesList entry keys in a data store.
get_datastore_entryRead an entry's value and metadata.
set_datastore_entryCreate or overwrite an entry (value plus optional users/attributes).
delete_datastore_entrySoft-delete an entry (purged after 30 days).
increment_datastore_entryAtomically add an integer to a numeric entry.
list_ordered_entriesList ordered data store entries by value, ascending or descending.
get_ordered_entryRead one ordered data store entry.
set_ordered_entrySet (upsert) an ordered data store entry to a non-negative integer.
increment_ordered_entryAtomically add to an ordered data store entry.

Messaging and memory (Open Cloud)

publish_messagePublish a message to a MessagingService topic (reaches running production servers).
memory_sorted_map_setSet (upsert) a Memory Store sorted-map item, with TTL and sort keys.
memory_sorted_map_getRead a Memory Store sorted-map item.
memory_sorted_map_listList sorted-map items in sort order.
memory_sorted_map_deleteDelete a sorted-map item.
memory_queue_addAdd an item to a Memory Store queue, with priority and TTL.
memory_queue_readRead items from a queue; returns a readId for the discard call.
memory_queue_discardPermanently remove a read batch by its readId.

Platform and engagement (Open Cloud)

get_universeThe configured universe's metadata.
get_placeThe configured place's metadata.
get_userA user's public profile.
get_groupA group's metadata.
list_inventoryA user's inventory items, filterable by type or id.
send_notificationSend an experience notification to a user (from a Creator Dashboard template).
get_subscriptionRead a user's subscription to a subscription product.

What you can do

  • Build scenes from a prompt. Create and mass-create instances, set typed properties, insert models, and write scripts, each as a clean undo step.
  • Test gameplay in CI. Write specs, run them headlessly in the real engine through Open Cloud, and gate pull requests on the results.
  • Catch exploits before they ship. The security reviewer flags server handlers that trust client input and suggests the server-side fix; the same check runs automatically on every PR.
  • Drive a real playtest. Enter Play mode, send keyboard and mouse input, walk the character to a spot, read the combined server/client output, then stop.
  • Inspect a live place. Read the instance tree, search by name or property, read and grep scripts, and pull the Output log.
  • Automate Open Cloud. Seed DataStores for test fixtures, publish a place, broadcast a MessagingService topic, or look up users, groups, and inventory.

Known limits

These are platform limits, not bugs. They are written down here so you know going in.

  • F5 playtest stop is best-effort. stop_playtest may not take, because the plugin and the running game are separate DataModels. stop_simulation (F8) stops cleanly. If an F5 playtest will not stop, press Stop in Studio.
  • In-play actions go through an injected runner. Input, runtime state, and stop during a playtest are relayed over the bridge, not called directly on the plugin.
  • Headless tests run a server context. Open Cloud runs your published place on a server, where RunService:IsStudio() is false and plugin APIs are absent. Use it for server and gameplay logic and the security tests, not for Studio-plugin or client-input behaviour.
  • Tool parity with Roblox's built-in Assistant is maintained by hand.

Tripwire is maintained by one person in spare time. Issues and pull requests usually get a reply within about a week. A slow reply is not a no.


Troubleshooting

The Studio tools time out or report no connected Studio. The plugin is not connected. Install Tripwire.rbxmx, restart Studio, click the Tripwire toolbar button, and press Connect in the panel. The panel status and the Output line [Tripwire v...] connected both confirm it.

The plugin reports that HTTP is blocked. Turn on Game Settings > Security > Allow HTTP Requests on the open place. This is the most common setup failure. Studio cannot reach the local bridge without it.

The Output shows a version mismatch between the plugin and the server. The installed .rbxmx is stale. Rebuild it (npx rbxtsc && rojo build --output Tripwire.rbxmx), copy it into your Plugins folder, and restart Studio. The plugin prints its compiled version, so the prefix tells you what is actually installed; the panel header shows the same version.

An Open Cloud tool returns a 401, 403, or scope error. The key is missing the scope that tool needs, the universe or place id is wrong, or the place is not published. Add the scope on the Creator Dashboard, confirm the ids, and reconnect the MCP server. The error text is Roblox's own, so it names what is missing.

run_tests does not see your latest change. It reads the published place. Publish first; rojo serve only updates the live edit session, not what Open Cloud runs.

npx cannot fetch the server. You have no Node.js, or no network for the first download. Install Node, or use the prebuilt binary from the Releases page and point command at it (see Alternatives under Install).

The server says the bridge port is busy. A previous server is still holding port 44331. Close the old MCP session or the stale process, then reconnect.


Prior art

The Studio runtime approach (a plugin that long-polls a local server, an injected in-play runner) follows ideas from boshyxd/robloxstudio-mcp and Chrrxs/robloxstudio-mcp. Tripwire is an independent, from-scratch implementation; the headless test harness, the CI security reviewer, and the Open Cloud tooling are its own.


Contributing

Bug reports, feature ideas, and patches are welcome. See CONTRIBUTING.md for the setup, the build gates, and the branch and commit rules, and ARCHITECTURE.md for how the pieces fit together. By taking part you agree to the Code of Conduct.

Found a security issue? Do not open a public issue. See SECURITY.md for the private disclosure path.

Changelog

Release notes for each version are on the Releases page.


License

MIT. See LICENSE.

Related MCP Servers

View all in Browser Automation View all alternatives
  • Browser Use logoBrowser Use

    Control a real Chrome browser to complete any task: fill forms, extract data, book flights.

    πŸ“‚ Browser Automation0 views
    Compare vs Browser Use β†’
  • Yutu logoYutu

    A fully functional MCP server and CLI for YouTube to automate YouTube operation

    πŸ“‚ Browser Automation4 views
    Compare vs Yutu β†’
  • Playwright Plus Python Mcp logoPlaywright Plus Python Mcp

    An MCP python server using Playwright for browser automation,more suitable for llm

    πŸ“‚ Browser Automation3 views
    Compare vs Playwright Plus Python Mcp β†’
  • Ios Simulator Mcp logoIos Simulator Mcp

    A Model Context Protocol (MCP) server for interacting with iOS simulators. This server allows you to interact with iOS simulators by getting information about them, controlling UI interactions, and inspecting UI elements.

    πŸ“‚ Browser Automation2 views
    Compare vs Ios Simulator Mcp β†’

Frequently Asked Questions about Tripwire

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "tripwire": { "command": "npx", "args": ["-y", "Tripwire"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewTripwire AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/tripwire?style=directory)](https://allmcps.com/mcp/tripwire)
HTML Embed
<a href="https://allmcps.com/mcp/tripwire"><img src="https://allmcps.com/api/badge/tripwire?style=directory" alt="Tripwire on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ“‚Browser Automation
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
27Quality signal: Emerging Β· 27/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership8/20
Documentation & tools11/30
Adoption & activity1/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedAllMCPs Server logo

AllMCPs Server

The official MCP server for AllMCPs.com - submit and manage tools directly from your AI. The open directory for MCP servers. Connect Claude, Cursor, Windsurf, and AI agents to databases, tools, files, and APIs. Explore 3,181+ servers. AllMCPs is the premier, open directory for discovering, evaluating, and installing Model Context Protocol (MCP) servers to equip AI agents and LLMs with real-world superpowers.

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Free dofollow backlink: after claiming, verify your product site and place a dofollow AllMCPs badge β€” we recheck it stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ“‚ Browser Automation β†’Best MCP servers for Browser Automation β†’Alternatives to Tripwire β†’Install in Claude DesktopInstall in CursorInstall in VS Code