Skip to main content
Glama
LuxAlgo

LuxAlgo Library MCP

Official
by LuxAlgo

Journal P&L calendar

journal_calendar
Read-only

Track monthly P&L by day and week, showing net/gross P&L, fees, trade counts, and month summaries for selected accounts.

Instructions

One month of the P&L calendar: week rows of day cells (net and gross P&L, fees, trade/win/loss/breakeven counts, volume; null for days with no trades), each week's net P&L and trade count, and the month's net P&L, trade count, trading days and winning days. Days are in the journal timezone. Omit month for the current month. Drill into one day with journal_get_day. Requires signing in with a LuxAlgo account (OAuth).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
monthNoMonth as YYYY-MM. Default: the current month in the journal timezone.
accountsNoJournal account ids to scope to (from journal_list_accounts). Omit for every account, archived ones included. Unknown ids are rejected.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.5.0

TDQS

A4.1/5.0
Behavior4/5

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

Beyond the readOnlyHint/openWorldHint annotations, the description discloses the OAuth/LuxAlgo sign-in requirement, the timezone semantics ('Days are in the journal timezone'), and the null-cell convention for days without trades. These are real behavioral facts not recoverable from the annotations.

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?

Dense but front-loaded: it leads with what the calendar contains, then defaults, then the sibling route, then auth. Every clause carries information, though the long enumerations of cell fields make it heavier than strictly necessary.

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?

With no output schema, the description carries the burden of explaining return values and does so thoroughly, including per-week and per-month aggregates and the null convention. Auth prerequisites and the day-drill route are also covered, leaving little an agent would need to infer.

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%, so the schema already documents both `month` and `accounts` (including defaults, rejection of unknown ids, and archived-account behavior). The description restates the current-month default but adds no parameter detail the schema lacks; baseline 3 applies.

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

Purpose5/5

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

The description states exactly what the tool returns: one month of the P&L calendar with week rows, day cells, per-week and per-month aggregates, and the trade statistics included. It is clearly distinguishable from siblings like journal_get_day (single-day drill-down) and journal_overview (different scope).

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?

It gives explicit operating guidance: omit `month` for the current month, and 'Drill into one day with journal_get_day' routes the agent to the day-level alternative. It does not say when to prefer this over journal_overview or journal_breakdown, so it stops short of full when/when-not coverage.

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