Metadata
metadataGet a Maryland Open Data dataset's schema + metadata (columns, types, row count, category, last-updated) by resource_id, e.g. "2ir4-626w".
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| resource_id | Yes | Dataset id, e.g. "2ir4-626w". |
metadataGet a Maryland Open Data dataset's schema + metadata (columns, types, row count, category, last-updated) by resource_id, e.g. "2ir4-626w".
| Name | Required | Description | Default |
|---|---|---|---|
| resource_id | Yes | Dataset id, e.g. "2ir4-626w". |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Input schema / examplesAdded value: +[
+ {
+ "resource_id": "2ir4-626w"
+ }
+]Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, and non-destructive behavior. The description adds value by specifying the exact metadata returned (columns, types, row count, category, last-updated), which compensates for the absence of an output schema. No contradictory information.
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?
The description is a single, well-structured sentence that efficiently conveys the tool's purpose, input, and output. Every word adds value, with no redundancy or unnecessary detail.
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?
Given the simple input schema (one required parameter) and no output schema, the description completely specifies what the tool does and what it returns. It is sufficient for an AI agent to select and invoke the tool correctly.
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 100% with a clear description for resource_id. The description reiterates the parameter context and provides an example, but does not add new semantic depth beyond the schema. Baseline 3 is appropriate as the description reinforces but does not extend 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?
The description clearly states the verb 'Get' and the resource 'dataset's schema + metadata', with specific fields listed (columns, types, row count, category, last-updated) and an example resource_id. It effectively distinguishes this tool from siblings like 'datasets' which likely list available datasets.
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?
The description implies usage by stating the need for a resource_id, but does not explicitly state when to use this tool versus alternatives, nor does it provide conditions or prerequisites. While clear enough for basic use, it lacks guidance on exclusions or preferred scenarios.
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.
Tools are generally distinct in purpose, but the server name 'Maryland Open Data' conflicts with the inclusion of many unrelated Pipeworx tools (e.g., prediction market tools). This creates ambiguity about the server's actual domain, making it hard for agents to know what to expect.
Naming conventions are mixed: some tools use snake_case (ai_visibility_check), others are plain (datasets, query), and some are descriptive phrases (ask_pipeworx_grounded). No consistent verb_noun pattern emerges, leading to a chaotic feel.
33 tools is high, and the majority are unrelated to Maryland Open Data, suggesting scope creep. The server tries to be a general-purpose data platform but is named after a specific dataset, making the count feel excessive and unfocused.
The Maryland Open Data subset is minimal (3 tools: datasets, metadata, query), lacking update/delete/CRUD operations. The broader set includes many query and analysis tools, but the server's stated purpose is not fully covered.