Skip to main content
Glama
Cafelatte1

FronyBoard

recent_activity

Track what changed recently and who did it by querying recorded tool calls, with filters for time range, project, and result limit.

Instructions

Use it when the user asks what changed recently or who did it.

What changed recently and who did it: the tool calls recorded in tools.jsonl,
newest first — `ts`, `tool`, `caller` (key:<name> / session:<user> / oauth:… / stdio / local),
`project`, `task` and `args` (argument names; prose fields appear as `<name>_len`);
`ok: false` marks a rejected call. This is the mutation history; task records
themselves keep only timestamps.

`since` is a duration ("24h" default, "7d", "90m") or an ISO timestamp; `key` narrows
to one project; `limit` caps the rows (default 50) while `count` reports the total.
Read-only calls are dropped unless `writes_only=False`.

Input Schema

NameRequiredDescriptionDefault
keyNo
limitNo
sinceNo
writes_onlyNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so: newest-first ordering, the exact returned fields, `ok: false` semantics for rejected calls, the fact that read-only calls are dropped unless writes_only=False, and that task records keep only timestamps. Defaults for since/limit are stated outright.

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?

Front-loaded with the usage trigger, then return shape, then parameter semantics — every sentence adds information. The middle block is dense and mixes return-field documentation with parameter documentation, and the unexplained `count` reference costs a point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, and the description fully documents the return shape, field meanings, ordering, and the write-filtering behavior. Nothing an agent needs in order to call and interpret this tool is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate, and it does: `since` accepts a duration ('24h' default, '7d', '90m') or an ISO timestamp, `key` narrows to one project, `limit` caps rows (default 50), and `writes_only=False` restores read-only calls. Only the stray mention of `count` (which is not a declared parameter) introduces minor ambiguity.

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?

Names a specific resource (the call log in tools.jsonl) and what it answers: what changed recently and who did it. It explicitly distinguishes itself from task records ('task records themselves keep only timestamps'), so an agent can tell this apart from get_task/list_tasks in the sibling set.

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?

'Use it when the user asks what changed recently or who did it' gives a clear triggering condition, and 'This is the mutation history' clarifies the boundary against task-record tools. It stops short of naming an explicit alternative or a when-not-to-use case, so a 4 rather than a 5.

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