Skip to main content
Glama

Beancount.io

Parse Uploaded File

parseFile

Parse a caller-owned temporary upload into transaction rows. s3ObjectKey comes from the upload operation; fileFormat names the format (csv, pdf, xlsx, json, etc.). Consumes AI quota. Does not write ledger entries.

Input Schema

NameRequiredDescriptionDefault
fileFormatYes
s3ObjectKeyYes

Output Schema

NameRequiredDescriptionDefault
okYes
errorNo
resultNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare safety hints, and the description adds useful behavior beyond them: parsing consumes AI quota and does not write ledger entries. This clarifies cost and side-effect boundaries without contradicting 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.

Conciseness5/5

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

The description is three tight sentences with the core action front-loaded. Each sentence adds useful information: what it does, parameter provenance/format meaning, and quota/side-effect constraints.

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?

An output schema exists, so return values need not be described, and the annotations cover safety hints. The description still supplies the key operational context an agent needs, though it could be more explicit about accepted file formats and sibling alternatives.

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 0%, so the description must carry parameter meaning. It explains that s3ObjectKey comes from the upload operation and that fileFormat names the format, with examples such as csv, pdf, xlsx, and json.

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

Purpose4/5

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

The description states a specific verb and resource: parse a caller-owned temporary upload into transaction rows. It is clear what the tool does, but it does not explicitly distinguish itself from nearby siblings such as parseReceipt or importStagedBankTransactions.

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

Usage Guidelines3/5

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

It gives an important prerequisite by saying s3ObjectKey comes from the upload operation, but it does not explicitly say when to use this tool versus parseReceipt or importStagedBankTransactions. Usage is implied rather than fully guided.

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.