Get a data source row
goformz_get_datasource_rowGet one data source row by id. GET /v2/datasources/{dataSourceId}/rows/{rowId}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| row_id | Yes | Row id (a GUID). | |
| datasource_id | Yes | Data source id (a GUID). |
goformz_get_datasource_rowGet one data source row by id. GET /v2/datasources/{dataSourceId}/rows/{rowId}.
| Name | Required | Description | Default |
|---|---|---|---|
| row_id | Yes | Row id (a GUID). | |
| datasource_id | Yes | Data source id (a GUID). |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds only the REST path, with no information about failure behavior (e.g., missing row), permission requirements, or what the returned row representation looks like.
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?
Two short sentences, front-loaded with the action and scope; nothing is wasted. The endpoint path is supplementary rather than essential, but it costs little.
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, fully documented read tool this is adequate to invoke correctly, and annotations cover safety. With no output schema, however, the description gives no hint of the returned row shape, leaving a real gap for an agent consuming the result.
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 description coverage is 100%, and both GUID parameters are documented in the schema with format patterns, so the baseline of 3 applies. The description's path template restates the parameter roles but adds no meaning beyond the schema.
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 ('Get one data source row by id'), which clearly distinguishes it from the batch sibling list_datasource_rows. It does not explicitly name a sibling, but the 'one row by id' framing makes the scope unambiguous.
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?
Usage is only implied by the 'by id' phrasing: fetch a single row when you have both a data source id and row id. There is no explicit statement of when to prefer this over list_datasource_rows or get_datasource, and no prerequisites mentioned.
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.