Skip to main content
Glama

comm

Read-only

Compare two sorted files line by line, returning structured JSON with unique and common records. Requires pre-sorted input.

Instructions

Compare two sorted files line by line, returning column-tagged records (unique to file1, unique to file2, common). Read-only, no side effects. Requires pre-sorted input — use 'sort' first. Returns JSON with structured comparison results. Use to find differences and overlaps between datasets. Not for unsorted data — results are wrong without prior sorting. See also 'join', 'uniq', 'sort'.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
encodingNoText encoding.utf-8
max_linesNoMaximum JSON records to emit.
pathsYesTwo files to compare.
rawNoWrite column-tab-line text without a JSON envelope.
suppress_1NoSuppress records unique to the first file.
suppress_2NoSuppress records unique to the second file.
suppress_3NoSuppress records common to both files.
Behavior5/5

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

Annotations already declare readOnlyHint=true, and the description confirms read-only and no side effects. It adds critical preconditions (pre-sorted input) and describes the output format (JSON with structured comparison), going beyond 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 concise sentences: first states purpose and output, second states preconditions and related tools. Front-loaded with key info, no redundant words.

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?

Given no output schema, description explains return format (column-tagged records, JSON). Covers preconditions, side effects, and related tools, and all parameters are documented in schema. Complete for a tool of moderate complexity.

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 coverage is 100%, so baseline is 3. Description does not add new meaning to parameters; it focuses on overall behavior and output. Parameters are well-described in schema, so description is adequate but not adding extra value.

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?

Clearly states it compares two sorted files line by line, returning column-tagged records for unique to file1, unique to file2, and common. Distinguishes from siblings by emphasizing sorted input requirement and referencing similar tools like join, uniq, sort.

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?

Explicitly says when to use ('find differences and overlaps') and when not ('unsorted data'), with a warning that results are wrong otherwise. Provides alternative tool suggestions and advises using sort first.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/caseSHY/AI-CLI'

If you have feedback or need assistance with the MCP directory API, please join our Discord server