Search the dataset
dataset_searchRows of the Excurvo dataset whose cells contain the query (case-insensitive), up to 50.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | text to look for in any cell |
dataset_searchRows of the Excurvo dataset whose cells contain the query (case-insensitive), up to 50.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | text to look for in any cell |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It does disclose useful traits: matching is case-insensitive, it scans any cell, and results are capped at 50. However it omits ordering of results, pagination/truncation behavior beyond the cap, and any read/permission context, so meaningful gaps remain.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the resource, match rule, and cap are all packed in without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter search with no output schema, the description conveys the returned entity (rows), the match rule, and the result ceiling. What is still missing is result ordering and whether the 50 cap implies truncation of a larger match set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50% (the 'limit' parameter has no schema description), and the description compensates by conveying the 50-row ceiling and the case-insensitive any-cell match for 'query'. It adds real meaning beyond the schema, though it does not explain how a caller could lower the limit to narrow results.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: returns rows of the Excurvo dataset whose cells contain the query. The matching semantics (case-insensitive, any cell) make it unmistakable against siblings like dataset_stats or dataset_provenance, though it never names those siblings to draw the boundary explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance at all: nothing tells the agent to prefer this over dataset_row, dataset_top, or dataset_compare, and no exclusions or prerequisites are given. Only the implied usage of a text search is conveyed, which is the definition of no explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.