Skip to main content
Glama
openl-tablets

OpenL MCP Server

Official

Resume to Next Stop

openl_resume_trace

Resume a paused debugging session and wait until it hits the next breakpoint, exception, or finishes, then get the stack trace. On timeout, returns still-running status so you can continue waiting.

Instructions

Resume the suspended debug session and wait (inside this call — no agent-side polling) until it stops again: at the next breakpoint, at an exception, or at completion. Unlike openl_step_trace(out), which only runs the current frame to its exit, resume runs to the NEXT breakpoint or the end. Returns the stack (compact — steps for the active frame only) at the stop; on a terminal 'error' status it carries the structured 'error', and on 'completed' of a profiling run the constant-size 'profile' overview (set includeTree: true for the one-level 'tree' root, then drill in with openl_expand_trace_tree). On timeout (default 30s) the still-running status is returned — call openl_resume_trace again to keep waiting (it re-attaches without re-resuming), or openl_stop_trace to give up.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
projectIdYesProject ID returned by backend. Use the exact 'projectId' value from openl_list_projects() response without modification or reformatting.
timeoutMsNoMaximum time to wait for the next suspension or completion, in milliseconds. Default 30000, cap 600000. On timeout the current (still running) status is returned — call openl_resume_trace again to keep waiting, or openl_stop_trace to give up.
profileTopNoNumber of hotspots (slowest tables) in the 'profile' overview (backend default 20).
includeTreeNoAlso return the executed call tree's ROOT node ('tree'), not just the bounded 'profile' overview (default false). Against a current OpenL Studio the tree is lazy — one level deep: the root's steps each carry a 'childrenTotal' count instead of nested children, so a large run is no longer returned whole. Drill into a branch with openl_expand_trace_tree; to find the hot table use 'profile' and replay into it with a breakpoint.
response_formatNoResponse format: 'json' for structured, round-trippable data (default), 'markdown' for human-readable output, 'markdown_concise' for a brief summary (1-2 paragraphs), or 'markdown_detailed' for full details with contextjson
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses critical behavioral traits beyond the openWorldHint annotation: the call blocks inside the tool ('no agent-side polling'), timeout returns the still-running status, re-calling re-attaches without re-resuming, and return payloads vary by status ('error' carries structured error, 'completed' profiling run carries 'profile'). This gives the agent an accurate model of the tool's runtime behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but front-loaded with the core behavior and wait semantics, then branches into alternatives, return values, timeout handling, and tree details. Each clause earns its place, though the single long paragraph is slightly harder to scan than structured sections would be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a blocking debug-resume tool with no output schema, the description is remarkably complete: it covers stop conditions, return shapes, timeout behavior, re-entry semantics, escape hatch via openl_stop_trace, profile/tree options, and how to drill into the tree. An agent has enough information to invoke it correctly and handle all major outcomes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although schema coverage is 100%, the description adds substantial meaning: timeoutMs behavior (defaults, cap, and resume-on-timeout semantics), includeTree's lazy one-level tree behavior and childrenTotal counts, and profileTop's hotspot count. It connects parameters to real workflow decisions rather than repeating schema names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Resume the suspended debug session and wait... until it stops again.' It names the stop conditions (next breakpoint, exception, completion) and explicitly distinguishes itself from openl_step_trace(out), so an agent can immediately tell what this tool does and how it differs from a close sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use context: use it after a session is suspended and you want to run to the next stop. It names the alternative openl_step_trace, explains when to call openl_resume_trace again (on timeout), and when to give up via openl_stop_trace. It also instructs on includeTree and openl_expand_trace_tree for drilling into the tree.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/openl-tablets/openl-mcp'

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