Skip to main content
Glama
magna-nz

ASPNET Core Debugging MCP Server

debug_step

Step the debuggee in, over, or out of a function. Optionally wait for the stop to return a snapshot of locals, output, and stack.

Instructions

Single-step the debuggee. Kind: "in" (step into), "over" (step over), "out" (step out). Pass waitTimeoutSeconds > 0 to also block on the next stop and return the same one-shot snapshot as breakpoint_wait (top frame, snippet, top-frame locals, recent debuggee output). Without it the call returns immediately after issuing the step — today's behavior.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindYesStep kind: "in", "over", or "out".
threadIdNoThread id to step. If omitted, uses the last thread that stopped.
maxLocalsPerScopeNoCap on locals returned per scope on the top frame after the post-step stop. Default 30. Pass 0 to omit locals. Only used when waitTimeoutSeconds > 0.
waitTimeoutSecondsNoSeconds to wait for the resulting stop. 0 (default) returns immediately after issuing the step. > 0 blocks and returns the full enriched stop snapshot.
maxRecentOutputLinesNoCap on recent debuggee output lines included with the post-step stop (peeked, not drained). Default 50. Pass 0 to omit output. Only used when waitTimeoutSeconds > 0.
Behavior5/5

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

With no annotations, the description fully discloses behavior: it can block and return a snapshot (top frame, locals, output) similar to breakpoint_wait when waitTimeoutSeconds > 0, otherwise returns immediately. No contradictions.

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

Conciseness5/5

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

The description is two sentences, no unnecessary words, and front-loads the core purpose. It packs significant information efficiently.

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?

Despite no output schema, the description covers the return value for the blocking mode. All parameters are explained with their conditional use. The tool's behavior is completely described for its complexity.

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

Parameters4/5

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

Schema coverage is 100% (baseline 3). The description adds value by explaining that maxLocalsPerScope and maxRecentOutputLines are only used when waitTimeoutSeconds > 0, and clarifies the effect of waitTimeoutSeconds. This goes beyond the schema descriptions.

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 clearly states the tool's function: single-step the debuggee with three step kinds (in, over, out). It distinguishes itself from siblings like breakpoint_wait by noting it can return the same snapshot when waitTimeoutSeconds > 0.

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

Usage Guidelines4/5

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

The description explains the two modes of operation: immediate return vs. blocking wait with enriched snapshot. It implicitly guides the agent on when to use each mode, though it does not explicitly contrast with other stepping tools like debug_continue.

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/magna-nz/aspnetcore-debugger-mcp'

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