Skip to main content
Glama
ADIKANT

datalens-dev-mcp

by ADIKANT

dl_object_diff

Read-onlyIdempotent

Preview the semantic diff a typed patch would create on a saved DataLens object without applying it, so you can review changes before committing.

Instructions

Read one saved object and return the narrow semantic diff for a typed patch without mutation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
patchYes
object_idYes
object_typeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.2.0

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds that it returns a 'narrow semantic diff' rather than the full object, providing some behavioral context about the return nature. However, it does not explain what the diff contains, how large it may be, or any auth requirements, so the added transparency is modest.

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 filler. It is efficient and immediately states the core action and constraint. It could be slightly more structured given the tool's complexity, but it avoids verbosity.

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?

The tool has a nested patch parameter, no output schema, and 0% schema description coverage, yet the description is a single sentence. While annotations cover the safety profile, essential invocation details—such as patch shape or the meaning of object identifiers—are absent. It is therefore incomplete for an agent to call correctly without further guessing.

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% across three required parameters, so the description must carry the burden. It implies that object_type and object_id identify a 'saved object' and that patch is a 'typed patch', but it gives no syntax, format, or relationship details for any of them. For a nested patch object especially, this leaves callers without needed guidance.

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 uses a specific verb ('Read') and resource ('saved object'), and distinguishes the tool from mutation siblings by stating 'without mutation'. It also indicates the return is a 'narrow semantic diff for a typed patch', which separates it from a plain getter. However, it does not explicitly name or contrast with sibling tools like dl_object_get or dl_object_update.

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 phrase 'without mutation' implies the tool is used to preview a patch before applying it, which is an implied usage context. There is no explicit guidance on when to choose this over dl_object_get, dl_editor_validate, or dl_object_update, and no stated prerequisites. Implied usage without alternatives yields a 3.

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