Correlates browser or native app activity with dev-server logs on a shared timeline for debugging and repro capture.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Devloop.
projectCallable MCP tool function
cmdCallable MCP tool function
cwdCallable MCP tool function
package.jsonCallable MCP tool function
devCallable MCP tool function
developCallable MCP tool function
Browser control + dev-server logs on one correlated timeline β for AI agents and humans.
A unified dev-loop tool: it drives a browser and your dev server, pushing both sides into one timestamped buffer so you can correlate a browser console error with the backend stack trace from the same moment. It runs two ways from a shared core:
devloop-mcp daemon to instead serve one shared, long-running instance over HTTP/SSE that many agents/sessions connect to (see Daemon mode).WebContentsViews driven via CDP) with a browser bar (back/forward/reload + address) beside a collapsible side panel that toggles between logs and a repro builder. Project picker, auto-navigate, pop-out targets. The renderer is React 19 + Tailwind v4 + Radix + lucide-react. Serves the same tools over HTTP.Because every event (browser console/network/page-errors and server stdout/stderr) shares one monotonic clock, get_logs_around / repro return a correlated, cross-source slice of the timeline.
The cockpit also drives Expo/React Native projects, not just web. Open a native project and you get one pane with a Web Β· iOS Β· Android target switcher, a bundler toggle (Metro) separate from a Build button (expo run:ios / expo run:android, with @expo/fingerprint staleness detection), and:
index.bundle:1:β¦ resolves to original .tsx).XMLHttpRequest hook turns the app's fetch/XHR traffic into the same network timeline rows as web (so get_network / export_har / the network chip work for native too).native source β iOS simctl log stream, Android logcat.screencap mirror (~2fps) with clickβtap + key input. Screenshots on both.browser_snapshot reads the native accessibility tree (iOS via idb's UIKit a11y tree; Android via uiautomator dump) and browser_click/type/scroll/press drive the device by an element's pt:x,y ref (from the snapshot) or its label β replayable through repro, openable over MCP via native_open / native_build. The same agent tools as web, mapped onto native.All of it lands on the same correlated timeline, app-scoped β the web dev-loop experience, for a native app. (macOS + Apple Silicon for the embedded iOS simulator; Android works wherever the Android SDK + an emulator do.)
iOS interactions need idb: brew install facebook/fb/idb-companion and pipx install fb-idb (use Python <3.14 β newer Python breaks fb-idb). Android interactions need the Android SDK platform-tools (adb) + a booted emulator. The cockpit's Settings β native readiness runs a per-platform preflight (iOS: idb Β· companion Β· booted sim; Android: adb Β· booted device) and shows the exact fix for anything missing; observation (logs/screenshots) works without the interaction tooling.
serve-sim is vendored into the cockpit and run via Electron's own Node, so the embedded simulator works out of the box β offline, no bun/node/npx or first-run fetch. (Running from source uses the copy in node_modules instead.)
Three transports expose one shared core, which drives one of several substrates (a real browser, or β in the cockpit β a native device). Everything pushes onto a single timestamped timeline.
The tool layer never knows what's behind it β Puppeteer or Electron, stdio or HTTP, web page or native app. It's wired once at startup. The browser sits behind a single IBrowserController interface; the cockpit's pane manager implements the richer IBrowserManager (multiple panes, delegating browser_* to the active one β or to the native controller when an iOS/Android target is open). A capability layer gates tools by the active target, so an agent gets a clear message instead of a substrate error.
stdout is reserved for the MCP protocol in stdio mode; all human-facing output goes to stderr.
WebContentsView panes over CDP in the cockpit) and a native one (React Native over Hermes/Metro). Shared page-action + accessibility-snapshot logic and device/throttle emulation sit above them.NativeDriver (idb on iOS, adb on Android); native logs (simctl / logcat), screenshots + live mirrors, build orchestration (expo run), and a readiness preflight round it out.Headless MCP (stdio) β no clone needed, register it with Claude Code:
(Published as devloop-mcp on npm; Puppeteer fetches Chromium on first install.)
Cockpit (desktop app) β grab the installer for your OS from Releases (.dmg / .exe / .AppImage). macOS ships both Apple Silicon (arm64) and Intel (x64) builds. The app checks GitHub for a newer release on launch and prompts before downloading or installing β or trigger it yourself from settings β updates β check for updates.
From source (dev) β requires bun:
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/vincentvella-devloop)<a href="https://allmcps.com/mcp/vincentvella-devloop"><img src="https://allmcps.com/api/badge/vincentvella-devloop?style=directory" alt="Devloop on AllMCPs" /></a>