Observable Notebook Kit Debug MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
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
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| 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
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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