Skip to main content
Glama
sql-mcp

sql-mcp

by hogiabao2601

sample_rows

Read-only

Preview 1–20 rows from a database table to inspect data shape and values; masked columns stay hidden.

Instructions

Return a few rows (1-20) from a table so you can see what the data looks like. Masked columns stay hidden.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "table": "<table>"
    },
    "name": "sample_rows"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNo
tableYes
schemaNo
profileNo
databaseNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, and the description is consistent with them. It adds one genuine behavioral detail not in the annotations — 'Masked columns stay hidden' — but says nothing about row-ordering, pagination, or what happens if limit exceeds 20 (the stated 1-20 bound is not enforced in 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?

Two short sentences, no filler, with the core action and its purpose front-loaded. Every clause earns its place.

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?

For a tool with five parameters, zero schema descriptions, no output schema, and no annotations explaining scope, the description is under-specified: it never explains the database/schema/profile qualification chain or how limit interacts with masking. An agent can call it with only 'table' but cannot call it correctly in a multi-database environment.

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 5 parameters, so the description must carry the load and it does not. It adds a useful bound on limit (1-20) that the schema lacks, but says nothing about how to choose database, schema, or profile, which are the parameters an agent is most likely to get wrong in a multi-catalog hierarchy.

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?

States a specific verb and resource ('Return a few rows from a table') plus the preview intent ('so you can see what the data looks like'), which distinguishes it from siblings like execute_query or describe_table by implication. It does not explicitly name those siblings, so it stops short of a 5.

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 'so you can see what the data looks like' implies a preview/inspection use case, but there is no explicit when-to-use vs. when-to-use-an-alternative guidance (e.g., use execute_query for filtered/Aggregated results, describe_table for column metadata). Usage must be inferred.

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