Skip to content

KB / mcp

MCP tool: read_report

Last verified

read_report returns the platform’s flagship Markdown research report — the same report.md the engine writes after every cycle and the dashboard renders on the home page. Call this when market_pulse isn’t enough and you need the full narrative across equity markets, macro, volatility, credit, energy, sectors, gamma walls, Fed Watch, correlations, and “what changed” since the last cycle.

Signature

read_report(
  filename: str | None = None,  # specific archive name; omit for latest
) -> str                        # JSON-serialised dict

The tool wraps GET /api/v1/reports/latest when no filename is given, or GET /api/v1/reports/{filename} for a specific archive (report-YYYYMMDD-HHMMSS.md shape).

Returns

{
  "filename": "report-20260526-094500.md",
  "date": "2026-05-26",
  "time": "09:45:00",
  "generated_at": "2026-05-26T09:45:00-04:00",
  "content": "# Market Report — 2026-05-26 09:45 ET\n\n## Market Overview\n...",
  "previous_filename": "report-20260526-080000.md",
  "next_filename": null
}

Behaviour

Examples

Latest report

Operator: "Read me the latest market report."
Agent: read_report()

Returns the most recent cycle’s full Markdown.

Specific archive

Operator: "What did the report say at the open today?"
Agent: read_report(filename="report-20260526-093100.md")

Walk the archive

Agent: read_report()
  -> previous_filename = "report-20260526-080000.md"
Agent: read_report(filename="report-20260526-080000.md")
  -> previous_filename = "report-20260526-063000.md"

The previous_filename / next_filename chain lets an agent reconstruct a session timeline without a separate listing endpoint.

When to use

When NOT to use

See also