Skip to main content
Glama

Record a site diary entry

record_diary_entry

Writes one dated entry to the site diary, the team's shared record of what changed on the site and what was learned, read by every member, every connected agent and Anry's reports. This is the only tool that writes, and it writes nothing but the diary: no setting, campaign, goal or report changes. kind change: something shipped or reverted on the subject. kind observation: a dated fact learned (a test on a phone, a provider's behaviour, a decision). kind retraction: withdraws an earlier entry (retracts_entry_id); nothing is ever edited or deleted. Record what happened, never an intention or a to-do, one entry per fact at the end of an investigation, on the subject you investigated, with the reports and sessions it rests on as evidence. Never put personal data (names, emails, order numbers) in the text. Pass an idempotency_key so a retry never writes twice.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "site_id": "<site_id>",
      "kind": "<kind>",
      "title": "<title>"
    },
    "name": "record_diary_entry"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyNoPlain text: why, what was expected, what was tried. No personal data.
kindYes
titleYesWhat happened, in one line
site_idYesSite id from list_sites (UUID)
subjectNoWhat the entry is about. type page takes the pathname as key (/checkout); campaign takes platform:campaign_id and ad takes platform:campaign_id:ad_id, the subject keys list_reports and list_opportunities print; site takes no key
evidenceNoReferences: report://, replay:// and heatmap:// as reports and tools give them, or https:// links (a pull request, a ticket)
occurred_atNoWhen it happened: an ISO date or a date-time with offset. Defaults to now; up to one year back, never in the future. Ignored on a retraction.
idempotency_keyNoAny string unique to this entry; a retry with the same key returns the entry already written
retracts_entry_idNoOn a retraction only: the id of the entry it withdraws. The retraction takes that entry's subject.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only give readOnlyHint=false, destructiveHint=false and idempotentHint=false; the description adds the consequences the agent cannot infer: the entry is read by "every member, every connected agent and Anry's reports", nothing is ever edited or deleted (retraction is the only withdrawal path), personal data is forbidden, and idempotency is opt-in via a key. The opt-in key narrative reconciles rather than contradicts idempotentHint=false, since the default retry does write twice.

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?

The first sentence front-loads what the tool does and the second bounds it, so the important content lands early. The remainder is dense prose packed with real constraints (kind semantics, PII ban, idempotency), though the kind definitions run together without list formatting and cost the reader a second pass.

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?

For a 9-parameter write tool with a nested subject object and no output schema, the description covers everything consequential: the write surface, non-destructiveness, readership, retraction mechanics, date bounds, PII restriction and retry safety. An agent could call this correctly without consulting any sibling.

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

Parameters4/5

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

Schema coverage is 89%, so the schema already documents most fields and the baseline is 3. The description still adds semantics the schema lacks: how to choose subject scope ("on the subject you investigated"), what evidence should be ("the reports and sessions it rests on"), and that occurred_at is meaningless on a retraction.

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?

"Writes one dated entry to the site diary" gives a specific verb and resource, then immediately bounds scope: "This is the only tool that writes, and it writes nothing but the diary: no setting, campaign, goal or report changes." That single clause separates it cleanly from the ~23 read-only siblings and from any mistaken attempt to mutate settings through it.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It enumerates all three kinds with the condition each covers ("change: something shipped or reverted", "observation: a dated fact learned", "retraction: withdraws an earlier entry"), and states explicit exclusions: "Record what happened, never an intention or a to-do", "one entry per fact at the end of an investigation". Alternatives are covered by the fact that no sibling writes, which the description asserts outright.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources