Skip to main content
Glama
db-conn-mcp

db-conn-mcp

search_value

Locate where a value appears across database tables using fuzzy, case-insensitive substring matching, returning matching tables and columns with counts and sample rows.

Instructions

Find WHERE a value appears across tables (fuzzy, case-insensitive substring).

Returns the tables/columns containing the value, with match counts and samples. For speed on large databases, first narrow with list_tables/find_columns and pass a tables shortlist; otherwise it scans all non-system tables (bounded, may return partial results flagged truncated).

Matches arrive on the text channel only, inside the untrusted-data banner: this tool emits no structuredContent.

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": {
      "database": "<database>",
      "value": "<value>"
    },
    "name": "search_value"
  }
}

Input Schema

NameRequiredDescriptionDefault
valueYes
tablesNo
databaseYes
limit_per_columnNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations supplied, the description carries the full burden and does so well: it discloses fuzzy case-insensitive matching, a bounded scan that may return partial results flagged `truncated`, and — critically — that matches arrive only on the text channel inside the untrusted-data banner with no structuredContent. That is exactly the kind of non-obvious behavior an agent must know before parsing the response.

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?

Four sentences, front-loaded with the core behavior, then performance guidance, then output channel. Nothing is padding, though the truncation caveat is stated slightly redundantly ('bounded, may return partial results flagged truncated').

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 four-parameter search tool with no output schema and no annotations, it covers return shape, truncation behavior, and response channel well. The remaining gap is the undocumented `database` and `limit_per_column` parameters, which matter for calling it correctly.

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 0%, so the description must compensate. It explains `value` (fuzzy substring) and `tables` (a shortlist to narrow the scan), but leaves `database` and `limit_per_column` entirely undocumented beyond their names, so half the parameters still require inference.

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 opens with a specific verb and resource ('Find WHERE a value appears across tables') plus the matching semantics (fuzzy, case-insensitive substring). It also makes clear what the return value is (tables/columns with match counts and samples), which distinguishes it from siblings like find_columns (name lookup) and execute_read_query.

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 gives concrete prep guidance: narrow first with list_tables/find_columns and pass a `tables` shortlist for speed on large databases, otherwise all non-system tables are scanned. It names the alternatives and the condition selecting them, but never says when to avoid this tool in favor of execute_read_query or sample_table_rows for a targeted check.

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