home / mcp / devtools debugger mcp server
An MCP server exposing full Chrome DevTools Protocol debugging: breakpoints, step/run, call stacks, eval, and source maps.
Configuration
View docs{
"mcpServers": {
"scriptedalchemy-devtools-debugger-mcp": {
"command": "node",
"args": [
"path/to/devtools-debugger-mcp/dist/index.js"
]
}
}
}You can debug Node.js applications with this MCP server by connecting to the builtβin inspector through the Chrome DevTools Protocol. It gives you full debugging capabilities such as breakpoints, stepping, variable inspection, and source map support, all accessible via MCP client commands.
You use this MCP server by starting a debug session for your Node.js script, then issuing commands to set breakpoints, resume execution, inspect scopes, and evaluate expressions at pause points. The server launches Node with the inspector enabled, attaches to the debug session, and returns a pause state with identifiers you use to continue or step. You can read console output captured since the last step or resume to the next pause.
Prerequisites: ensure you have Node.js installed on your machine. You may also want a client that can issue MCP tool calls to control the debugging session.
npm install devtools-debugger-mcpConfigure the MCP client to run this server by specifying how to start it. You have two supported stdio configurations in this setup.
{
"devtools-debugger-mcp": {
"command": "node",
"args": ["path/to/devtools-debugger-mcp/dist/index.js"]
}
}If you prefer running the server directly as a CLI tool, you can use the global binary provided after installation.
{
"devtools-debugger-mcp": {
"command": "devtools-debugger-mcp"
}
}Launches Node with the inspector enabled and returns the initial pause, allowing you to connect and begin debugging.
Sets a breakpoint by file path and 1-based line number, pausing execution when reached.
Adds a conditional breakpoint or breakpoint by URL pattern to pause only under specified conditions.
Adds a logpoint that prints a message when hit without stopping program execution.
Configures pause-on-exception behavior to none, uncaught, or all.
Marks scripts to be ignored when producing call stacks to focus on your code.
Lists all loaded scripts and returns identifiers for source retrieval.
Fetches the source code for a given script by id or URL.
Runs the program until it reaches a specified file path and line.
Restarts execution from a specific call frame to re-evaluate a section of code.
Continues execution to the next pause, including optional context like scopes, stack, and console output.
Steps over the current statement with optional context capture.
Steps into the next function call with optional context capture.
Steps out of the current function with optional context capture.
Evaluates a JavaScript expression in the paused context and returns the result.
Retrieves locals, closures, and the this preview for the current pause.
Drills into an object to read its properties and previews.
Provides a summary of the current call stack frames.
Returns pause reason and location details for the current pause.
Reads console output produced since the last pause or step.
Terminates the debugging session and detaches from the Node.js process.