Skip to main content
Glama

Server Details

Find duplicate records in 30 seconds. Zero-config entity resolution, 97.2% F1 out of the box.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
benseverndev-oss/goldenmatch
GitHub Stars
122

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsC

Average 3.4/5 across 77 of 77 tools scored. Lowest: 1.8/5.

Server CoherenceC
Disambiguation1/5

Multiple tools are explicit aliases (e.g., dedupe/find_duplicates, match/match_record, explain_cluster/agent_explain_cluster) creating redundant entry points. Additionally, overlapping functionality exists between tools like add_correction and agent_approve_reject for approvals, and between find_duplicates, match_record, and agent_deduplicate for matching, making it difficult for an agent to select the correct tool.

Naming Consistency3/5

Tool names are mostly snake_case and readable, but follow multiple conventions: verb_noun (list_clusters, run_transforms), subject_verb (identity_merge, identity_split), and an agent_ prefix group (agent_approve_reject). This mixing of patterns, while not chaotic, lacks a uniform style.

Tool Count1/5

With 77 tools, the count is extremely high for an entity resolution server. Many are aliases or near-duplicates, inflating the surface unnecessarily. This exceeds the typical well-scoped range and creates a heavy, cluttered interface.

Completeness4/5

The server covers a wide range of entity resolution tasks: ingestion, profiling, configuration, matching, analysis, identity management, corrections, auditing, and exports. Minor gaps exist, such as no tool to list uploaded datasets or delete runs cleanly, but overall coverage is comprehensive for the domain.

Available Tools

77 tools
add_correctionAInspect

Add a Learning Memory correction. Two shapes:

  • pair-level: decision='approve' or 'reject', requires id_a + id_b

  • field-level (v1.18.2+): decision='field_correct', requires cluster_id + field_name + corrected_value Source is 'agent' with trust=0.5 (lower than human steward 1.0). Pair (id_a, id_b) is canonicalized to (min, max) before storage.

ParametersJSON Schema
NameRequiredDescriptionDefault
id_aNoPair-level: first row id. Field-level: ignored.
id_bNoPair-level: second row id. Field-level: ignored.
pathNoSQLite memory DB path. Default: .goldenmatch/memory.db
reasonNo
datasetYesDataset identifier (e.g. file path). Required, non-empty.
decisionYes
cluster_idNoField-level: cluster_id the correction targets.
field_nameNoField-level: the column being corrected.
matchkey_nameNo
original_valueNoField-level: the value build_golden_record chose.
corrected_valueNoField-level: the value the reviewer changed it to.
Behavior4/5

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

With no annotations, the description discloses important behavioral details: the source is 'agent' with trust=0.5 (compared to human steward 1.0), and pair (id_a, id_b) is canonicalized before storage. This adds significant transparency beyond the schema.

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 concise, well-structured into two paragraphs, and every sentence provides essential information without redundancy. It is front-loaded with the purpose and then details shapes and behaviors.

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 11 parameters and no output schema, the description covers the two usage modes, trust level, and canonicalization. It is sufficiently complete for an agent to understand when and how to invoke the tool correctly.

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 has 73% coverage, and the description adds meaning by explaining which parameters apply to each shape (e.g., id_a+id_b for pair-level, cluster_id+field_name+corrected_value for field-level). This helps the agent understand parameter relationships.

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 clearly states 'Add a Learning Memory correction' and explicitly defines two distinct shapes (pair-level and field-level) with specific decisions. This differentiates it from sibling tools like list_corrections and agent_approve_reject.

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?

The description explains the two usage shapes based on the 'decision' parameter value, providing clear context. However, it does not explicitly state when not to use this tool or mention alternative tools for similar tasks.

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

agent_approve_rejectCInspect

Approve or reject a review queue pair

ParametersJSON Schema
NameRequiredDescriptionDefault
id_aYes
id_bYes
reasonNo
decisionYes
job_nameYes
decided_byYes
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only says 'approve or reject' without indicating side effects, permissions required, idempotency, or what happens after the action. Critical information is missing.

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

Conciseness3/5

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

The description is very concise—one sentence—but brevity comes at the expense of substance. While it is front-loaded with the action, it lacks structured information about parameters or usage, making it minimally adequate.

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

Completeness1/5

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

Given the 6 parameters (5 required), 0% schema coverage, no output schema, and no annotations, the description is severely incomplete. It does not explain the tool's context, return value, or parameter meanings, leaving the agent without essential information.

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

Parameters1/5

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

Schema description coverage is 0%, but the description adds no meaning to any of the 6 parameters. It does not explain id_a, id_b, decision, decided_by, reason, or job_name. The tool name gives minimal hints, but the description fails to compensate.

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 clearly states the tool's action: approve or reject a review queue pair. The verb-resource combination is specific and unambiguous, but it does not explicitly distinguish from sibling tools like agent_review_queue or agent_compare_strategies.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool vs alternatives. There is no mention of prerequisites, context, or exclusions. The description simply states the function without any usage recommendations.

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

agent_compare_strategiesCInspect

Compare ER strategies on your data

ParametersJSON Schema
NameRequiredDescriptionDefault
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNo
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
ground_truthNo
ground_truth_nameNo
ground_truth_contentNoAlternative to ground_truth: base64/text bytes
Behavior1/5

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

No annotations provided, so the description carries the full burden. It merely states the action without disclosing behavioral traits such as side effects, required permissions, data modification potential, or output nature. The agent cannot anticipate whether this tool is safe or destructive.

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

Conciseness3/5

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

The description is a single short sentence, which is concise but lacks essential details. It is not overly verbose, but the brevity sacrifices completeness without providing critical context.

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

Completeness1/5

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

Given the tool has 7 parameters, no output schema, and no annotations, the description is grossly incomplete. It does not explain what 'ER strategies' refers to, how input files are used, what the comparison result looks like, or necessary prerequisites.

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

Parameters1/5

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

The tool description contains no information about parameters. With schema description coverage at 57%, the description fails to compensate for undocumented parameters (e.g., 'file_path', 'ground_truth', 'ground_truth_name'). An agent has no context on how to use these parameters beyond the schema's limited descriptions.

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 'Compare ER strategies on your data' clearly states the action (compare) and the resource (ER strategies). It distinguishes from sibling tools like 'compare_clusters' by focusing on strategy comparison rather than cluster comparison. However, 'ER' could be clarified as Entity Resolution for some agents.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. With many sibling tools (e.g., 'analyze_blocking', 'learn_thresholds', 'compare_clusters'), the description offers no context for selection, leaving the agent without decision support.

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

agent_deduplicateCInspect

Run full ER pipeline with confidence gating and reasoning

ParametersJSON Schema
NameRequiredDescriptionDefault
configNo
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNo
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
exclude_columnsNoColumn names to skip across GoldenMatch + GoldenFlow + auto-config. Optional. Layered with config.exclude_columns when both are set. force_include (env var) rescues from any opt-out path.
Behavior2/5

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

With no annotations, the description carries full burden. It reveals the tool runs a pipeline with confidence gating, but omits critical details: destructiveness, data persistence, authorization needs, or side effects. Minimal behavioral disclosure.

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?

Single sentence, front-loaded, no redundancy. However, it could include more detail without becoming verbose.

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

Completeness1/5

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

Given the tool's complexity (6 parameters, nested config, no output schema, no annotations), the description is woefully insufficient. It fails to explain the pipeline steps, expected output, error states, or usage scenarios.

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

Parameters2/5

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

Schema coverage is 67% (4 of 6 parameters described). The description adds no parameter information. Two parameters ('config', 'file_path') remain undocumented, and no additional context is provided for the others.

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 uses a specific verb ('Run') and resource ('full ER pipeline') with clear modifiers ('confidence gating and reasoning'), distinguishing it from simpler sibling tools like 'dedupe' or 'find_duplicates'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., 'dedupe', 'find_duplicates', 'incremental'). No prerequisites or exclusions mentioned, leaving the agent without context for selection.

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

agent_explain_clusterCInspect

Explain why records are in the same cluster

ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
Behavior2/5

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

No annotations provided, so description carries full burden. Only states purpose, no disclosure of behavior (e.g., is it read-only, required permissions, return format). Minimal transparency.

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?

Single sentence with no wasted words. Front-loaded with the purpose.

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

Completeness2/5

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

Simple tool with one parameter and no output schema, but description fails to explain what 'explain' returns or what constitutes a cluster. Incomplete for a self-contained tool.

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

Parameters1/5

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

Schema description coverage is 0%. The description does not add meaning for the 'cluster_id' parameter or explain what a cluster is. No compensation for missing schema descriptions.

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?

Clear verb 'Explain' and resource 'why records are in the same cluster'. Distinguishes from sibling 'agent_explain_pair' which likely focuses on pairs, but lacks differentiation from 'explain_match'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like 'explain_match' or 'get_cluster'. No when-not or prerequisites mentioned.

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

agent_explain_pairCInspect

Natural language explanation for a record pair

ParametersJSON Schema
NameRequiredDescriptionDefault
exactNo
fuzzyNo
record_aYes
record_bYes
Behavior2/5

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

No annotations exist, so the description must carry the full burden. It only says 'explanation', implying a read operation, but does not explicitly state idempotency, side effects, authentication needs, or rate limits. The description is insufficient.

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

Conciseness2/5

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

The description is extremely short (one phrase) but this is underspecification rather than conciseness. It lacks structure and does not earn its place as a minimal viable description.

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

Completeness1/5

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

Given the tool has 4 parameters (including nested objects) and no output schema or annotations, the description provides almost no useful context. It fails to explain what the explanation contains, how it is generated, or what the parameters represent.

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

Parameters1/5

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

Schema description coverage is 0%, meaning the input schema has no parameter descriptions. The tool description does not explain any of the four parameters (record_a, record_b, exact, fuzzy), leaving their meanings completely unclear.

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

Purpose3/5

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

The description 'Natural language explanation for a record pair' indicates the tool generates an explanation, but it is vague and does not differentiate from sibling tools like 'explain_match' or 'agent_explain_cluster', which likely perform similar functions.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. There are no when-to-use or when-not-to-use instructions, and no mention of alternatives among the many sibling tools.

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

agent_match_sourcesCInspect

Match two files with intelligent strategy selection

ParametersJSON Schema
NameRequiredDescriptionDefault
configNo
file_aNo
file_bNo
encodingNoEncoding of *_content (default base64)
file_a_nameNo
file_b_nameNo
file_a_contentNoAlternative to file_a: base64/text bytes
file_b_contentNoAlternative to file_b: base64/text bytes
exclude_columnsNoColumn names to skip across GoldenMatch + GoldenFlow + auto-config. Optional. Layered with config.exclude_columns when both are set. force_include (env var) rescues from any opt-out path.
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only mentions 'Match two files with intelligent strategy selection,' which does not reveal side effects (e.g., data mutation), authentication requirements, or any other behavioral traits crucial for an agent to invoke the tool safely.

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

Conciseness2/5

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

The description is extremely short (one phrase), but it is under-specified rather than concise. It does not earn its place by providing essential information; instead, it leaves the agent with insufficient guidance. A single sentence could be effective if it were dense with meaning, but this one is too vague.

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

Completeness1/5

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

Given the tool's complexity (9 parameters, nested objects, no output schema), the description is severely incomplete. It does not explain the return format, prerequisites, or how 'intelligent strategy selection' works. The agent cannot understand what to expect or how to use the tool effectively.

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

Parameters2/5

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

The input schema has 9 parameters with only 44% coverage. The description does not add any meaning beyond what the schema provides. It fails to explain the roles of 'config', 'file_a', 'file_b', or the relationship between file path parameters and their content alternatives. The schema already describes 'encoding', 'file_a_content', 'file_b_content', and 'exclude_columns', so the description adds no value.

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 clearly states the tool's purpose: to match two files with intelligent strategy selection. It uses a specific verb ('Match') and identifies the resource ('two files'). While it distinguishes from some sibling tools by mentioning strategy selection, it remains somewhat vague about what constitutes 'files' and how this differs from basic matching tools like 'match' or 'match_record'.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as 'match', 'match_record', or 'agent_compare_strategies'. There are no prerequisites, warnings, or context about when not to use it. The description offers no explicit usage guidelines.

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

agent_review_queueCInspect

Get borderline pairs awaiting approval

ParametersJSON Schema
NameRequiredDescriptionDefault
job_nameYes
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It implies a read operation ('get') but discloses no other behavioral traits such as side effects, authentication needs, or rate limits.

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 a single concise sentence that immediately conveys the tool's purpose. There is no superfluous wording.

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

Completeness1/5

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

Given the single parameter, no output schema, and no annotations, the description is severely incomplete. It fails to explain what 'borderline pairs' are, what 'job_name' means, or what the tool returns.

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

Parameters1/5

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

The input schema has 0% description coverage for the only parameter 'job_name', and the description does not explain it at all. No value is added beyond the schema.

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 'Get borderline pairs awaiting approval' clearly states a verb and resource. It differentiates from sibling tools like agent_approve_reject and agent_compare_strategies, which focus on different actions.

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

Usage Guidelines1/5

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

No guidance on when to use this tool versus alternatives. It doesn't mention any prerequisites, context, or exclusion criteria.

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

analyze_blockingAInspect

Diagnose blocking on the loaded dataset: returns ranked blocking key candidates with block counts, max block size, total candidate comparisons, and estimated recall. Use it to explain why matching is slow or produces too many candidate pairs.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoTop N suggestions
sample_sizeNo
target_block_sizeNo
Behavior3/5

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

No annotations are provided, so the description bears full responsibility. It states the tool returns diagnostic information but does not disclose behavioral traits like whether it is read-only, requires specific permissions, or has side effects. This is adequate for a simple diagnostic tool but lacks depth.

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 consists of two concise sentences. The first defines the tool's action and outputs, and the second provides context for its use. No unnecessary words.

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

Completeness3/5

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

With three parameters and no output schema, the description covers the core purpose and outputs but does not explain parameter behavior or return format. It is minimally complete for a simple tool but could be more thorough.

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

Parameters2/5

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

Schema description coverage is 33%, with only 'limit' having a description. The tool description does not explain the meaning of 'sample_size' or 'target_block_size' beyond their default values, leaving the agent to guess their impact on the analysis.

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 clearly states the tool diagnoses blocking on the loaded dataset and lists specific outputs (blocking key candidates, block counts, etc.). It uses a specific verb and resource, distinguishing it from sibling tools like 'analyze_data' or 'find_duplicates'.

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?

The second sentence explicitly provides a use case: 'Use it to explain why matching is slow or produces too many candidate pairs.' It does not mention when not to use it or alternative tools, but the guidance is clear enough for typical scenarios.

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

analyze_dataCInspect

Profile data, detect domain, recommend ER strategy

ParametersJSON Schema
NameRequiredDescriptionDefault
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNo
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
Behavior2/5

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

No annotations provided, so description must carry behavioral disclosure. It omits any mention of side effects, authorization needs, or read-only nature. Only states actions without behavioral context.

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

Conciseness3/5

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

The description is extremely brief (three phrases), which is concise but lacks structure. It front-loads actions, but each phrase could be expanded without becoming verbose.

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

Completeness2/5

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

Given 4 parameters, no output schema, and no annotations, the description is insufficient. It fails to explain what output to expect, how parameters relate to the actions, or any usage context.

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 75%, and the description adds no parameter information beyond what the schema already provides. Baseline score of 3 applies as description offers no extra value.

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 specifies three verb-noun pairs (Profile data, detect domain, recommend ER strategy) indicating the tool's scope. It distinguishes from sibling 'profile_data' by adding domain detection and strategy recommendation, but remains somewhat abstract.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like profile_data or detect_domain. No explicit context, prerequisites, or exclusions.

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

auto_configureAInspect

Run AutoConfigController on a CSV; return the committed GoldenMatchConfig (incl. negative_evidence / Path Y when chosen) plus telemetry — stop_reason, health, decision trace, indicator column priors. Programmatic equivalent of goldenmatch autoconfig.

ParametersJSON Schema
NameRequiredDescriptionDefault
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNo
constraintsNo
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
exclude_columnsNoColumn names to skip across GoldenMatch + GoldenFlow + auto-config. Optional. Layered with config.exclude_columns when both are set. force_include (env var) rescues from any opt-out path.
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool returns a 'committed GoldenMatchConfig' and lists telemetry fields, implying a mutation operation. However, it does not mention requirements or side effects beyond committing the config.

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 with no wasted words. The main action and output are front-loaded, and the CLI equivalence is a helpful addition. Every sentence earns its place.

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

Completeness3/5

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

Given 6 parameters, no output schema, and nested objects, the description covers the return structure but leaves gaps around parameter details (e.g., constraints object) and does not fully explain input alternatives or expected behavior for all cases.

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 67%, so the description adds some value by specifying the input as CSV and giving a summary of the return. However, it does not elaborate on un-described parameters like 'constraints' or fully explain the relationship between 'file_path' and 'file_content'.

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 uses a specific verb 'Run' on a clear resource 'AutoConfigController on a CSV', and distinguishes itself by mentioning the programmatic equivalent of a known CLI command, setting it apart from siblings like 'config_weaknesses' or 'suggest_config'.

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?

The description provides a clear context for use ('programmatic equivalent of goldenmatch autoconfig'), but does not explicitly state when to use versus alternatives or when not to use it, missing a small amount of guidance.

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

certify_recallAInspect

Estimate match RECALL without ground truth (unsupervised). Treats each auto-configured matchkey/pass as a decorrelated system and uses capture-recapture over their overlaps to estimate how many true matches were missed. Returns a point estimate (a safe lower bound additionally needs a small labelled audit; see goldenmatch evaluate --certify --audit-out). Needs >=3 decorrelated systems.

ParametersJSON Schema
NameRequiredDescriptionDefault
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNoDataset to dedupe + certify
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
Behavior4/5

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

With no annotations, description must convey behavior fully. It explains the method (capture-recapture), output (point estimate), and prerequisites. It also notes limitations (need for audit for safe bound). Not explicitly stating read-only, but implies no state mutation.

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, front-loaded with key purpose and method. No extraneous information; every sentence adds value.

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?

Given 4 parameters and no output schema, description covers essential context: what it estimates, prerequisites, and output type. Lacks specifics on output format but sufficient for a complex method.

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 parameters are fully documented in schema. Description adds no extra parameter-level detail, meeting baseline expectation.

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 clearly states the tool estimates match recall without ground truth using capture-recapture over decorrelated systems. It distinguishes from other evaluation tools by explicitly noting unsupervised nature and requiring at least 3 decorrelated systems.

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?

Provides clear context: unsupervised, needs >=3 decorrelated systems, and mentions a safe lower bound requires a labeled audit via another tool. However, no explicit when-not-to-use or comparison with alternative tools like evaluate.

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

compare_clustersAInspect

Compare two ER clustering outcomes on the same dataset without ground truth (CCMS): classifies each cluster as unchanged / merged / partitioned / overlapping and returns the Talburt-Wang Index. Both inputs are JSON cluster files (as written by export-style output).

ParametersJSON Schema
NameRequiredDescriptionDefault
encodingNoEncoding of *_content (default base64)
clusters_a_nameNo
clusters_a_pathNoBaseline clusters JSON
clusters_b_nameNo
clusters_b_pathNoComparison clusters JSON
clusters_a_contentNoAlternative to clusters_a_path: base64/text bytes (JSON, use encoding='text')
clusters_b_contentNoAlternative to clusters_b_path: base64/text bytes (JSON, use encoding='text')
Behavior4/5

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

No annotations are provided, so the description carries full burden. It discloses the output: cluster classifications and Talburt-Wang Index. It does not cover authentication, rate limits, or destructive behavior, but for a read-like analysis tool, this is sufficient.

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, front-loaded with purpose and key details. No filler or redundant information. Every word adds value.

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?

Given the tool's complexity and lack of output schema, the description provides essential information: purpose, inputs, and outputs. It could mention prerequisites or format details, but it is largely complete for an informed agent.

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 description coverage is 71%, with most parameters having descriptions. The description adds context that inputs are JSON cluster files from export-style output. However, it does not elaborate on each parameter beyond what schema already provides, and two parameters lack descriptions.

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?

Description clearly states the tool compares two ER clustering outcomes without ground truth, classifying clusters and returning the Talburt-Wang Index. It specifies inputs as JSON cluster files, distinguishing it from siblings like evaluate or agent_compare_strategies that may require ground truth.

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?

The description explicitly mentions 'without ground truth,' indicating when to use this tool over alternatives that require ground truth. It also specifies the input format, guiding proper usage. However, it does not explicitly state when not to use it or list specific alternatives.

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

config_weaknessesAInspect

Diagnose weaknesses in the loaded run's auto-config: columns admitted that shouldn't be (source/provenance labels, per-row IDs), oversized or shared-value blocks, null sinks, low-signal matchkeys, and over-merging. Returns ranked findings, each with a plain-English explanation + a concrete fix, plus a one-paragraph summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
phrasingNoWording style for the findings (default plain).plain
max_findingsNoMax findings to return, ranked by severity (default 6).
Behavior4/5

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

With no annotations, the description carries full burden. It explains the output format (ranked findings with explanations and summary) and implies read-only analysis. It lacks explicit safety or side-effect disclosure, but is fairly transparent.

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?

Two sentences efficiently convey purpose and output. Could be slightly optimized, but no unnecessary text.

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?

Despite no output schema, the description covers the tool's scope and return structure well. It lists weakness categories and output components, making it sufficiently complete for a diagnostic tool.

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 description coverage is 100% for both parameters (phrasing and max_findings). The description does not add new semantic information beyond the schema, so baseline 3 applies.

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 starts with 'Diagnose weaknesses in the loaded run's auto-config,' clearly stating the verb and resource. It lists specific weakness categories and the return format, distinguishing it from siblings like auto_configure or review_config.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives. While it implies usage after auto-configuration, it doesn't compare with siblings like suggest_config or review_config.

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

controller_telemetryBInspect

Return the AutoConfigController telemetry from the most recent auto_configure or agent_deduplicate call in this MCP session. Same JSON shape as the web /api/v1/controller/telemetry endpoint.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

Discloses it returns telemetry from the most recent call, but does not mention error handling for missing calls, idempotency, or side effects. With no annotations, the description carries the full burden but is insufficient.

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, front-loaded with the core purpose. No unnecessary words.

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

Completeness3/5

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

For a simple telemetry retrieval with no parameters or output schema, the description provides the key information but references an external endpoint that may not be accessible to the agent. Adequate but not fully self-contained.

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?

No parameters, schema coverage is 100%. The description adds context about the data source and shape, meeting the baseline of 4 for zero-parameter tools.

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?

Clearly states it returns telemetry data from the most recent auto_configure or agent_deduplicate call, and mentions the JSON shape matches a web endpoint. However, it does not explicitly differentiate from sibling tools, though none are similarly named.

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

Usage Guidelines2/5

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

Implies it should be used after auto_configure or agent_deduplicate, but provides no guidance on when not to use it, what to do if no prior call exists, or alternatives.

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

create_domainAInspect

Create a custom domain extraction rulebook. Define patterns for a specific data domain (medical devices, automotive parts, real estate, etc.).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesDomain name (e.g. 'medical_devices', 'automotive_parts')
scopeNoSave locally (.goldenmatch/domains/) or globally (~/.goldenmatch/domains/). Default: local.local
signalsYesColumn name keywords that trigger this domain (e.g. ['ndc', 'fda', 'implant'])
stop_wordsNoWords to strip during name normalization
brand_patternsNoBrand/manufacturer names to extract (e.g. ['Medtronic', 'Abbott'])
attribute_patternsNoNamed regex patterns for domain attributes (e.g. {'size': '\\b(\\d+mm)\\b'})
identifier_patternsNoNamed regex patterns for domain identifiers (e.g. {'ndc': '\\b(\\d{5}-\\d{4}-\\d{2})\\b'})
Behavior2/5

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

No annotations provided, so description carries full burden. It only states basic purpose without disclosing behavioral traits such as whether creation is destructive, overwrites existing domains, or requires special permissions. Missing side-effect information.

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 with clear action and examples. No fluff, front-loaded with purpose.

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

Completeness2/5

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

Given 7 parameters with nested objects and no output schema, description is too brief. Lacks explanation of what a domain extraction rulebook is, how signals work, or return values, leaving gaps for correct invocation.

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 description coverage is 100%, so baseline is 3. Description adds minimal value beyond schema by loosely referencing 'patterns' but does not clarify parameters like signals, stop_words, or brand_patterns.

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?

Description clearly states the tool creates a custom domain extraction rulebook with specific verb 'Create' and resource 'domain extraction rulebook', and provides examples of domains (medical devices, automotive parts, real estate). It distinguishes from sibling tools like list_domains and test_domain.

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?

Description implies usage for defining patterns for a specific data domain but does not explicitly state when to use this tool versus alternatives or provide exclusions. Context is clear but lacks direct guidance.

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

dedupeBInspect

Alias for find_duplicates. Find duplicate matches for a record. Provide field values to search against the loaded dataset.

ParametersJSON Schema
NameRequiredDescriptionDefault
top_kNoMax results to return (default 5)
recordYesRecord fields to match (e.g. {"name": "John Smith", "zip": "10001"})
Behavior2/5

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

No annotations provided, and the description only says 'Find duplicate matches' without explaining behavioral traits like read-only status, side effects, or authentication needs. Minimal transparency beyond the basic operation.

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?

Two sentences with no fluff. Efficiently states alias and usage. Could be slightly more structured but is clear and to the point.

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

Completeness3/5

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

Simple tool with a brief description. Schema covers all parameters. However, no output schema or details on return format, and given many sibling tools, the description is adequate but lacks deeper context about the deduplication process or result handling.

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 parameters are well-documented. The description adds 'Provide field values to search against the loaded dataset,' which marginally supplements the schema description 'Record fields to match.' No additional meaning for top_k.

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?

Explicitly states it is an alias for find_duplicates and describes its function: 'Find duplicate matches for a record. Provide field values to search against the loaded dataset.' Clearly differentiates from sibling tools by naming the original tool.

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?

Implies usage by saying 'Find duplicate matches' and 'Provide field values,' but no explicit guidance on when to use this vs. alternatives (e.g., find_duplicates, match_record). No when-not or prerequisite information.

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

documents_ingestCInspect

Extract records from documents (PDF/image) against a target schema into rows ready for dedupe_df. Returns records + an ingest report.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNogpt-4o
pathsYes
schemaYesschema JSON: {'fields':[...]}
backendNovlm
out_pathNooptional CSV/parquet to also write
drop_emptyNo
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It does not mention side effects (e.g., file modifications), authentication needs, or error states. The phrase 'extract records' suggests non-destructive reading, but this is implicit and insufficient.

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 description is concise with two sentences, front-loading the core function. Every sentence adds value, though more details could be included without bloating.

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

Completeness2/5

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

Without an output schema, the description should explain the return format more thoroughly. 'Returns records + an ingest report' is vague. Given 6 parameters and no output schema, the description is incomplete for effective agent usage.

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

Parameters2/5

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

Schema coverage is 33% and the description does not elaborate on parameters like 'model', 'backend', or 'drop_empty'. It only mentions 'paths' and 'schema' indirectly. The description adds minimal meaning beyond the schema defaults and types.

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 clearly states the tool extracts records from documents against a target schema and returns records and a report. The verb 'extract' and resource 'documents' are specific. However, it does not explicitly distinguish itself from siblings like 'documents_suggest_schema', though the purpose is distinct enough.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description lacks context about prerequisites, such as requiring a target schema, or when not to use it (e.g., for non-document inputs).

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

documents_suggest_schemaCInspect

Propose a target extraction schema (JSON) from a sample document image/PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNogpt-4o
backendNovlm
sample_pathYes
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only states the action without mentioning side effects, return format, latency, or authorization needs. This minimal disclosure fails to inform the agent adequately.

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

Conciseness3/5

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

The description is concise at one sentence, but it is too minimal to provide sufficient information. It earns points for brevity but loses for under-specification.

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

Completeness1/5

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

With 3 parameters, no output schema, and no annotations, the description is grossly incomplete. It does not explain how the proposed schema is returned, what formats are accepted, or any usage details, leaving significant gaps.

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

Parameters2/5

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

Schema description coverage is 0%, yet the description only adds context about 'sample document image/PDF', hinting at sample_path. The meaning of model and backend remains unexplained beyond their names and defaults.

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 clearly states the tool proposes a target extraction schema from a sample document, using the verb 'propose' and specifying the resource. However, it does not distinguish from sibling tools like 'schema_match' or 'suggest_config', which might have overlapping purposes.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It lacks any context about prerequisites, intended scenarios, or exclusions, leaving the agent without direction.

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

evaluateBInspect

Score the loaded run against ground-truth pairs. Loads a ground-truth CSV (id_a,id_b columns) and returns precision, recall, and F1 for the current clustering.

ParametersJSON Schema
NameRequiredDescriptionDefault
col_aNoid_a
col_bNoid_b
ground_truth_pathYesCSV of true match pairs (columns id_a,id_b or idA,idB).
Behavior3/5

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

Without annotations, the description carries full burden. It explains it loads a CSV and computes metrics, but does not disclose if the operation is read-only, what happens on missing files, or any side effects. This is adequate but not comprehensive.

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 two sentences, front-loaded with the action, and contains no redundant information. Every word contributes to understanding.

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

Completeness3/5

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

Given no output schema, annotations, and 3 parameters, the description covers the main action and return values adequately. However, it misses prerequisites, error conditions, and a statement of non-destructiveness.

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

Parameters2/5

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

Schema description coverage is only 33% (ground_truth_path has a description). The tool description mentions columns id_a,id_b but does not explicitly map to parameters col_a and col_b or explain their use. The description adds some context but insufficiently compensates for the low coverage.

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 clearly states the tool scores a loaded run against ground-truth pairs and returns precision, recall, and F1. It uses a specific verb ('score') and identifies the resource ('loaded run'). However, it does not differentiate from sibling tools like 'certify_recall' that may have similar purpose.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. It implies evaluation after clustering, but does not state prerequisites (e.g., a run must be loaded) or when not to use it.

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

explain_clusterDInspect

Alias for agent_explain_cluster. Explain why records are in the same cluster

ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
Behavior1/5

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

No annotations are present, so the description should cover behavioral traits. It only says it's an alias and that it explains clustering, with no mention of read-only nature, required permissions, side effects, or output structure. Completely insufficient.

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

Conciseness2/5

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

Extremely short but not concise in a useful way. The alias reference is unhelpful and the explanation is too terse to inform the agent. Under-specified.

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

Completeness1/5

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

The tool has one required parameter and no output schema or annotations. The description fails to specify return values, prerequisites, or any other context needed for correct invocation. Incomplete.

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

Parameters1/5

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

Schema description coverage is 0%. The description does not explain the `cluster_id` parameter, its expected format, or its role. The parameter is mandatory but left completely undefined.

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

Purpose3/5

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

The description states it explains why records are in the same cluster, which is clear but vague. It is an alias for `agent_explain_cluster`, which is a sibling tool, creating ambiguity and failing to distinguish between them.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like `explain_pair` or `explain_match`. No when-not-to-use or contextual hints provided.

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

explain_matchAInspect

Explain why two records match or don't match. Shows per-field score breakdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
record_aYesFirst record fields
record_bYesSecond record fields
Behavior3/5

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

Description mentions per-field score breakdown but doesn't disclose read-only nature, permissions, or other behavioral traits. No annotations provided, so description carries burden but is minimal.

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 with front-loaded main purpose. No wasted words.

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

Completeness3/5

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

No output schema provided; description says 'shows per-field score breakdown' but doesn't specify output format. Adequate for a simple tool but could be improved.

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% with descriptions for both parameters. Description does not add meaningful extra meaning beyond the schema descriptions.

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 the verb 'explain' and resource 'why two records match or don't match'. Additional detail about per-field score breakdown sets it apart from sibling tools like 'agent_explain_pair'.

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?

No explicit when-to-use or when-not-to-use guidance. Implies usage for understanding matching decisions but lacks alternatives or exclusions.

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

explain_pairCInspect

Alias for explain_match. Explain why two records match or don't match. Shows per-field score breakdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
record_aYesFirst record fields
record_bYesSecond record fields
Behavior2/5

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

No annotations exist, so the description must disclose behavioral traits. It implies a read-only operation ('explain', 'shows') but does not explicitly state it has no side effects, nor does it mention required permissions or data prerequisites.

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

Conciseness3/5

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

Two sentences with minimal waste, but the first sentence ('Alias for explain_match') is redundant and takes space from more direct purpose. Could be more front-loaded.

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

Completeness2/5

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

Given nested object parameters and no output schema, the description is insufficient. It does not explain what fields are expected in records, how scores are computed, or what the output format is, leaving agents under-informed.

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

Parameters2/5

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

Schema coverage is 100% but parameter descriptions are minimal ('First record fields', 'Second record fields'). The description adds 'shows per-field score breakdown' but does not elaborate on expected record structure or field requirements.

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 clearly states it explains why two records match or don't match and shows per-field score breakdown. As an alias for `explain_match`, its purpose is explicit, though it does not differentiate from its sibling alias.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like `explain_match` or `explain_cluster`. The description only marks it as an alias without providing context for choice.

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

explain_routingCInspect

Human-readable explanation of why each stage is routed the way it is, with the driver-RAM projection that drove it.

ParametersJSON Schema
NameRequiredDescriptionDefault
n_rowsYes
clusterNo
driver_mem_gbNo
estimated_pair_countYes
Behavior2/5

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

With no annotations, the description should disclose behavioral traits. It only mentions output is a 'human-readable explanation', but does not state if it's read-only, requires permissions, or what side effects exist.

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

Conciseness3/5

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

The description is a single sentence, which is concise but too brief to cover necessary details. It is front-loaded but lacks structure.

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

Completeness1/5

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

Given 0% parameter coverage, no output schema, and no annotations, the description is severely incomplete. It does not explain what the tool returns, how to interpret the output, or how to use the parameters.

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

Parameters1/5

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

Schema description coverage is 0%, and the description adds no meaning for any parameter. 'Driver-RAM projection' loosely relates to 'driver_mem_gb' but does not explain other parameters like 'n_rows', 'estimated_pair_count', or the 'cluster' object.

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 it provides a 'Human-readable explanation of why each stage is routed' which is a specific verb+resource. However, it does not differentiate from sibling tools like 'explain_cluster' or 'plan_routing'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as 'explain_cluster', 'explain_pair', or 'plan_routing'. No context on prerequisites or when not to use.

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

export_resultsCInspect

Export matching results to a file (CSV or JSON).

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoOutput format (default csv)csv
output_pathYesFile path to save results
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only states the basic function without mentioning side effects (e.g., file overwriting), required permissions, or how the file is created. The description is too brief to be transparent.

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 description is a single, front-loaded sentence with no extraneous words. It is concise but could potentially include a brief context sentence without losing conciseness.

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

Completeness3/5

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

Given the simple tool with two parameters and no output schema, the description is adequate but lacks context about what 'matching results' refers to and how the export process works (e.g., overwrite behavior). Could be improved with minimal additional information.

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?

The input schema covers both parameters with descriptions (format enum and output_path). The description adds no additional meaning beyond the schema, meeting the baseline for full schema coverage.

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?

Description clearly states the verb 'Export' and the resource 'matching results', specifying file formats (CSV or JSON). It differentiates from sibling tools like memory_export by focusing on 'matching results', but does not elaborate on what constitutes 'matching results'.

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

Usage Guidelines2/5

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

No guidance is provided on when to use export_results versus alternatives like memory_export. There is no mention of prerequisites, context, or when not to use this tool.

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

find_duplicatesBInspect

Find duplicate matches for a record. Provide field values to search against the loaded dataset.

ParametersJSON Schema
NameRequiredDescriptionDefault
top_kNoMax results to return (default 5)
recordYesRecord fields to match (e.g. {"name": "John Smith", "zip": "10001"})
Behavior2/5

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

No annotations provided, so description must fully disclose behavioral traits. Only states it finds duplicates, no mention of whether it modifies data, required permissions, or side effects. Insufficient for safe invocation.

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?

Two concise sentences with no wasted words. Could be slightly more structured but is appropriately brief.

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

Completeness3/5

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

Adequate for a simple query tool, but lacks description of return values or output format. With no output schema, agents may not know what to expect. Behavioral disclosure also minimal.

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% with descriptions for both parameters. Description reinforces the record parameter's meaning but adds no new semantics beyond the schema.

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?

Description clearly states the tool finds duplicate matches for a record, which is a specific verb+resource. It mentions searching against the loaded dataset, distinguishing it from sibling tools like match_record or agent_deduplicate, though not explicitly.

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?

Provides basic guidance to provide field values, but lacks explicit when-to-use or alternative tools. No exclusions or prerequisites mentioned.

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

fix_qualityCInspect

Run GoldenCheck scan and apply fixes to a CSV file. Returns the fixed data summary and a manifest of all fixes applied. Requires goldencheck: pip install goldenmatch[quality]

ParametersJSON Schema
NameRequiredDescriptionDefault
domainNoOptional domain hint (healthcare, finance, ecommerce)
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
fix_modeNoFix aggressiveness: safe (conservative) or moderate (balanced). Default: safesafe
file_pathNoPath to the CSV file to fix
output_pathNoOptional path to save the fixed CSV. If omitted, returns summary only.
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
Behavior2/5

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

With no annotations, the description must fully disclose behavior. It reveals it applies fixes and returns a summary/manifest, but does not clarify if it modifies the original file (destructive) or the exact nature of 'safe' vs 'moderate' fix modes.

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 description is concise (two main sentences plus a note) and front-loaded. It is efficient but could be slightly more structured.

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

Completeness2/5

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

Given 7 optional parameters and no output schema, the description lacks crucial details: workflow between file_path and file_content, fix mode differences, summary content, and manifest structure. Incomplete for a tool of this 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% (all 7 parameters have descriptions). The description adds no extra meaning beyond the schema, so baseline 3 is appropriate.

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 clearly states the tool runs a GoldenCheck scan and applies fixes to a CSV file, making the purpose specific and distinguishable from sibling tools like scan_quality. However, it does not explicitly contrast with siblings.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., scan_quality). The only usage note is a prerequisite install, but no when-to or when-not-to context.

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

get_clusterBInspect

Get details of a specific cluster: all member records and their field values.

ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYesCluster ID to look up
Behavior2/5

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

With no annotations provided, the description must convey behavioral traits. It indicates a read operation but does not disclose potential performance implications of retrieving 'all member records', rate limits, or any side effects. The lack of safety or cost information is a gap.

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 extremely concise, consisting of one sentence with no redundant words. The verb and resource are front-loaded, making it efficient for an agent to parse.

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

Completeness3/5

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

Given the tool's simplicity and full schema coverage, the description provides core functionality. However, it lacks details on return shape (e.g., record format) or pagination, and without an output schema, the description could be more explicit about what 'all member records and their field values' entails.

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?

The input schema covers 100% of parameters, with a clear description for cluster_id. The description adds no additional meaning beyond the schema, so it meets the baseline but does not enhance understanding.

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 clearly states the action 'Get details' and the target 'specific cluster', specifying that it returns 'all member records and their field values'. This differentiates it from sibling tools like list_clusters, which likely returns summary info, though not explicitly stated.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives such as list_clusters or explain_cluster. The description does not provide context for appropriate usage scenarios or mention any exclusions.

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

get_golden_recordCInspect

Get the merged golden (canonical) record for a cluster.

ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYesCluster ID
Behavior3/5

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

With no annotations, the description carries full burden. 'Get' implies a read-only operation, which is consistent. However, no additional behavioral details (e.g., whether the record is computed on the fly, any prerequisites) are provided. No contradictions.

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 description is a single sentence, concise and front-loaded with the core action. It is efficient but somewhat sparse.

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

Completeness2/5

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

Given the many sibling tools and no output schema, this description is insufficient. It does not explain what the canonical record contains or how it differs from other cluster views, making it hard for an agent to decide without additional context.

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

Parameters2/5

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

The description adds no meaning beyond the input schema. While schema coverage is 100%, the description merely restates the purpose. It could have clarified the role of cluster_id, e.g., that it is the unique identifier for the cluster.

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 the verb 'Get' and the resource 'merged golden (canonical) record for a cluster', making the purpose clear. However, it does not differentiate from siblings like get_cluster or identity_resolve, which may also retrieve cluster-related data.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as get_cluster, identity_resolve, or match_record. The description lacks any context for selection.

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

get_statsAInspect

Get dataset statistics: record count, cluster count, match rate, cluster sizes.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

No annotations are provided, so the description carries the full burden. It implies a read-only operation but does not state side effects, permissions, or what happens if the dataset is missing.

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?

A single, front-loaded sentence with no unnecessary words. Every word contributes to understanding the tool's purpose.

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?

Given no parameters and no output schema, the description partially compensates by naming the returned statistics. However, it lacks format details or behavior for edge cases, which would be expected for a complete picture.

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?

There are no parameters, so the schema is fully covered. The description adds value by listing the statistics returned, which goes beyond the empty input schema.

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 uses a specific verb 'Get' and resource 'dataset statistics', and lists the exact metrics returned (record count, cluster count, match rate, cluster sizes). This clearly distinguishes it from sibling tools like get_cluster or memory_stats.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as memory_stats or scan_quality. The description does not mention context or exclusions.

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

identity_auditAInspect

Export the append-only identity audit log in commit order: every event with actor / trust / timestamp / reason, so a reviewer can reconstruct exactly which actor changed what, when, and why. Optionally filtered by dataset / actor.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
actorNo
limitNo
datasetNo
Behavior3/5

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

The description explains that the log is append-only and in commit order, but omits details like the default limit of 500 entries, output format, and permission requirements. Since annotations are absent, the description should cover more behavioral traits.

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 very concise, with two sentences that front-load the key purpose and content. Every phrase adds value without redundancy.

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

Completeness3/5

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

Given the lack of output schema and annotations, the description should mention output format and the limit parameter for pagination. It is partially complete but misses important details for a read tool.

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

Parameters2/5

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

The description only mentions two filters (dataset and actor) out of four parameters. It does not explain 'path' or 'limit', which are not described in the schema either (0% coverage). The description adds minimal value beyond the schema.

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 clearly states the tool exports the identity audit log with specific fields and ordering. It distinguishes itself from sibling tools like identity_audit_seal and identity_audit_verify through its explicit export purpose.

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?

The description mentions optional filtering by dataset/actor, indicating when to use these filters. However, it does not explicitly state when not to use this tool or compare it to alternatives like identity_audit_seal.

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

identity_audit_sealAInspect

Anchor the append-only audit log with a tamper-evidence seal: a chained sha256 root over every event since the last seal. Cheap and idempotent (a no-op when nothing new has been logged). Run it periodically (or after a batch of stewardship actions) so the history becomes provably untampered. Optionally scoped to a dataset. Publish/mirror the returned root_hash to make tampering detectable by an external party.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoIdentity DB path
actorNoPrincipal sealing the log. Defaults to 'agent'.
datasetNo
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses idempotence and no-op behavior when nothing new is logged. It mentions the returned root_hash but does not detail potential permission requirements or side effects on the audit log beyond sealing.

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 sentences, front-loading the main action, then explaining key properties and usage. Every sentence adds value without redundancy.

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 and no annotations, the description covers all essential aspects: purpose, idempotence, usage pattern, optional scoping, and expected output (root_hash). It is sufficiently complete for an agent to select and invoke the tool correctly.

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 67%, with path and actor described. The description adds context for the dataset parameter ('optionally scoped to a dataset'), which lacks schema description. It also confirms default values (actor defaults to 'agent'), adding value beyond the schema.

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 clearly states the verb 'anchor the append-only audit log' and the resource 'audit log', and specifies the mechanism (chained sha256 root). It distinguishes itself from sibling tools like identity_audit and identity_audit_verify by focusing on creating the seal.

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?

The description provides explicit usage guidance: 'Run it periodically (or after a batch of stewardship actions)' and suggests publishing the root_hash. It implicitly differentiates from alternatives (e.g., identity_audit_verify for verification), though it does not explicitly state when not to use.

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

identity_audit_verifyAInspect

Verify the append-only audit log against its seal chain. Replays the per-event content hashes and the seal roots to detect content edits, deletion, reordering, and insertion of any sealed event. Returns {ok, events_checked, seals_checked} plus the ids of any content mismatches / broken seals / missing sealed events. Optionally scoped to a dataset.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoIdentity DB path
datasetNo
Behavior4/5

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

With no annotations, description carries full burden. It discloses that the tool replays per-event content hashes and seal roots, detects specific issues, and returns {ok, events_checked, seals_checked} plus mismatch ids. Also mentions optional dataset scoping.

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?

Three sentences covering purpose, mechanism, and optional scoping. Front-loaded with main action. No wasted 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 two simple parameters and no output schema, description effectively covers purpose, behavior, return values, and optional scoping. No gaps for an AI agent to misuse.

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 50% (only path has a description). Description adds context for dataset ('Optionally scoped to a dataset') but does not specify format or constraints. Schema already covers path description; dataset parameter is described only in narrative.

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?

Description clearly states it verifies the append-only audit log against its seal chain, detecting edits, deletions, reordering, and insertion. It distinguishes from siblings like identity_audit and identity_audit_seal by focusing on verification and detailed detection.

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?

Description implies usage for verifying audit log integrity but does not explicitly state when to use this tool versus alternatives like identity_audit or identity_audit_seal. No exclusions or explicit guidance.

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

identity_claimAInspect

Claim a record into an identity, moving it out of any prior entity ('this record belongs to that identity'). Emits a provenance-stamped claimed event on both the gaining and losing entities.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
actorNoPrincipal, e.g. 'agent:claude'. Defaults to 'agent'.
trustNoTrust in [0,1]. Default by actor prefix.
reasonNo
entity_idYesEntity to claim the record into
record_idYesrecord id in `{source}:{source_pk}` form
Behavior4/5

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

With no annotations, the description effectively discloses key behaviors: the record is moved out of any prior entity, and provenance-stamped 'claimed' events are emitted on both gaining and losing entities. This goes beyond minimal by explaining side effects.

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 efficiently convey the action and behavioral outcome with zero wasted words. Information is front-loaded and each sentence adds value.

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

Completeness3/5

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

The description covers the core function and events but provides no details on return values, error conditions, or how to use optional parameters (path, reason). For a 6-parameter tool with no output schema, this is adequate but not thorough.

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 description coverage is 67% (4 of 6 parameters described). The description does not add meaning beyond the schema; it only provides context for the core action. With moderate coverage, baseline 3 is appropriate.

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 clearly states the tool's purpose: claiming a record into an identity and moving it out of any prior entity. It uses a specific verb 'Claim' and distinguishes from sibling tools like identity_merge (which merges identities) by focusing on record-to-identity assignment.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives like identity_merge or identity_split. The description implies usage for record assignment but lacks when-not-to-use or prerequisite conditions.

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

identity_conflictsCInspect

List evidence edges marked conflicts_with.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
datasetNo
Behavior2/5

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

With no annotations provided, the description must fully disclose behavioral traits. It only states a 'list' action, which implies a read operation, but it does not confirm side-effect-free behavior, rate limits, authentication requirements, or what happens when no edges are found. The lack of transparency could lead to unsafe assumptions.

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

Conciseness3/5

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

The description is a single sentence, making it concise. However, it is under-informative for the complexity of the tool (with two optional parameters and a domain-specific concept). The structure is not front-loaded with critical details like parameter usage.

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

Completeness2/5

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

Given the absence of an output schema and annotations, the description should provide more context about the domain (e.g., what 'evidence edges' are) and the effect of parameters. It is incomplete for a tool that operates in a complex identity resolution system with many sibling tools.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not mention the two parameters ('path' and 'dataset'). An AI agent has no way to infer their purpose or format from the description alone, requiring reliance on external knowledge or trial and error.

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 clearly states the action (list) and the specific resource (evidence edges marked 'conflicts_with'). It distinguishes the tool from siblings like 'identity_list' or 'get_cluster' by specifying the conflict condition. However, it does not provide further context to differentiate from related tools like 'explain_match' or 'get_cluster'.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives such as 'identity_list' or 'find_duplicates'. There is no mention of prerequisites, when not to use it, or what to do if no conflicts exist.

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

identity_historyCInspect

Return the temporal event log for an identity.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
limitNo
entity_idYes
Behavior2/5

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

No annotations are provided, so the description carries full burden. It only states the basic purpose, omitting crucial behavioral traits such as whether the event log is append-only, pagination, ordering, or permissions required. Does not mention read-only nature or side effects.

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

Conciseness3/5

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

The description is a single, concise sentence. However, it sacrifices necessary detail for brevity. While efficient, it is under-informative for an agent to correctly invoke the tool.

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

Completeness1/5

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

Given 3 parameters, no output schema, and no annotations, the description is severely incomplete. It lacks details on pagination limits, output format, event types, and how to specify the identity. An agent would likely misuse the tool without additional context.

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

Parameters1/5

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

Schema description coverage is 0%, and the description adds no meaning to the parameters (path, limit, entity_id). Not even a hint about which parameter corresponds to the 'identity' or what 'path' refers to. Fails to compensate for undocumented schema.

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 clearly states the action ('Return') and the resource ('temporal event log for an identity'). It distinguishes identity_history from sibling tools like identity_list (current state) or identity_merge (merge operation) by focusing on the log/history aspect.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool vs alternatives. No context about prerequisites, scenarios where history is needed, or contrast with other identity tools that may return similar data.

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

identity_listCInspect

List identities, optionally filtered by dataset/status.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
limitNo
offsetNo
statusNo
datasetNo
Behavior2/5

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

With no annotations, the description should disclose behavioral traits like pagination (limit/offset), ordering, or authentication needs. It only states basic filtering, leaving critical behavior undocumented.

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

Conciseness3/5

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

The description is a single sentence, which is concise but possibly under-specified. It front-loads the core purpose but omits important details, making it minimally acceptable.

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

Completeness2/5

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

Given 5 parameters, 0% schema coverage, and no output schema, the description is incomplete. It fails to describe return format, pagination behavior, or ordering, which are essential for an agent to use the tool correctly.

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

Parameters2/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. It mentions filtering by dataset/status but does not explain other parameters like path, limit, or offset. The defaults for limit and offset are not clarified, and no enum values or format hints are provided.

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 'List identities' clearly states the action and resource, and the optional filtering by dataset/status provides context. However, it does not explicitly differentiate from sibling tools like identity_history or get_cluster, which also list identity-related data.

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?

The description implies usage for listing identities with optional filters, but gives no guidance on when to use this tool versus alternatives like identity_conflicts or identity_merge. No when-not instructions or prerequisites are mentioned.

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

identity_mergeAInspect

Manually merge two identities. All records from absorb_entity_id are reassigned to keep_entity_id. The merge events are stamped with actor/trust provenance so the audit log records who merged these and on what authority.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
actorNoPrincipal making the change, e.g. 'agent:claude' or 'steward:alice'. Defaults to 'agent'.
trustNoTrust of the actor in [0,1]. Defaults by actor prefix (steward 1.0, agent 0.5).
reasonNo
keep_entity_idYes
absorb_entity_idYes
Behavior3/5

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

Discloses core behavior (reassigning records, audit stamping) but lacks details on reversibility, permissions, or side effects. No annotations to reduce burden.

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, no redundancy, efficient delivery of essential information.

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?

Covers main effect and provenance stamping, but lacks details on return values, errors, or prerequisites. Adequate for a merge tool given no output schema.

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 low (33%); description explains the key parameters (absorb_entity_id, keep_entity_id) implicitly but does not describe path, reason, or default values. Partially compensates for low schema coverage.

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 merges two identities, using specific parameter names (absorb_entity_id, keep_entity_id) and actions (reassign records). Distinguishes from sibling tools like identity_split.

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?

Indicates manual merge context but does not explicitly state when to use or avoid, nor contrasts with related tools like identity_resolve or identity_conflicts.

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

identity_profileAInspect

MDM profile of one entity: record count + per-source breakdown, golden record, confidence, conflict count, canonical version (structural-event count), and first/last activity. Returns {found: false} when no such entity exists.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoIdentity DB path
entity_idYes
Behavior4/5

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

With no annotations, the description carries the full burden. It transparently discloses the return structure and the 'found: false' case, which adds value beyond the schema. However, it lacks details on permissions, rate limits, or idempotency.

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 a single sentence listing return fields plus a second sentence for the not-found case. It is concise, front-loaded with key information, and contains no unnecessary words.

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?

Given that there is no output schema, the description provides a fairly complete overview of the return fields and handles the missing entity case. However, it lacks details on how to interpret each field (e.g., confidence scale, conflict count), which would enhance completeness.

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

Parameters2/5

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

Schema description coverage is 50% (path has description, entity_id does not). The description does not compensate; it does not explain what entity_id represents or provide additional meaning beyond the schema. A higher score would require clarifying the parameter semantics.

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 clearly states it returns the MDM profile of one entity, listing specific data points like record count, per-source breakdown, golden record, confidence, conflict count, and first/last activity. It also mentions the not-found case, making it distinct from sibling tools like identity_show or identity_stats.

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?

The description implies that this tool is used to get a detailed profile of a single entity but does not explicitly state when to use it or when to prefer alternatives like identity_show. No exclusion criteria or context-based guidance is provided.

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

identity_resolveBInspect

Resolve a record_id to its durable identity. Returns the full identity view (members, evidence edges, recent events) or null when no identity exists for that record.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoIdentity DB path
record_idYesrecord id in `{source}:{source_pk}` form
Behavior3/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It states that the tool returns a full identity view or null, but does not mention side effects, permissions, or rate limits. It implies a read operation without explicitly confirming safety.

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 a single, concise sentence that efficiently communicates the tool's purpose and return value. There is no unnecessary information, and every word adds value.

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?

Given the lack of output schema and annotations, the description provides sufficient detail: it explains the tool's function, the format of the input (record_id), and the structure of the return value (members, evidence edges, recent events). It could be improved by mentioning potential errors or edge cases.

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?

The input schema has 100% description coverage, so the baseline is 3. The description does not add significant meaning beyond the schema; it only restates the purpose. Parameter semantics are adequately covered by the schema alone.

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 clearly states that it resolves a record_id to its durable identity and specifies the return value (full identity view or null). It is a specific verb-resource combination, though it does not explicitly differentiate from sibling tools like 'identity_list' or 'get_golden_record'.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives like 'identity_list' or 'get_golden_record'. It implies usage context (resolving to durable identity) but lacks when-not-to-use or prerequisite information.

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

identity_resolve_conflictAInspect

Adjudicate a conflicts_with pair: 'same' keeps the entity intact, 'distinct' splits the second record out into a new identity, 'defer' only logs. Records a durable mediation verdict + event with actor/trust provenance, and stops the conflict re-surfacing in the open-conflicts queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
actorNoPrincipal, e.g. 'steward:alice'. Defaults to 'agent'.
applyNoAct on the verdict (split on 'distinct'); false = log only.
trustNoTrust in [0,1]. Default by actor prefix.
reasonNo
datasetNo
resolutionYes
record_a_idYes
record_b_idYes
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that the action records a durable mediation verdict with actor/trust provenance and stops the conflict re-surfacing. It mentions behavior for each resolution (e.g., 'distinct' splits). Missing details like side effects on the queue or whether operations are reversible, but overall good.

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 a single, dense sentence that conveys the core action, resolution options, and key effects with no wasted words. Front-loaded with the main verb and resource.

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?

Given 9 parameters and no output schema, the description covers the main functionality well but does not explain return values, error handling, or the role of optional parameters like 'apply' and 'reason'. Still sufficiently complete for the core use case.

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 description coverage is 33% (3 of 9 parameters have descriptions). The description adds meaning for the resolution enum but does not explain parameters like 'path', 'reason', 'dataset'. Since coverage is moderate, baseline 3 applies; description compensates partly but not fully.

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 clearly states it adjudicates a 'conflicts_with' pair with three explicit resolutions ('same', 'distinct', 'defer'), records a durable verdict, and stops re-surfacing. This is a specific verb-resource combination that distinguishes it from siblings like identity_merge, identity_split, and identity_resolve.

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?

The description implies usage when a conflict pair exists and explains the effect of each resolution. However, it does not explicitly contrast with related siblings (e.g., identity_merge vs. 'distinct') or say when not to use it, leaving slight ambiguity.

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

identity_showAInspect

Fetch the full detail of one identity by entity_id: its member records, evidence edges, and recent event log. Returns {found: false} when no such entity exists.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoIdentity DB path
entity_idYes
event_limitNo
Behavior4/5

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

No annotations are present, so the description carries full burden. It indicates a read-only operation ('Fetch'), and discloses the return format when no entity exists. However, it does not mention authentication, rate limits, or whether state is modified (though read is implied). The behavioral disclosure is good but not exhaustive.

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 wasted words. The first sentence states purpose and content, the second handles the not-found case. It is front-loaded and efficient.

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

Completeness3/5

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

The tool has 3 parameters and no output schema or annotations. The description covers the purpose and a key return scenario, but lacks explanation for the 'path' parameter and the structure of returned data. For a detail-fetching tool, more context would improve completeness.

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 low (33%), with only 'path' described. The description clarifies that 'entity_id' is the key identifier and mentions 'recent event log', which relates to 'event_limit'. However, 'path' is not explained, and the description does not fully compensate for the missing schema descriptions. It adds moderate value beyond the schema.

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?

Description explicitly states verb 'Fetch', resource 'full detail of one identity', and specifies what is included ('member records, evidence edges, and recent event log'). It is clearly distinct from sibling tools like identity_list that list many identities, and covers the not-found case.

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?

The description implies usage when needing full details of a specific identity, but does not explicitly state when to use vs alternatives (e.g., identity_profile or identity_list for summaries). No 'when-not' or alternative tool references are provided.

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

identity_splitBInspect

Split a subset of records off an identity into a brand-new identity. The original keeps the remaining records. The split events carry actor/trust provenance.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
actorNoPrincipal making the change, e.g. 'agent:claude'. Defaults to 'agent'.
trustNoTrust of the actor in [0,1]. Default by actor prefix.
reasonNo
entity_idYes
record_idsYes
Behavior2/5

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

With no annotations, the description only mentions provenance but fails to disclose side effects, permissions, or whether the original identity is modified destructively.

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?

Two sentences efficiently convey the core operation, though no additional structure or formatting is present.

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

Completeness2/5

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

No output schema is provided, and the description omits details about return values, failure modes, or the effect on the original identity, making it incomplete for a 6-parameter tool.

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

Parameters2/5

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

Schema coverage is low (33%), and the description does not explain key parameters like entity_id, record_ids, path, or reason, beyond what the schema already provides.

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 clearly states the tool's purpose: splitting a subset of records from an identity into a new identity, differentiating it from sibling tools like identity_merge.

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?

The description implies usage for splitting records but lacks explicit guidance on when to use this tool versus alternatives or when not to use it.

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

identity_statsAInspect

Graph-level summary / health stats: entities by status, total records, records-per-entity distribution, conflict total, source mix, and the largest entities. Optionally scoped to a dataset.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoIdentity DB path
datasetNo
Behavior3/5

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

No annotations exist, so the description must convey behavioral traits. It lists the data returned but does not explicitly state read-only status, permission requirements, or potential side effects. For a stats tool, this is adequate but not thorough.

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 description is a single sentence that efficiently conveys the tool's purpose and outputs. While it could benefit from bullet points for readability, it is concise and front-loaded with key information.

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?

Given the tool has 2 optional parameters and no output schema, the description fairly covers the returned metrics. However, it omits details on output format and any constraints, which would improve completeness.

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 50%: only 'path' has a description. The description adds value by explaining that the 'dataset' parameter optionally scopes the stats, compensating for the missing schema description.

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 is highly specific, listing exact statistics returned: entities by status, total records, records-per-entity distribution, conflict total, source mix, and largest entities. It clearly distinguishes itself from siblings like 'get_stats' by focusing on graph-level health stats.

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?

The description implies usage when a graph-level summary is needed, but provides no explicit guidance on when to use this tool versus alternatives like 'get_stats' or 'analyze_blocking', nor when not to use it.

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

identity_worklistBInspect

Prioritized steward worklist: active entities needing attention (open conflicts and/or confidence below weak_confidence), highest conflict count first.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoIdentity DB path
limitNo
datasetNo
weak_confidenceNo
Behavior3/5

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

No annotations are provided, so the description carries full burden. It discloses the selection criteria (open conflicts and/or low confidence) and ordering (highest conflict count first), which is useful. However, it does not state that this is a read-only operation, whether any state is modified, or any permissions required.

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 a single, well-structured sentence that is concise and front-loaded. Every part contributes to understanding the tool's purpose without fluff.

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

Completeness2/5

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

Given the tool has 4 parameters and no output schema, the description is insufficiently complete. It explains the main intent but does not describe the output format, nor does it clarify key parameters like 'dataset' or 'weak_confidence'. The agent would need to infer or experiment.

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

Parameters1/5

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

Schema description coverage is only 25% (only 'path' has a description). The tool description does not mention any parameters or their meanings, failing to compensate for the low schema coverage. The agent gets no added insight into 'limit', 'dataset', or 'weak_confidence' beyond their names and defaults.

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 clearly states the tool returns a prioritized list of entities needing attention based on open conflicts or low confidence, ordered by conflict count. It distinguishes from siblings like 'identity_conflicts' (which likely shows all conflicts) and 'identity_list' (which lists all identities) by specifying its steward-focused, issue-based filtering.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus siblings. The description implies it is for stewards to view active issues, but it does not state when not to use it (e.g., for a full list) or mention alternatives like 'identity_conflicts' for detailed conflict views.

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

incrementalAInspect

Match a batch of new records against an existing base dataset (without re-running the whole base). Returns matched (new_row_id, base_row_id, score) pairs plus counts. Auto-configures from the base file if no config is given.

ParametersJSON Schema
NameRequiredDescriptionDefault
configNoOptional config YAML path
encodingNoEncoding of *_content (default base64)
base_fileNoExisting base dataset path
thresholdNoOptional threshold override
new_recordsNoNew records file to match in
base_file_nameNo
new_records_nameNo
base_file_contentNoAlternative to base_file: base64/text bytes
new_records_contentNoAlternative to new_records: base64/text bytes
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool performs matching, returns pairs and counts, and auto-configures from the base file. It does not describe error handling, side effects (likely none), or what happens if the base file is missing. The behavioral disclosure is adequate but not thorough.

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 two sentences, each delivering distinct value. The first sentence states the core function and output; the second adds an important behavioral detail (auto-configuration). No extraneous words.

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?

Given 9 parameters, no output schema, and no annotations, the description is fairly complete. It explains the purpose, output format, and auto-configuration. However, it omits details about the matching algorithm, required precondition (base file must exist), and how encoding affects the input. Still, it covers the essential workflow.

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?

With 78% schema description coverage, the baseline is 3. The description adds value by explaining the 'config' parameter's auto-configuration behavior and framing 'new_records' as a batch. This provides context beyond the schema's individual parameter descriptions.

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 clearly states the tool's function: matching new records against an existing base incrementally, without re-running the whole base. It specifies the output format ('matched pairs plus counts') and mentions auto-configuration. This distinguishes it from sibling tools like 'match' which likely do full matching.

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?

The phrase 'without re-running the whole base' implies when to use this tool over a full matching tool. However, it does not explicitly mention when not to use it or name alternative tools. The usage context is clear but lacks exclusion criteria.

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

learn_thresholdsAInspect

Force a MemoryLearner pass over accumulated corrections. Returns the list of LearnedAdjustments produced (matchkey_name, threshold, sample_size, learned_at). Requires >= 10 corrections per matchkey before threshold tuning fires; otherwise returns an empty list.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoSQLite memory DB path. Default: .goldenmatch/memory.db
matchkey_nameNoOptional: learn only for this matchkey.
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses the trigger condition, return type, and empty-list behavior. However, it does not mention side effects (e.g., whether thresholds are updated in the DB) or if the operation is idempotent.

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, front-loaded with the action and output, followed by a necessary precondition. Every word earns its place.

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?

The description explains return values in detail, which compensates for the lack of an output schema. It covers the main behavioral condition. Could mention expected usage after add_correction, but not essential.

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% with descriptions for both parameters. The tool description adds no additional parameter info beyond what the schema provides, so baseline 3 is appropriate.

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 clearly states it forces a MemoryLearner pass over accumulated corrections, with specific return values. This distinguishes it from siblings like add_correction (which adds corrections) and memory_stats (which reads memory status).

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?

The description explicitly sets a precondition (>=10 corrections) and describes the fallback (empty list). It does not mention when to avoid using it or name alternatives, but the condition is clear enough for proper use.

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

lineageAInspect

Field-level provenance for the loaded run: for each scored pair, the per-field scores that produced the match, plus cluster id. Optionally write a lineage JSON to a directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_pairsNo
output_dirNoIf set, write lineage JSON here and return the path instead of inline records.
natural_languageNo
Behavior3/5

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

With no annotations, the description bears full burden. It discloses the core behavior (returning per-field scores and cluster id) and the optional write-to-directory feature. However, it omits details like whether the tool is read-only, performance implications, or required permissions.

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, each adding essential information. The first sentence defines the primary function, and the second adds the optional behavior. No extraneous text.

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

Completeness3/5

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

The description explains what the tool returns and an optional file output. However, it does not clarify what 'loaded run' refers to, how to ensure a run is loaded, or the format of the inline records. Given the complexity of deduplication tools, more context would be beneficial.

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 description coverage is 33%. The description adds context to the output_dir parameter by explaining its effect. However, max_pairs and natural_language parameters are not described, leaving their semantics unclear beyond defaults.

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 clearly states the tool provides field-level provenance for the loaded run, listing per-field scores and cluster id. It also mentions the optional behavior of writing lineage JSON. This is specific and distinct from sibling tools like explain_match or explain_cluster.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, context, or exclusions, leaving the agent without direction among many siblings.

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

lint_routingAInspect

Flag config/env overrides that force a slow path (e.g. CLUSTERING_THRESHOLD=0 when the edge set fits driver RAM). ERROR at scale; would_refuse mirrors the runtime guard.

ParametersJSON Schema
NameRequiredDescriptionDefault
envNo
n_rowsYes
clusterNo
driver_mem_gbNo
estimated_pair_countYes
Behavior3/5

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

With no annotations provided, the description attempts to disclose behavior by mentioning 'ERROR at scale' and 'would_refuse mirrors the runtime guard'. However, it does not fully explain what the tool returns or side effects, leaving some ambiguity.

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 extremely concise, consisting of two sentences that front-load the key action. Every sentence adds value without unnecessary words.

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

Completeness2/5

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

Given the complexity (5 parameters, nested objects, no output schema, many siblings), the description is too brief. It lacks details on output, prerequisites, and how to interpret the example in relation to parameters, making it incomplete for effective use.

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 description coverage is 0%, so the description must compensate. It mentions config/env overrides and gives an example involving CLUSTERING_THRESHOLD, driver RAM, and edge set, which hints at parameters like env, driver_mem_gb, n_rows, estimated_pair_count, but no explicit mapping to the schema parameters.

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 clearly states the tool flags config/env overrides that force a slow path, with a concrete example (CLUSTERING_THRESHOLD=0). The verb 'flag' and resource 'config/env overrides' are specific, and the tool is distinguished from siblings like 'plan_routing' and 'explain_routing'.

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?

The description implies the tool is used for detecting problematic configurations but does not explicitly state when to use it versus siblings like 'config_weaknesses' or 'plan_routing'. No explicit guidance on prerequisites or when not to use.

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

list_clustersAInspect

List duplicate clusters found in the dataset. Returns cluster IDs, sizes, and member counts.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax clusters to return (default 20)
min_sizeNoMinimum cluster size to include (default 2)
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It states the tool lists clusters and returns specific fields, which is transparent about output. However, it does not disclose any potential side effects, authorization needs, or behavior like pagination or ordering. The read-only nature is implied but not explicit.

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 wasted words. The first sentence states the primary purpose, and the second specifies return fields. Front-loaded and efficient.

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

Completeness3/5

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

Given the tool has two simple optional parameters and no output schema, the description is adequate but lacks context about typical usage, ordering, or how it fits into the deduplication workflow. With many sibling tools, more context would improve completeness.

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%, with both 'limit' and 'min_size' having descriptions in the input schema. The description does not add meaning beyond the schema; it only describes output fields. Per guidelines, with high coverage baseline is 3.

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 clearly states the verb 'List', the resource 'duplicate clusters', and explicitly lists what is returned (cluster IDs, sizes, member counts). This distinguishes it from sibling tools like 'get_cluster' which returns a single cluster.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as 'get_cluster', 'find_duplicates', or 'agent_explain_cluster'. There is no mention of prerequisites, usage context, or exclusions.

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

list_correctionsAInspect

List stored Learning Memory corrections, optionally filtered by dataset. Returns id_a, id_b, decision, source, trust, reason, matchkey_name, dataset, original_score, created_at.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoSQLite memory DB path. Default: .goldenmatch/memory.db
datasetNoOptional dataset filter (e.g. file path).
Behavior3/5

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

No annotations provided so description carries full burden. It lists return fields but omits side effects, permissions, or performance characteristics. Adequate but not detailed.

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?

One purposeful sentence plus a concise list of return fields. No wasted words, front-loaded with the action.

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?

Given simplicity (2 optional params, no output schema), the description covers main behavior and return fields. Slight gap in usage context but largely complete.

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 covers both parameters (path, dataset) with descriptions. The tool description does not add extra meaning beyond the schema, so baseline 3 applies.

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 clearly states the tool lists stored corrections and optionally filters by dataset. It is distinct from siblings like add_correction. No ambiguity.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., memory_export, get_stats). Lacks context for choosing filter or default behavior.

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

list_domainsAInspect

List available domain extraction rulebooks (built-in + user-defined).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

No annotations provided, so description carries full burden. Only states the basic listing function; no mention of read-only nature, performance, pagination, or side effects. Minimal disclosure beyond the obvious.

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?

Single sentence with no waste. Every word serves a purpose: action, resource, scope (built-in + user-defined).

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

Completeness3/5

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

Lacks details on return format or what rulebook entries contain. Without output schema, agent may need more context. However, for a simple list tool, it is minimally complete.

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?

No parameters exist, so schema coverage is 100%. Description adds no parameter info but none needed. Baseline for 0 params is 4, and description adequately conveys the tool's action.

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?

Description clearly states verb (list) and resource (domain extraction rulebooks) and distinguishes between built-in and user-defined. This differentiates from siblings like create_domain (creates) or test_domain (tests).

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?

Implied usage: use when needing to see available rulebooks. No explicit when/why not or alternatives provided, e.g., when to prefer this over get_cluster or profile_data.

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

list_pluginsAInspect

List all registered goldenmatch plugins by category. Includes the 22 v1.18.2 predefined plugins (numeric/format/business/aggregation) plus any user-registered plugins via entry-points or PluginRegistry.register_*(). Each entry includes name, source (builtin or user), category, and the first line of the merge docstring.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoall
Behavior3/5

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

With no annotations provided, the description carries full transparency burden. It describes the output (name, source, category, first line of docstring) and what is included (predefined + user-registered), but does not disclose potential side effects, auth requirements, or performance characteristics. It is adequate but minimal.

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 two sentences, front-loaded with the action, and efficiently covers purpose, scope, and output details. Every sentence adds value, with no wasted words.

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?

Given the tool's simplicity (one parameter, no output schema), the description covers key aspects: what is listed, the categories, and output fields. It lacks ordering or pagination info, but these are minor gaps. Overall, it is sufficient for an agent to understand and invoke the tool.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must add parameter meaning. It mentions filtering 'by category' but does not explain the enum values beyond what the schema provides. The schema already lists the values, and the description adds no additional semantic context, failing to compensate for lack of schema descriptions.

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 clearly states 'List all registered goldenmatch plugins by category', specifying the action (list), resource (plugins), and scope (by category). It also adds detail about predefined vs user-registered, making the purpose unambiguous and distinct from sibling list tools that list different resources.

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?

The description implies usage for discovering available plugins, but does not provide explicit when-not-to-use or alternative tool referrals. Since sibling tools are clearly for different resources, the context is clear, but lacks exclusionary guidance.

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

list_runsBInspect

List previous dedupe/match runs (for rollback) from the run log.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_dirNo.
Behavior2/5

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

No annotations exist, but the description does not disclose important behavioral traits such as side effects, output format, or the role of the 'output_dir' parameter.

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?

One efficient sentence with no waste, though slightly too concise for a complete explanation.

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

Completeness2/5

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

Given no output schema, no annotations, and one parameter, the description is too minimal to fully inform an agent about expected behavior and usage.

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

Parameters1/5

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

Schema description coverage is 0% and the description adds no information about the sole parameter 'output_dir', leaving its purpose unclear.

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 clearly states the tool lists previous dedupe/match runs for rollback, with a specific verb and resource, distinguishing it from siblings like 'rollback' or 'list_clusters'.

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?

Implies usage for rollback context but provides no explicit when-to-use or when-not-to-use guidance compared to alternatives.

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

matchBInspect

Alias for match_record. Match a single record against the loaded dataset in real-time. Paste a record's fields and instantly see if it matches any existing record. Uses the configured matchkeys, scorers, and thresholds. Example: {"name": "John Smith", "email": "john@test.com", "zip": "10001"}

ParametersJSON Schema
NameRequiredDescriptionDefault
top_kNoMax matches to return (default 5)
recordYesRecord fields to match against the dataset
thresholdNoMinimum score to consider a match (default: use config threshold)
Behavior3/5

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

Discloses that it uses configured matchkeys, scorers, and thresholds, which gives insight into behavior. No annotations are provided, so the description carries the full burden. It does not mention side effects, permissions, or what happens when no match is found.

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?

Concise, front-loaded description. Three sentences with an example, no wasted words. Every sentence adds value: alias declaration, action description, configuration context, and concrete example.

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

Completeness2/5

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

No output schema is provided, and the description does not explain what the tool returns (e.g., match results with scores). For a 3-param tool with a nested object, this missing information reduces completeness essential for correct invocation.

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%, with descriptions for all three parameters. The description adds an example for the 'record' parameter and mentions configuration usage, but does not significantly deepen understanding beyond the schema.

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?

Clearly states it matches a single record against the dataset in real-time, and provides an example. Explicitly identifies as an alias for match_record, which distinguishes from the sibling tool match_record but not from other matching tools like find_duplicates. The description is specific enough for most purposes.

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?

Implies usage for real-time matching of a single record, but does not provide explicit guidance on when to use this vs alternatives like find_duplicates or retrieve_similar. No exclusions or prerequisites are mentioned.

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

match_recordAInspect

Match a single record against the loaded dataset in real-time. Paste a record's fields and instantly see if it matches any existing record. Uses the configured matchkeys, scorers, and thresholds. Example: {"name": "John Smith", "email": "john@test.com", "zip": "10001"}

ParametersJSON Schema
NameRequiredDescriptionDefault
top_kNoMax matches to return (default 5)
recordYesRecord fields to match against the dataset
thresholdNoMinimum score to consider a match (default: use config threshold)
Behavior3/5

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

With no annotations, the description covers basic behavior (real-time matching, using configuration) but does not disclose whether it is read-only, side effects, or return value format.

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?

Three concise sentences with a helpful example, all focused on the tool's purpose, no wasted words.

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

Completeness3/5

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

Lacks explanation of return values or output format, which is relevant for a matching tool, but otherwise adequately covers the matching operation.

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 covers all parameters, but description adds value with a concrete example for the record parameter and general mention of thresholds, going beyond the schema baseline.

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 clearly states the tool matches a single record against the loaded dataset in real-time, distinguishing it from batch matching or analysis tools among the siblings.

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 for quick real-time checks of individual records, but does not explicitly state when not to use or directly name sibling alternatives.

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

memory_exportCInspect

Return all corrections as a list of dicts (CSV-shaped). Caller is responsible for writing the file. Optionally filter by dataset.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoSQLite memory DB path. Default: .goldenmatch/memory.db
datasetNo
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only describes a read operation but does not confirm it is non-destructive or disclose potential side effects, performance implications, or restrictions.

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 two sentences with no wasted words. It is front-loaded with the core purpose and adds necessary context about file writing responsibility.

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

Completeness3/5

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

The description covers the main output format and optional filtering, but given the lack of an output schema and the presence of many sibling tools, it fails to provide differentiation (e.g., from 'list_corrections') or edge-case behavior (e.g., empty results, limit handling).

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

Parameters2/5

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

Schema coverage is 50% (only 'path' has a description, which is already explicit). The description adds 'Optionally filter by dataset' but does not explain the format or allowed values of the 'dataset' parameter, leaving half of the parameters semantically undocumented.

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 clearly states it returns corrections as a list of dicts, with optional filtering by dataset. The verb 'return' and resource 'corrections' are specific, but it does not explicitly differentiate from the sibling tool 'list_corrections' which likely serves a similar purpose.

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

Usage Guidelines2/5

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

The description mentions the caller is responsible for writing the file, but provides no guidance on when to use this tool versus alternatives like 'list_corrections', nor any prerequisites or context-dependent usage.

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

memory_importAInspect

Import corrections from a list of dicts (the exact shape memory_export returns). Upserts into the store: higher trust wins, same trust = latest wins. Returns the count imported.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoSQLite memory DB path. Default: .goldenmatch/memory.db
correctionsYesCorrection dicts, as returned by memory_export.
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses upsert logic (higher trust wins, same trust latest wins) and return count. Could mention authentication or concurrency, but adequate for import tool.

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, each adding key information: action, input shape, upsert logic, and return. No redundant or missing 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?

No output schema, but return value (count imported) is clearly stated. Both parameters explained, behavioral logic covered. Complete for tool's complexity.

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?

100% schema coverage, description adds value by noting the exact shape from memory_export for corrections and providing default path. Clarifies beyond schema descriptions.

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?

Description clearly states the tool imports corrections from a list of dicts matching the shape of memory_export output. It specifies upsert behavior and return value, distinguishing it from siblings like add_correction and memory_export.

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?

Description implies use when importing bulk corrections from export output, contrasting with add_correction for single entries. Lacks explicit exclusions or alternative tool mentions, but context of sibling tools provides guidance.

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

memory_statsAInspect

Return Learning Memory status: total correction count, last learn time, and current learned adjustments. Cheap; safe for status checks.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoSQLite memory DB path. Default: .goldenmatch/memory.db
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It states the tool is non-destructive and cheap, but does not discuss permissions, side effects, or potential errors. For a simple read operation, this is adequate but not exhaustive.

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 two sentences, front-loaded with the tool's purpose and key details. Every word is informative, and there is no redundancy or extraneous information.

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?

Given the tool's simplicity (1 optional param, no output schema), the description covers purpose, key returned fields, and safety profile. It could mention the return format explicitly, but the listed fields provide sufficient clarity for an agent to understand what to expect.

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 description coverage is 100% for the single parameter (path), so the description does not need to add extra meaning. The description adds no further parameter details beyond the schema, which is acceptable given the high coverage.

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 clearly states the tool returns Learning Memory status with specific fields (total correction count, last learn time, current learned adjustments). It also highlights it is cheap and safe for status checks, distinguishing it from sibling tools that perform mutations or more complex analyses.

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?

The description includes 'Cheap; safe for status checks,' which guides when to use it for lightweight health checks. It does not explicitly mention when not to use or list alternatives, but the context signals and sibling list imply no direct alternative for this specific status retrieval.

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

plan_routingCInspect

Project per-stage distributed routing (scoring/clustering/golden) for a given data shape + cluster. Pure; no controller run.

ParametersJSON Schema
NameRequiredDescriptionDefault
n_rowsYes
clusterNo
driver_mem_gbNo
estimated_pair_countYes
Behavior2/5

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

With no annotations provided, the description must cover behavioral traits. It states 'no controller run' implying no side effects, but does not disclose auth requirements, rate limits, or whether the routing plan is saved or returned. Minimal transparency.

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

Conciseness3/5

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

The description is a single sentence, which is concise, but it uses jargon ('per-stage distributed routing', 'scoring/clustering/golden') that may not be universally understood. The front-loading is adequate but not exemplary.

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

Completeness2/5

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

Given the complexity (4 parameters, nested objects) and lack of output schema or param descriptions, the description is incomplete. It does not explain return values, behavior, or how parameters interact, leaving significant gaps for an agent.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not clarify the parameters. It mentions 'data shape' and 'cluster' loosely, but driver_mem_gb is unexplained, and the required n_rows and estimated_pair_count lack semantic elaboration.

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

Purpose3/5

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

The description states the tool projects per-stage distributed routing for a given data shape and cluster, mentioning scoring/clustering/golden. However, the verb 'Project' is ambiguous (could be noun or verb), and it does not clearly distinguish from sibling tools like explain_routing or lint_routing.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives. The phrase 'Pure; no controller run' hints at no execution, but lacks when-to-use or when-not-to-use context relative to siblings.

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

pprl_auto_configAInspect

Analyze the loaded dataset and recommend optimal PPRL (privacy-preserving record linkage) configuration. Returns recommended fields, bloom filter parameters, threshold, and explanation.

ParametersJSON Schema
NameRequiredDescriptionDefault
use_llmNoUse LLM for enhanced recommendations (requires API key)
security_levelNoSecurity level (default: high)high
Behavior3/5

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

No annotations provided, so description carries full burden. It implies a non-destructive analysis but does not explicitly state read-only or safe behavior. Mentions LLM usage but no side effects.

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?

Single sentence, no filler, directly states purpose and outcome. Efficient and front-loaded.

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

Completeness3/5

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

Brief but covers core output. Lacks details on output structure, differentiation from siblings, and prerequisites. Adequate for a simple tool.

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% with clear descriptions. The description adds no extra meaning beyond the schema, so baseline 3 is appropriate.

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 clearly states the action ('analyze and recommend') and the resource ('PPRL configuration'). It specifies what is returned, distinguishing it from generic config tools like 'auto_configure'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives (e.g., 'auto_configure', 'suggest_pprl'). Prerequisites like dataset loading are implied but not explicit.

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

profileAInspect

Alias for profile_data. Get data quality profile: column types, null rates, unique counts, sample values.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

No annotations exist, so the description carries the burden. It uses 'Get' implying a read-only operation, which suggests no destructive behavior, but does not explicitly confirm safety or mention side effects like rate limits.

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 a single sentence that immediately states the alias and output, with no filler. It is front-loaded and earns its place.

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?

Given no parameters and no output schema, the description provides essential details about the return values (column types, null rates, etc.). It is sufficient for a simple read tool, though it lacks format or guarantee of completeness.

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 input schema has 0 parameters, so the description does not need to explain parameters. The baseline is 4, and the description adds no parameter info, which is acceptable.

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 clearly states the tool is an alias for profile_data and explicitly lists the output elements: 'column types, null rates, unique counts, sample values.' This verb+resource combination is specific and distinguishes it from sibling tools like identity_profile.

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?

The description indicates it's an alias for profile_data, implying identical usage, but does not explicitly state when to use this vs. profile_data or any alternatives. No when-not guidance or context is provided.

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

profile_dataAInspect

Get data quality profile: column types, null rates, unique counts, sample values.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

With no annotations, the description carries full responsibility. It explicitly states the return type (a data quality profile) and its components. While it does not disclaim side effects, the tool is clearly a read operation (no parameters, no destructive hint), and the description is transparent enough for an agent to understand its behavior.

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 a single sentence that is front-loaded with the main action ('Get data quality profile') and efficiently lists the key outputs. Every word is necessary; there is no redundancy or fluff.

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 simple tool with no parameters and no output schema, the description adequately covers the return values. It provides enough detail for an agent to understand what the tool returns. However, it could be more complete by mentioning the source or format of the profile, but the lack of usage guidance is a minor gap.

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 input schema has zero parameters, so the baseline is 4. The description adds value by detailing the output contents, which compensates for the lack of parameter guidance. The schema coverage is effectively 100%, and the description explains what the tool produces.

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 clearly states the action ('Get data quality profile') and lists the specific contents (column types, null rates, unique counts, sample values). It distinguishes itself from sibling tools like 'analyze_data' or 'scan_quality' by focusing on a predefined profile rather than general analysis or scanning.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus its many siblings (e.g., 'scan_quality', 'analyze_data', 'fix_quality'). The description implies usage for obtaining a profile but does not give criteria for selection or mention alternative tools, leaving the agent to infer applicability.

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

retrieve_similarAInspect

Semantic retrieval (#1089): return the records in a CSV most similar to a free-text query, ranked by cosine similarity. Embeds the chosen column and the query with the zero-config in-house embedder (no cloud/torch by default) and runs ANN search. The read side of the RAG entity-canonicalization epic -- fetch candidate records by query without running a full dedupe.

ParametersJSON Schema
NameRequiredDescriptionDefault
kNoMax records to return (default 20)
modelNoEmbedder id (default 'inhouse' -- local, deterministic, no cloud/torch). Also 'all-MiniLM-L6-v2', a Vertex/OpenAI model, etc.
queryYesFree-text query to search for
columnYesColumn of the corpus to embed + search
filtersNoOptional {column: value} equality pre-filter applied before embedding
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNoCSV/Parquet corpus to search
thresholdNoMinimum cosine similarity in [-1, 1] (default 0.0)
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses the tool is read-only ('read side'), uses a local deterministic embedder ('in-house' with no cloud/torch by default), and performs ANN search. This provides clear behavioral context beyond what the input schema offers.

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 sentences, well-structured, and front-loads the main purpose. Every sentence adds meaningful information with no 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?

Given the 10 parameters, no output schema, and the complexity of semantic retrieval, the description adequately covers purpose, embedding method, and read-only nature. It does not detail return format or error handling, but for a retrieval tool with comprehensive schema descriptions, this is mostly sufficient.

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 100%, so the description adds value beyond the schema by explaining the embedding process ('zero-config in-house embedder', 'no cloud/torch by default') and the ranking metric (cosine similarity). It also contextualizes the parameters as part of a semantic search pipeline.

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?

Description clearly states the tool performs semantic retrieval, returning records most similar to a query using cosine similarity. It specifies the embedding and ANN search approach, and distinguishes it as the 'read side' of the RAG entity-canonicalization epic, differentiating it from sibling tools like dedupe and match.

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?

Some implied usage guidance is provided: 'fetch candidate records by query without running a full dedupe.' However, there is no explicit when-to-use or when-not-to guidance compared to alternatives such as match_record or find_duplicates, which are in the sibling list.

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

review_configAInspect

Run the config healer over the loaded dataset: analyze the dedupe run and return ranked, self-verified suggestions for improving the matching config (thresholds, scorers, negative evidence, blocking). Each suggestion carries an id, kind, target, rationale, and a machine-applicable patch. Requires the native kernel (pip install goldenmatch[native]); returns an empty list otherwise.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

With no annotations, the description discloses the important behavioral trait that the tool requires the native kernel and returns an empty list otherwise. It also describes the output format (suggestions with id, kind, target, rationale, patch). It does not state whether the tool is read-only, but 'return ranked, self-verified suggestions' implies no side effects.

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: first clearly states the action and output, second covers the requirement and edge case. No unnecessary words; critical information is front-loaded.

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?

Given the tool's complexity (config healer, suggestions, patches), the description covers the main points: what it does, what it returns, and a requirement. It could mention that the dataset must already be loaded and a dedupe run completed, but these are implied by 'over the loaded dataset' and 'analyze the dedupe run'.

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 input schema has zero parameters, so the description carries the full burden. It explains that the tool operates on the loaded dataset and dedupe run, which is sufficient context. Baseline for 0 params is 4, and the description meets this by not needing additional parameter explanations.

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 clearly states the tool runs a config healer over the loaded dataset to analyze dedupe runs and return ranked suggestions for improving the matching config, with specific output structure. It differentiates from siblings like suggest_config or auto_configure by focusing on iterative improvement rather than initial setup.

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?

The description mentions the native kernel requirement and the empty list return case, providing clear context for when the tool is functional. However, it does not explicitly state when to use this tool versus alternatives, such as suggesting it after a dedupe run rather than before one.

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

rollbackAInspect

Undo a previous run by DELETING its output files (looked up by run_id in the run log). Destructive: removes the files that run wrote. Use list_runs first to find the run_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
run_idYes
output_dirNo.
Behavior3/5

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

The description states the tool is destructive ('removes files'), which is a key behavioral trait, and mentions lookup by run_id. However, with no annotations provided, more detail on error handling or side effects would be beneficial. The description is minimal but not misleading.

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 zero wasted words. The key action, destructive nature, and prerequisite are front-loaded. Excellent conciseness.

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

Completeness3/5

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

For a simple tool with 2 parameters and no output schema, the description covers purpose and usage hint. However, it lacks explanation of the output_dir parameter and does not describe return values or error cases. Adequate but with notable gaps.

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

Parameters1/5

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

Schema description coverage is 0%, and the description fails to explain the parameters meaningfully. It mentions run_id is looked up but provides no detail on output_dir. The description adds almost no value beyond the schema properties.

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 clearly states the tool undoes a previous run by deleting its output files. The verb 'Undo' and resource 'previous run' are specific, and the mention of using list_runs distinguishes it from other tools.

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?

The description explicitly instructs to use list_runs first to find the run_id, providing clear context. However, it does not mention scenarios where this tool should not be used or suggest alternative tools like add_correction for non-destructive undo.

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

run_transformsAInspect

Run GoldenFlow data transforms on a CSV file. Normalizes phone numbers (E.164), dates (ISO), categorical spelling, and Unicode issues. Returns a manifest of transforms applied. Requires goldenflow: pip install goldenmatch[transform]

ParametersJSON Schema
NameRequiredDescriptionDefault
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNoPath to the CSV file to transform
output_pathNoOptional path to save the transformed CSV. If omitted, returns summary only.
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
Behavior3/5

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

No annotations provided, so description carries full burden. Discloses return type (manifest) and general behavior (normalizations) but lacks details on side effects, in-place modification, error handling, or required permissions.

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?

Three sentences, each serving a clear purpose: core action, specific transforms, and prerequisite. Front-loaded and no redundant information.

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?

Completeness is good given 5 parameters and no output schema. Covers purpose, return type, and prerequisite. Could be improved by mentioning error handling or performance considerations, but overall sufficient.

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 adds overall context (types of transforms) but does not enhance individual parameter semantics beyond what the schema already provides.

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 the action ('Run GoldenFlow data transforms on a CSV file'), specifies the resource type (CSV), and lists concrete transformations (phone numbers, dates, etc.). Distinguishes from siblings focusing on deduplication, matching, etc.

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?

Mentions a prerequisite (pip install goldenmatch[transform]) but does not provide guidance on when to use this tool versus alternatives like fix_quality or profile_data. Usage context is implied but not explicit.

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

scan_qualityAInspect

Run GoldenCheck data quality scan on a CSV file. Returns issues found (encoding errors, Unicode problems, format violations) without applying fixes. Requires goldencheck: pip install goldenmatch[quality]

ParametersJSON Schema
NameRequiredDescriptionDefault
domainNoOptional domain hint (healthcare, finance, ecommerce)
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNoPath to the CSV file to scan
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
Behavior4/5

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

With no annotations, the description accurately conveys the non-destructive scanning behavior and required installation, though it could add more detail on error handling or output format.

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 very concise with two sentences and a requirement line; no unnecessary words.

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?

Given no output schema, the description adequately explains the tool's purpose and return type (issues), but could briefly describe the output structure for completeness.

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 the description does not need to add parameter details; it provides no additional meaning beyond the schema descriptions.

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 clearly states the tool runs a GoldenCheck data quality scan on a CSV file, returns found issues without fixing them, and distinguishes from sibling 'fix_quality' by explicitly noting no fixes are applied.

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?

The description implies when to use (for detection only) and includes a prerequisite (pip install), but does not explicitly mention alternatives or when not to use it.

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

schema_matchAInspect

Auto-map columns between two files with different schemas. Returns proposed (col_a, col_b) mappings with a confidence score and method (synonym / name_sim / composite). Useful before matching two sources.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_aNo
file_bNo
encodingNoEncoding of *_content (default base64)
min_scoreNo
file_a_nameNo
file_b_nameNo
file_a_contentNoAlternative to file_a: base64/text bytes
file_b_contentNoAlternative to file_b: base64/text bytes
Behavior3/5

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

Given that no annotations are provided, the description bears full responsibility for disclosing behavior. It states the output includes proposed mappings with confidence scores and methods, which is helpful, but it omits any discussion of side effects, permissions, or error conditions, leaving gaps for an agent.

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 two sentences long, front-loading the core purpose and then adding essential output detail and usage hint. Every sentence contributes value without redundancy.

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

Completeness2/5

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

Despite the tool having 8 parameters with low schema coverage and no output schema, the description provides no guidance on parameter usage or the exact format of the return value. It is incomplete for an agent to confidently use this tool without additional information.

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

Parameters2/5

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

Schema description coverage is low (38%), and the description adds no explanation of the parameters like file_a, file_b, encoding, or min_score. The agent must rely on the sparse schema descriptions, which are insufficient for fully understanding how to invoke the 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 specifies a unique verb (auto-map) and resource (columns between two files with different schemas), clearly distinguishing it from sibling tools like 'match' or 'dedupe' which focus on record matching rather than schema mapping.

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?

The phrase 'Useful before matching two sources' provides clear context for when to use this tool. However, it does not explicitly state when not to use it or mention alternatives, but the context is sufficient for an agent to understand its applicable scenario.

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

sensitivityBInspect

Parameter-sensitivity analysis: sweep one or more config parameters across a range and report how stable the clustering is at each value (CCMS unchanged %). Use it to find robust thresholds. Auto-configures the file if no config is given.

ParametersJSON Schema
NameRequiredDescriptionDefault
sweepYesSweep specs as 'field:start:stop:step', e.g. 'threshold:0.70:0.95:0.05'. One or more.
configNoOptional config YAML path
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNoCSV/Parquet to analyze
sample_sizeNoOptional: randomly sample N records before sweeping
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
Behavior2/5

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

With no annotations provided, the description carries full responsibility for behavioral disclosure. It mentions auto-configuration but does not state whether the tool modifies any files or settings (destructive vs. read-only), required permissions, or side effects. The exact meaning of 'CCMS unchanged %' and whether the tool persists any results is unclear.

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 two sentences, front-loaded with the core purpose, and includes a specific usage tip (find robust thresholds) and a notable behavior (auto-configuration). Every sentence provides value without redundancy. It is appropriately sized for the tool's complexity.

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

Completeness2/5

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

Given the tool has 7 parameters, no output schema, and no annotations, the description is insufficient. It does not explain the input data requirements (e.g., must provide either file_path or file_content), the format of the output, or the meaning of 'CCMS unchanged %'. The auto-configuration mention is helpful but leaves ambiguity about what file is used.

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 description coverage is 100%, so the baseline is 3. The description adds context for the 'sweep' and 'config' parameters (auto-configuration and sweeping concept) but does not explain other parameters like 'encoding', 'file_path', or 'sample_size'. The schema already describes them, so the description does not significantly add beyond the schema.

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 clearly states the tool performs parameter-sensitivity analysis by sweeping config parameters and reporting stability (CCMS unchanged %). It identifies the specific resource (config parameters) and the action (sweep and report). However, it does not explicitly distinguish this from sibling tools like 'analyze_data' or 'config_weaknesses', which could have overlapping purposes.

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?

The description suggests using the tool to 'find robust thresholds', providing a clear usage context. It mentions auto-configuration when no config is given, which offers guidance. However, it lacks explicit instructions on when not to use this tool versus alternatives (e.g., for single-parameter analysis vs. multi-parameter sweeps) and does not list prerequisites or exclusions.

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

shatter_clusterAInspect

Break an entire cluster into individual records. All members become singletons. Use when a cluster is completely wrong.

ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYesCluster ID to shatter
Behavior3/5

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

The description discloses the outcome (members become singletons) but lacks details on side effects, reversibility, permissions, or prerequisites. Since no annotations are provided, the description carries the full burden, and more transparency would be beneficial.

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 concise with two sentences, no wasted words. Front-loaded with the primary action.

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

Completeness3/5

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

For a simple tool with one parameter and no output schema, the description is functional but could mention reversibility or compare with siblings like identity_split to improve completeness.

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% and the schema already describes the parameter adequately. The description adds no additional parameter meaning beyond the schema.

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 clearly states the action ('Break an entire cluster into individual records') and the result ('All members become singletons'). It uses a specific verb and resource, distinguishing it from similar tools like identity_split or unmerge_record.

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?

The description provides explicit usage context ('Use when a cluster is completely wrong'). However, it does not mention alternative tools or situations when not to use this tool.

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

suggest_configAInspect

Analyze bad merges and suggest config changes. Provide examples of incorrect merges (pairs that should NOT have matched) and GoldenMatch will identify which fields/thresholds to tighten. Example: [{"record_a": {...}, "record_b": {...}, "reason": "different people"}]

ParametersJSON Schema
NameRequiredDescriptionDefault
bad_mergesYesList of bad merge examples with record_a, record_b, and optional reason
Behavior3/5

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

No annotations provided, so the description must carry full burden. It states the tool suggests config changes via GoldenMatch, but does not disclose whether it mutates state, requires specific permissions, or other behavioral traits. Adequate but not exhaustive.

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 plus an example, with no fluff. The action is front-loaded and every sentence earns its place.

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?

Given the single parameter and absence of output schema, the description adequately hints at the return value (suggested config changes). A more detailed output format would be ideal, but the example suffices.

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 100% and the description adds an inline example showing the expected format of bad_merges, clarifying the structure beyond the schema's generic description. This adds significant 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 the tool analyzes bad merges to suggest config changes, with a specific verb and resource. Distinguishes from siblings like auto_configure by focusing on learning from incorrect merges.

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?

Provides clear context: when you have bad merges and want to tighten thresholds. Does not explicitly list exclusions or alternatives, but the example strongly implies the use case.

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

suggest_pprlCInspect

Check if data needs privacy-preserving matching

ParametersJSON Schema
NameRequiredDescriptionDefault
encodingNoEncoding of *_content (default base64)
filenameNoOriginal filename when using file_content
file_pathNo
file_contentNoAlternative to file_path: file bytes (base64 default, or raw with encoding='text')
Behavior2/5

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

No annotations are provided, so the description carries full burden for behavioral disclosure. It does not describe side effects, return values, or input requirements beyond a vague 'check'. The tool likely reads data via file_path or file_content, but this is not stated.

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

Conciseness3/5

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

The description is a single short sentence, which is concise. However, it is too brief and lacks necessary detail, failing to 'earn its place' by providing sufficient information.

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

Completeness2/5

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

Given the complexity of 4 parameters and no output schema, the description is highly incomplete. It does not explain what the tool returns, how to interpret the result, or what 'needs' means in terms of subsequent actions.

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 75%, with three parameters having descriptions (encoding, filename, file_content). The tool description adds no additional meaning beyond what is in the schema, so baseline score of 3 applies.

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

Purpose3/5

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

The description states 'Check if data needs privacy-preserving matching', which provides a verb and target resource. However, 'needs' is vague and does not clarify what specific check is performed or how it differs from sibling tools like pprl_auto_config or pprl_link.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives. Given the many sibling tools related to PPRL, such as pprl_auto_config and pprl_link, the description should indicate if this is a preliminary check or a configuration step.

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

test_domainAInspect

Test a domain extraction rulebook against sample records. Shows what features would be extracted from the loaded data.

ParametersJSON Schema
NameRequiredDescriptionDefault
domain_nameYesName of the domain rulebook to test
sample_sizeNoNumber of records to test (default 10)
Behavior2/5

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

With no annotations, the description carries full burden but only hints at non-destructive behavior ('Shows what features would be extracted'), lacking explicit statements about side effects or whether data is modified.

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, front-loaded with purpose, no unnecessary words – concise and well-structured.

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

Completeness3/5

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

Lacks mention of prerequisites (e.g., domain must exist) and output format details; no output schema so description should compensate, but only offers vague 'shows what features would be extracted'.

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. The description adds context but no new meaning beyond the schema's parameter descriptions.

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 clearly states it tests a domain extraction rulebook against sample records and shows extracted features, distinguishing it from other domain tools like create_domain or list_domains.

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?

The description implies when to use (testing a rulebook) but does not mention when not to use or provide explicit alternatives among the many sibling tools.

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

unmerge_recordAInspect

Remove a record from its cluster. The record becomes a singleton. Remaining cluster members are re-clustered using stored pair scores. Use this to fix bad merges.

ParametersJSON Schema
NameRequiredDescriptionDefault
record_idYesRow ID of the record to unmerge
Behavior3/5

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

No annotations provided, so description carries full burden. It discloses the re-clustering behavior after unmerge, but omits details like whether the record is deleted or just unlinked, and any permissions or side effects.

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?

Three sentences, front-loaded with the main action. Every sentence adds value: action, outcome, re-clustering detail, and usage guidance. No unnecessary words.

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 one-parameter tool with no output schema, the description covers the core behavior and re-clustering side effect. Lacks mention of reversibility or whether the record remains accessible, but overall adequate.

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 has 100% coverage with a clear description for record_id. Description adds no additional meaning beyond what the schema already provides, earning the baseline 3.

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?

Description clearly states the verb (remove/unmerge) and resource (record from cluster). It specifies the outcome: record becomes a singleton and remaining members are re-clustered. This distinguishes it from siblings like 'shatter_cluster' which removes entire clusters.

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?

Explicitly says 'Use this to fix bad merges,' providing clear context for when to apply the tool. While it doesn't list exclusions, the context is sufficient given sibling tool names.

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

upload_datasetAInspect

Upload a local file's bytes to the server and get back a server-side path to reuse across other tools (analyze_data, auto_configure, agent_deduplicate, ...). No hosting needed. Send base64 (default) or raw text via encoding. Uploaded files are ephemeral scratch, reaped after GOLDENMATCH_MCP_UPLOAD_TTL (default 24h); re-upload if you need a path older than that. Max size GOLDENMATCH_MCP_MAX_UPLOAD_BYTES (default 64MB) -- above it, pass a public http(s) URL as file_path instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
encodingNoEncoding of file_content (default base64)
filenameYesOriginal filename (extension preserved for format sniffing)
file_contentYesFile bytes, base64-encoded (or raw text with encoding='text')
Behavior4/5

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

No annotations are provided, so the description carries full burden. It discloses that files are ephemeral (reaped after TTL), max size, and encoding options. However, it does not describe return format or error handling, which are minor gaps.

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 description is front-loaded with the core purpose, then covers encoding, ephemeral nature, and size limits. It is concise but includes some technical details (environment variables, defaults) that could be streamlined. Still well-structured.

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?

Given no output schema, the description covers input parameters, usage, and limitations (TTL, max size). However, it does not specify the format of the returned server-side path or error scenarios. Overall fairly complete for the complexity.

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 100%, and the description adds meaning beyond the schema: default encoding, filename purpose for format sniffing, and explains file_content encoding options. This significantly aids parameter understanding.

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 clearly states the tool's purpose: uploading file bytes to get a server-side path for reuse. It uses a specific verb 'upload' and resource 'file bytes', and lists sibling tools that can use the path, distinguishing it from analysis/configuration tools.

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?

The description explains when to use the tool (to get a server-side path) and provides an alternative for large files (use a public URL). It does not explicitly state when not to use it, but the context is clear enough.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.