Skip to main content
Glama

cursor_reply

Send a follow-up message to continue an existing Cursor agent session, using the session_id from a previous agent call to maintain conversation context.

Instructions

Continue an existing Cursor agent session. Send a follow-up message in the same conversation context. Requires a session_id from a previous cursor_agent call.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modelNoOverride the model for this reply (any id cursor_models lists). If omitted, uses the session's original model.
promptYesFollow-up message to send in an existing Cursor agent session.
session_idYesSession ID from a previous cursor-agent call. Use cursor-sessions to list available sessions.
timeout_secondsNoMaximum execution time in seconds (10-3600). Default: 600 (10 minutes).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
modelYesThe model cursor-agent reported at start (its display name), if it did
resultYesThe agent's final answer; without a result event, its last message, else empty (what stdout held is in noise_sample, never here)
statusYescursor-agent's result subtype: success, error, …; no-result-event when the run ended without one
stderrYes
is_errorYes
exit_codeYescursor-agent's exit code (null when it was killed)
request_idYes
session_idYesThe session to resume with cursor_reply
tool_callsYesCompleted tool calls the agent made
duration_msYes
noise_linesYesstdout lines that were not stream-json events (counted, never dropped)
noise_sampleYesThe first few of those lines, verbatim (500 characters each at most)
files_changedYesPaths of file-tool write/edit/delete calls that reported success, in order, each once. Shell commands are not inspected: a file written by a shell tool is not listed.
files_proposedYesPaths of file-tool write/edit/delete calls that did not report success (proposed without --force, refused, failed), each once

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.2.0

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses the dependency on a prior cursor_agent/session_id, but says nothing about side effects (an agent session can read and modify code), blocking behavior, or what happens on failure/timeout for what is effectively a long-running state-changing call. The timeout semantics live only in the schema, and agent-session side effects are never surfaced.

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?

Three short sentences, front-loaded with the core action and free of filler. The final sentence overlaps with the schema's session_id description, but it also usefully points at the sibling that produces the ID, so it earns most of its place.

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

Completeness4/5

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

An output schema exists, so return values need no explanation, and all four parameters are documented in the schema. The description covers the action and the entry precondition, leaving only behavioral concerns such as side effects and long-running/blocking execution unaddressed.

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

Parameters3/5

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

Schema description coverage is 100%, with the model, timeout, session_id and prompt parameters all documented in the schema itself. The description only restates the session_id requirement already covered in the schema and adds no format, default, or interaction detail for model/timeout overrides, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource ('Continue an existing Cursor agent session', 'Send a follow-up message') and contrasts implicitly with cursor_agent by emphasizing that the session must already exist. An agent can distinguish it from the session-creating sibling, though the contrast is framed as a prerequisite rather than an explicit sibling comparison.

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?

Clearly establishes the usage context ('the same conversation context') and the precondition ('Requires a session_id from a previous cursor_agent call'), which effectively routes the agent to cursor_agent when no session exists. No explicit when-not or named alternative is stated, so it falls short of a 5.

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