Skip to main content
Glama
rreusser

Observable Notebook Kit Debug MCP Server

by rreusser

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
ListNotebooksA

List all connected notebooks. Use this to see which notebooks are available before targeting a specific one.

FocusNotebookA

Focus on a specific notebook. When multiple notebooks are connected, this sets which one receives commands by default. Use ListNotebooks to see available options.

RefreshA

Trigger notebook page refresh and wait for completion. Captures all logs and errors from the new session.

NavigateA

Navigate a notebook to a different URL, or open a URL in the default browser if no notebooks are connected. If a notebook is connected, navigates that browser window to the new URL. If no notebooks are connected, opens the URL in the OS default browser. Useful for switching between notebooks (e.g., from localhost:5173/notebooks/notebook-a to localhost:5173/notebooks/notebook-b) or opening a notebook for the first time.

ListValuesB

List all named values in the Observable runtime's reactive graph.

GetValueB

Get a value from the Observable runtime by name. Returns the value along with its state (fulfilled, pending, or rejected). Automatically returns image content for Canvas and SVG elements.

GetValuesA

Get multiple values from the Observable runtime at once. If no names provided, returns all values. Useful for getting a snapshot of the runtime state.

GetValueMetadataA

Get metadata about a value in the Observable runtime including its state, type, dependencies (inputs), and dependents (outputs) without fetching the full value.

GetConsoleMessagesA

Get console messages (log, info, warn, error) from the current or most recent session. Use this to debug console output without triggering a refresh.

GetErrorsA

Get errors from the notebook. Returns both Vite build/parse errors (e.g. syntax errors that prevent the page from loading) and Observable runtime errors (values in a rejected state). If the page fails to load due to a syntax error, call this first — it will surface the Vite error even without a connected runtime. For console.error messages, use GetConsoleMessages with channel="error".

SetInputValueA

Set the .value property of an input widget in the Observable runtime (e.g., Inputs.range, Inputs.select, Inputs.text) and dispatch an input event, triggering reactive updates to dependent values.

GetElementContentA

Get content from a DOM element by CSS selector. Auto-detects element type: returns text/HTML for regular elements, returns image content for canvas/SVG elements.

GetDependencyGraphA

Get the dependency graph from the Observable runtime showing how values depend on each other. Returns nodes (values) and edges (dependencies).

BrowserEvalA

Execute JavaScript in the browser context. Has access to the DOM but NOT the Observable runtime. Use RuntimeEval instead when you need access to notebook variables. Useful for DOM inspection, computed styles, or browser APIs.

MouseClickA

Simulate a mouse click at a position. Can target a specific element or coordinates.

MouseDragA

Simulate a mouse drag from start to end position. Emits mousedown, mousemove events per animation frame, then mouseup.

MouseWheelC

Simulate a mouse wheel scroll at a position.

MouseHoverA

Simulate mouse hover at a position. Dispatches mouseenter, mouseover, and mousemove events to trigger hover states and tooltips.

SendKeysA

Simulate keyboard input. Dispatches keydown, keypress (for printable characters), and keyup events to the target element.

RuntimeEvalA

Evaluate an expression in the Observable runtime context, with access to all notebook variables. Must use a return statement. Prefer this over Eval when computing derived values from runtime state. Examples: "return a + b" computes a sum; "return data.filter(d => d.value > 0)" filters a dataset.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rreusser/mcp-observable-notebookkit-debug'

If you have feedback or need assistance with the MCP directory API, please join our Discord server