Skip to content
Docs menu

Tool reference · Errors, rules & self-improvement

self_reflect

Saves a written reflection on how a task went and what to do differently, stored as a reflection record.

local stdio server writes

When to use

  • You finished a task and want to note what worked and what did not.
  • A strategy was slow or awkward and you want to remember a better approach.
  • You want a lesson that is about process, not a specific error.

Parameters

NameTypeDefaultDescription
reflectionrequired string — What went well, what to improve, what to do differently
task_summaryrequired string — Brief description of what was done
outcome "success" | "partial" | "failure" | "ongoing" "success" —
project string "general" —
tags string[] — —

Example

Arguments

{
  "reflection": "Reading the failing test first would have saved 20 minutes; I started from the controller instead.",
  "task_summary": "Fixed refresh-token expiry bug",
  "outcome": "partial",
  "project": "my-api"
}

Result shape

{
  "saved": true,
  "id": 905,
  "type": "reflection"
}

Values are illustrative; the keys follow the server's handler. MCP clients receive the result as JSON text content.

Server description

The description the server sends to your agent in tools/list, captured from the v14.7.0 source:

Save a verbal self-reflection (Reflexion pattern). Call after completing a task or encountering difficulty. NOT for errors (use self_error_log). For meta-observations about strategy, approach effectiveness, process improvements.

Found a mistake? Open an issue on GitHub.

Search