MCP server for delegating AI agent tasks to the Cursor Agent CLI with persisted jobs, logs, model discovery, and safe handoffs.
Cursor Agent MCP has well-structured tool definitions with complete JSON schemas and clear descriptions. All 11 tools are explicitly registered with inputSchema, descriptions, and proper type definitions. Naming follows verb_noun convention (health_check, list_models, handoff, start_task, etc.). However, parameter descriptions are sparse, many lack guidance on expected formats, constraints, or when to use them. Output schemas are not documented, forcing LLMs to infer response structure. Error handling is present but generic. Security considerations (secrets, permissions) are not visible in tool definitions. Composition is strong: tools chain well (handoff→list_jobs→job_status→job_result), and the job lifecycle is clear.
Cancel a running Cursor Agent job and clean up its process tree.
Create a persisted Cursor Agent job. Read-only ask/plan jobs wait briefly by default; agent/edit jobs return a jobId immediately.
Check Cursor Agent auth, DNS/HTTPS reachability, model availability, optional restricted mode, and an optional tiny write smoke test.
Return final metadata, parsed Cursor Agent JSON from full stdout, and stdout/stderr tails.
Return status for a job, including elapsed time, output byte counts, expected output checks, and changed-file counts.
List recent Cursor Agent MCP jobs, including running jobs.
Output schemas not documented. LLMs cannot infer response structure for tools like job_result, list_models, or model_capabilities. This forces agents to guess what fields are returned and risks failed downstream tool calls.
Parameter descriptions lack actionable constraints. 'workspace' and 'model' parameters appear in multiple tools but have no description explaining format, required values, or how to discover valid options. LLMs cannot self-correct invalid inputs.
Complex parameter 'requiredJsonFields' in handoff/start_task accepts oneOf [object, array, string] with no description of the expected structure. LLMs will struggle to construct valid input without examples or schema clarification.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
List models available to the local Cursor Agent account with inferred capability metadata.
List skills discovered by Cursor Agent for a workspace.
Return inferred capability metadata for one model or all Cursor Agent models.
Start a background Cursor Agent job and return a job id. This is the recommended path for long-running edit tasks.
Read incremental stdout or stderr logs for a job using byte offsets.
No error recovery guidance. Tool descriptions do not explain what errors are retryable, what indicates user misconfiguration, or what the agent should do if a job fails. Generic error responses will not guide LLM recovery.
No permission or scope declarations. Tools like cancel_job and handoff (with allowEdits=true) can modify state, but no tool description declares required permissions or warns about destructive capability. Agents cannot reason about least-privilege access.