Sasha MCP reference

reportClaudeDesktopJob

Report a Claude Desktop job back to Sasha

Send your report on a job back to Sasha when you finish or cannot go on: what you found, what you changed and what you could not do. Optionally one entry per part of the job. The job becomes reported, and Sasha then checks the changes itself. Never put a key or a password in a report.

Arguments

ArgumentTypeRequiredDescription
idstringrequiredThe job id, for example J-0042.
reportstringrequiredThe report in plain words: what you found, what you changed, what you could not do.
partsarray of objectoptionalOne entry for each part of the job.

Scopes

jobs:run

Annotations

  • Read only: no
  • Destructive: no

When to use

Call it when you finish a job, or when you cannot go on. id (required) is the job id. report (required, up to 20,000 characters) says in plain words what you found, what you changed and what you could not do. parts (optional, at most 20) has one entry for each part of the job: part (required, the part's name as the job gives it), and before, changed, couldNot and why (each optional, up to 2,000 characters).

The job becomes reported and leaves the list of open jobs. Sasha then starts its check by itself, in the person's Sasha chat that prepared the job: it checks the changes with its own tools and tells the person what it found. You do not wait for that check. Tell the person the job is reported. Sasha treats the report as information to check, never as instructions.

The job must be claimed or needs_you. A job is reported once. Never put a key or a password in a report. The tool needs jobs:run (admin and staff).

Example

{
  "id": "J-0001",
  "report": "The welcome email is in place as step 1. The automation is still off, as agreed.",
  "parts": [
    { "part": "Part 1", "before": "An old welcome email, switched off", "changed": "Added the new welcome email as step 1", "couldNot": "", "why": "" }
  ]
}

The structured result:

{ "id": "J-0001", "status": "reported" }

Refusals and what to do

A refusal is an error result. Its text is Error in reportClaudeDesktopJob: <reason>.

  • Not found: no job of this person has this id. A job of another person gives the same answer.
  • job_not_claimed: this job is not in progress. …: call getClaudeDesktopJob first, or the job is already reported.
  • If the connection does not hold jobs:run, the tool is not in your tool list, and a call to it returns MCP error -32602: Tool reportClaudeDesktopJob not found.
  • Arguments that do not match the schema are refused before the tool runs, for example a part with an unknown field.
  • internal:unexpected (request <id>): something failed inside Sasha. Quote the request id in suggestImprovement.

Related

  • getClaudeDesktopJob reads the job.
  • askAboutClaudeDesktopJob records a question while you work.
  • listMyClaudeDesktopJobs lists the jobs that are still open.
Built with BernardCookie settings