Skip to main content
Glama
SAP connector for Claude

SAP connector for Claude

find_duplicates

Identifies duplicate SAP table entries by grouping rows with matching field values and returns the largest groups first for audit, reconciliation, or cleanup.

Instructions

Groups of rows sharing the same values on fields (comma list), computed in SAP, most frequent first. E.g. duplicate invoices: table=RBKP, fields=LIFNR,XBLNR,RMWWR. where: ABAP Open SQL. min_count default 2; top max 1000.

Input Schema

NameRequiredDescriptionDefault
topNo
tableYes
whereNo
fieldsYes
min_countNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.7.7

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations supplied, the description carries the full burden. It does disclose useful behavior: computation happens in SAP, results are ordered most frequent first, the `top` cap is 1000, and `min_count` defaults to 2. It does not state that this is a read-only operation, whether it is expensive against large tables, or what happens when no group meets min_count.

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 definition is short and front-loaded, leading with the grouping semantics before the example and parameter notes. It is telegraphic in places, especially the fragment 'where: ABAP Open SQL', but every clause carries information and none is filler.

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?

An output schema exists, so the ordering and return shape need not be re-explained. However, for a five-parameter query tool with zero annotation coverage, the description omits read-only/safety context, any performance or cost warning about scanning large SAP tables, and a precise relationship between `min_count` and `top`.

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 description coverage is 0%, so the description must compensate, and it largely does: `fields` is a comma list, `where` uses ABAP Open SQL syntax, `min_count` defaults to 2, and `top` is capped at 1000. Only `table` itself is left to the example rather than described, and the schema's default of 200 for `top` is not reconciled with the stated maximum.

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

Purpose4/5

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

The description states a specific verb and resource: grouping rows that share identical values on a comma-separated `fields` list, with results ordered most-frequent-first. The concrete invoice-duplicate example (table=RBKP, fields=LIFNR,XBLNR,RMWWR) makes the operation unambiguous. It doesn't explicitly name how it differs from siblings like aggregate_sap_table, so the differentiation is inferential rather than stated.

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?

Usage is implied through the worked example of finding duplicate invoices, which shows a realistic when-to-use context. There is no explicit statement of when not to use it, when to prefer aggregate_sap_table or read_sap_table instead, or any prerequisite about the SAP table needing to exist.

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