Skip to main content
Glama

import_chat

Backfill workouts from pasted chat logs, skipping time spans that already have sets. Lists unreadable lines for correction.

Instructions

Backfill workouts from a pasted chat log (lines like "[2026-09-08 18:07] me: 60kg x 8"). Safe to repeat: time spans that already hold sets are skipped. Lists lines it could not read.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden. It discloses idempotency ('time spans that already hold sets are skipped') and error reporting ('Lists lines it could not read'), which are critical for a write operation. It does not mention potential side effects like whether it creates a new session or modifies existing data, but the disclosed traits are valuable and not redundant with schema or annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler. The core purpose is front-loaded, followed by the safety note and error behavior. Every clause adds information; there is zero redundancy.

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?

For a single-parameter tool with no output schema or annotations, the description covers the essential aspects: what it does, input format, idempotency, and error reporting. It does not specify whether it returns a summary or whether it ties to an active session, but given the simplicity, the coverage is strong. Slightly more detail on the return value or session context would make it a 5.

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?

The schema provides only the parameter name 'text' with 0% description coverage. The description compensates by giving an explicit example of the expected format ('[2026-09-08 18:07] me: 60kg x 8'), which makes the parameter's semantics clear. It could be more explicit that 'text' is the entire chat log, but the example is sufficient for a single-parameter tool.

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 opens with a specific verb ('Backfill') and resource ('workouts') plus the source ('pasted chat log'), and gives an example line format. This clearly distinguishes it from sibling tools like log_set (single set entry) and edit_last_set (editing), leaving no ambiguity about what it does.

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 implies usage context: when you have a chat log to backfill workouts from. It does not explicitly list alternatives or when-not-to-use, but the purpose is distinct enough that an agent can infer when to invoke it. The idempotency note ('Safe to repeat') also guides repeated use. Missing explicit exclusion of other tools, so not a 5.

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